五、其它Linux版本安装mod_ssl
如果您使用的Linux发行版本没有包括mod_ssl软件,可以使用APT命令添加。Debian GNU/Linux 是APT(Advanced Package Tool)的缔造者。初衷是利用工具来解决软件安装时候的依赖性问题。其工作原理大致为:用户安装APT客户端工具,查寻APT服务器端的资料库(repositories)上的RPM软件包信息,并分析软件包之间的依赖性然后下载并进行安装。APT 除了可以让你很方便且快速地安装 RPM 软件外,你也可以用它来更新系统。虽然APT是基于Debian的软件包管理工具,但是已经被一个巴西公司Conectiva移植到基于RPM的系统上。因此对于基于RPM软件包管理的平台,如Red Hat、TurboLinux、SuSe、Mandrake等Linux发行版本,APT是一个非常优秀的软件管理工具。
APT系统主要包括:
![]() |
其中用户使用最多的就是apt-get命令。
#apt-get install openssl
# apt-get install libapache-mod-ssl
# apache-modconf apache enable mod_ssl
然后产生认证文件。方法和上面相似。
# cd /etc/apache/ssl.key/
# openssl genrsa -out server.key 1024
# chmod 600 server.key
# openssl genrsa -des3 -out server.key 1024
# cd ../ssl.csr/
# openssl req -new -key ../ssl.key/server.key -out server.csr
# cd ../ssl.crt/
# openssl req new -x509 -nodes -sha1 -days 365 -key /ssl.key/server.key -out server.crt
如果您使用虚拟主机的话还有修改apache配置文件如下:
Listen *:443 #设定要 监听的端口 Port#
<VirtualHost *:443>
ServerName www.xxx.com #域名#
DocumentRoot /home/username/public_html/
User username
Group groupname
DirectoryIndex index.php index.html index.htm
SSLEngine On
SSLCertificateFile /etc/httpd/conf/ca/server.crt
SSLCertificateKeyFile /etc/httpd/conf/ca/server.key #主要就是设置私有和公钥匙的存放的目录地方。#
</VirtualHost>
重新启动 Apache服务器
root # apachectl stop
root # apachectl startssl
监控服务器进程和运行端口,见图10和图11:
netstat -ntulp | grep 443
![]() |
| 图10 Https服务器运行端口 |
ps -ef |grep https
![]() |
| 图11 Https服务器运行进程号 |
说明:mod_ssl并不是Apache唯一存在的SSL安全解决方案,另外还有四种主要的产品:Ben Laurie公司的免费的Apache-SSL(出现在1998年,与mod_ssl同源),RedHat公司商业化的Secure Web Server(基于mod_ssl),Covalent公司商业化的Raven SSL Module(同样基于mod_ssl)和C2Net公司的商业化产品Stronghold(直到Stringhold2.x都基于一个不同的演化分支Sioux,从Stronghold3.x起基于mod_ssl)。
安全提示:即使一个网站使用了SSL安全技术,但这并不是说在该网站中正在输入和以后输入的数据也是安全的。所有人都应该意识到SSL提供的仅仅是电子商务整体安全中的一小部份解决方案。SSL在网站上的使用可能会造成管理员对其站点安全性的某些错觉。使用了SSL的网站所可能受到的攻击和其它服务器并无任何区别,同样应该留意各方面的安全性。简言之,加密和数字证书,SSL的主要组成,从来都无法保护服务器--它们仅仅可以保护该服务器所收发的数据。
另外SSL-evading木马也能绕过安全和认证机制,而这种安全、认证机制正是目前的网上银行和从事网上交易的机构最主要的安全手段。一旦电脑中感染了这种木马程序,所有需要得到用户认可的行为都可以在用户不知情的情况下偷偷进行。 SSL-evading木马程序往往趁用户不注意,偷偷地安装在用户的电脑中,它们或者窃取用户的登录信用,或者在用户成功登录后,偷偷把账户里的资金划走。在这两种情况中,电脑和银行之间的SSL连接都是完整的,没有任何破坏,因而,用户认为他们那些敏感的交易信息受到了保护,而事实根本不是如此。
另外使用最高和最新安全版本对于加强Apache Web服务器的安全是至关重要的。升级你的OpenSSL升级到0.9.6e或者更高版本;伪造的钥匙将起不了任何作用,也不能渗透到系统里。一些反病毒程序能发现并杀死SSL蠕虫,但是别指望这些:蠕虫可能产生变体,从而逃脱反病毒软件的追捕 。注意重启Apache可以杀死这样的病毒,但是对防止将来的感染没有任何意义。
