在正确安装dns和apache服务器的基础上,可以试验ssl加密传输
需要安装的软件包:mod_ssl
由于redhat系统的iso镜像中没有mod_ssl包,这里配置163源,安装了centos的
具体过程如下:
[root@mail yum.repos.d]# yum -y install mod_ssl
Loaded plugins: refresh-packagekit, rhnplugin
This system is not registered with RHN.
RHN support will be disabled.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package mod_ssl.i686 1:2.2.15-15.el6.centos.1 set to be updated
--> Processing Dependency: httpd = 2.2.15-15.el6.centos.1 for package: 1:mod_ssl-2.2.15-15.el6.centos.1.i686
--> Running transaction check
---> Package httpd.i686 0:2.2.15-15.el6.centos.1 set to be updated
--> Processing Dependency: httpd-tools = 2.2.15-15.el6.centos.1 for package: httpd-2.2.15-15.el6.centos.1.i686
--> Running transaction check
---> Package httpd-tools.i686 0:2.2.15-15.el6.centos.1 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
==============================================================================================================
Package Arch Version Repository Size
==============================================================================================================
Installing:
mod_ssl i686 1:2.2.15-15.el6.centos.1 rhel-source 88 k
Updating for dependencies:
httpd i686 2.2.15-15.el6.centos.1 rhel-source 819 k
httpd-tools i686 2.2.15-15.el6.centos.1 rhel-source 70 k
Transaction Summary
==============================================================================================================
Install 1 Package(s)
Upgrade 2 Package(s)
Total download size: 977 k
Downloading Packages:
(1/3): httpd-2.2.15-15.el6.centos.1.i686.rpm | 819 kB 00:01
(2/3): httpd-tools-2.2.15-15.el6.centos.1.i686.rpm | 70 kB 00:00
(3/3): mod_ssl-2.2.15-15.el6.centos.1.i686.rpm | 88 kB 00:00
--------------------------------------------------------------------------------------------------------------
Total 619 kB/s | 977 kB 00:01
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : httpd-tools-2.2.15-15.el6.centos.1.i686 1/5
Updating : httpd-2.2.15-15.el6.centos.1.i686 2/5
Installing : 1:mod_ssl-2.2.15-15.el6.centos.1.i686 3/5
Cleanup : httpd-2.2.15-5.el6.i686 4/5
Cleanup : httpd-tools-2.2.15-5.el6.i686 5/5
Installed:
mod_ssl.i686 1:2.2.15-15.el6.centos.1
Dependency Updated:
httpd.i686 0:2.2.15-15.el6.centos.1 httpd-tools.i686 0:2.2.15-15.el6.centos.1
Complete!
[root@mail yum.repos.d]# rpm -qa|grep mod_ssl
mod_ssl-2.2.15-15.el6.centos.1.i686
[root@mail yum.repos.d]# cd /etc/pki/tls/
[root@mail tls]# ls
cert.pem certs misc openssl.cnf private
[root@mail tls]# cd certs/
[root@mail certs]# ls
ca-bundle.crt ca-bundle.trust.crt localhost.crt make-dummy-cert Makefile
[root@mail certs]# vim Makefile
48 umask 77 ; \
49 /usr/bin/openssl genrsa > $@ #为避免每次都输入密码,将这行的-aes128 2048删掉
50
[root@mail certs]# make httpd.crt #产生证书
umask 77 ; \
/usr/bin/openssl genrsa > httpd.key
Generating RSA private key, 512 bit long modulus
........++++++++++++
..++++++++++++
e is 65537 (0x10001)
umask 77 ; \
/usr/bin/openssl req -utf8 -new -key httpd.key -x509 -days 365 -out httpd.crt -set_serial 0
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:jiangsu
Locality Name (eg, city) [Default City]:nanjing
Organization Name (eg, company) [Default Company Ltd]:null
Organizational Unit Name (eg, section) []:edu
Common Name (eg, your name or your server's hostname) []:chen
Email Address []:chen@example.com
[root@mail certs]# ls
ca-bundle.crt ca-bundle.trust.crt httpd.crt httpd.key localhost.crt make-dummy-cert Makefile
[root@mail certs]# cp -p httpd.key /etc/pki/tls/private/ #将私钥拷贝到/etc/pki/tls/private/
[root@mail certs]# vim /etc/httpd/conf.d/ssl.conf
74 <VirtualHost _default_:443>
75
76 # General setup for the virtual host, inherited from global configuration
77 DocumentRoot "/myweb" #ssl加密传输的目录
78 ServerName chen.example.com:443 #对应主机名
[root@mail certs]# service httpd restart
停止 httpd: [确定]
正在启动 httpd: [确定]
[root@mail certs]#
验证:
设置获取证书后,可以看到网页的内容