每次总来CU找资料,想想也应该做点贡献. 呵呵. 这篇文章似乎没人做过.我就把它补上吧. 转载时注明来源是CU's 小黄就可以了. :D
系统 LINUX 8
用rpm -aq查一下是否这些装上
openssl095a-0.9.5a-16
openssl-devel-0.9.6b-29
mod_ssl-2.0.40-8
openssl-0.9.6b-29
openssl096-0.9.6-11
当然还有apache 2.0
openssl095a-0.9.5a-16
openssl-devel-0.9.6b-29
mod_ssl-2.0.40-8
openssl-0.9.6b-29
openssl096-0.9.6-11
第一步实现传统的http, 如果不知道,在精华贴里找.
第二步要实现https, 精华贴里也有,不过我重复一些这里:
主要是这个文件
/etc/httpd/conf.d/ssl.conf:
SSLCertficateFile /path/to/this/server.crt
SSLCertificateKeyFile /path/to/this/server.key
这两行要打开.
怎么产生server.crt 和 server.key, 用法如下:
cd /etc/httpd/conf/ssl.key
openssl genrsa -des3 -out server.key 1024
cd /etc/httpd/conf/ssl.crt
openssl x509 -req -days 3650 -in server.csr -signkey ../ssl.key/server.key –out server.crt
(这个是自己给自己认证,你也可以先产生这个server.csr, 然后去verisign 用它30天免费的server.crt
到此,你的HTTPS应该可以起来.如果看见一些错误.error 98 mod_socket之类的. 多数是httpd.conf 文件中, 要有Include conf.d/*.conf
Include conf.d/*.conf
而同时使用port 443, 与 /etc/httpd/conf.d/ssl.conf文件中port 443重复使用了. 基本上httpd.conf不用改,而只改ssl.conf就可以了. (折腾了我好一会这里,:-( )
现在你的https可以起来, 但人人可以去,我们最终的目的是只有你签发的certificate的用户才可以,所以接着走...
第三步https的CA认证:
ssl.conf 文件中要:
SSLCACertificateFile /etc/httpd/conf/ssl.crt/myca.crt
SSLVerifyClient require
SSLVerifyDepth 1
在 cd /etc/httpd/conf/ssl.crt/
openssl genrsa -des3 -out myca.key 1024
openssl req -new -x509 -days 3650 -key myca.key -out myca.crt
现在我们有了这个myca.crt, 这个CERT相当与一个图章,用这个图章盖过的请求才可以访问你的HTTPS, 这才是目的.
在你的机器上重新用普通用户登陆,假设用户名为client1, home为/home/client1.
cd /home/client1
openssl req –new >; client.csr
用户产生了一个请求CSR文件. 用图章盖过印的CSR请求, 产生一个cert才有效,这就是这个目的.
重新用ROOT登陆,
cd /etc/httpd/conf/ssl.crt/
这下面应该有你刚才产生的myca.key & myca.crt
openssl x509 -req -in /home/client1/client.csr -out /home/client1/client.crt -signkey myca.key -CA myca.crt -CAkey myca.key -CAcreateserial -days 3650
在这个/home/client1下面,应该产生了client.crt 这个文件. 也就是一个盖过章的certificate.
这个certificate是BASE64形式的,要转成PKCS12才能装到IE,/NETSCAPE上.所以你要:
cd /etc/httpd/conf/ssl.crt/
openssl pkcs12 -export –in /home/client.crt -inkey myca.key -out client.pfx
到此为止,基本上大功告成. 把这个client.pfx 装到你的IE下,证书下.用default 安装,不用变革路经.
重起HTTPS, 在用有certificate的IE去访问. -------- 如果一切顺利,是不是心情很爽?
----写在后面的话.希望大家多写些心得, 把CU办的更好.
系统 LINUX 8
用rpm -aq查一下是否这些装上
openssl095a-0.9.5a-16
openssl-devel-0.9.6b-29
mod_ssl-2.0.40-8
openssl-0.9.6b-29
openssl096-0.9.6-11
当然还有apache 2.0
openssl095a-0.9.5a-16
openssl-devel-0.9.6b-29
mod_ssl-2.0.40-8
openssl-0.9.6b-29
openssl096-0.9.6-11
第一步实现传统的http, 如果不知道,在精华贴里找.
第二步要实现https, 精华贴里也有,不过我重复一些这里:
主要是这个文件
/etc/httpd/conf.d/ssl.conf:
SSLCertficateFile /path/to/this/server.crt
SSLCertificateKeyFile /path/to/this/server.key
这两行要打开.
怎么产生server.crt 和 server.key, 用法如下:
cd /etc/httpd/conf/ssl.key
openssl genrsa -des3 -out server.key 1024
cd /etc/httpd/conf/ssl.crt
openssl x509 -req -days 3650 -in server.csr -signkey ../ssl.key/server.key –out server.crt
(这个是自己给自己认证,你也可以先产生这个server.csr, 然后去verisign 用它30天免费的server.crt
到此,你的HTTPS应该可以起来.如果看见一些错误.error 98 mod_socket之类的. 多数是httpd.conf 文件中, 要有Include conf.d/*.conf
Include conf.d/*.conf
而同时使用port 443, 与 /etc/httpd/conf.d/ssl.conf文件中port 443重复使用了. 基本上httpd.conf不用改,而只改ssl.conf就可以了. (折腾了我好一会这里,:-( )
现在你的https可以起来, 但人人可以去,我们最终的目的是只有你签发的certificate的用户才可以,所以接着走...
第三步https的CA认证:
ssl.conf 文件中要:
SSLCACertificateFile /etc/httpd/conf/ssl.crt/myca.crt
SSLVerifyClient require
SSLVerifyDepth 1
在 cd /etc/httpd/conf/ssl.crt/
openssl genrsa -des3 -out myca.key 1024
openssl req -new -x509 -days 3650 -key myca.key -out myca.crt
现在我们有了这个myca.crt, 这个CERT相当与一个图章,用这个图章盖过的请求才可以访问你的HTTPS, 这才是目的.
在你的机器上重新用普通用户登陆,假设用户名为client1, home为/home/client1.
cd /home/client1
openssl req –new >; client.csr
用户产生了一个请求CSR文件. 用图章盖过印的CSR请求, 产生一个cert才有效,这就是这个目的.
重新用ROOT登陆,
cd /etc/httpd/conf/ssl.crt/
这下面应该有你刚才产生的myca.key & myca.crt
openssl x509 -req -in /home/client1/client.csr -out /home/client1/client.crt -signkey myca.key -CA myca.crt -CAkey myca.key -CAcreateserial -days 3650
在这个/home/client1下面,应该产生了client.crt 这个文件. 也就是一个盖过章的certificate.
这个certificate是BASE64形式的,要转成PKCS12才能装到IE,/NETSCAPE上.所以你要:
cd /etc/httpd/conf/ssl.crt/
openssl pkcs12 -export –in /home/client.crt -inkey myca.key -out client.pfx
到此为止,基本上大功告成. 把这个client.pfx 装到你的IE下,证书下.用default 安装,不用变革路经.
重起HTTPS, 在用有certificate的IE去访问. -------- 如果一切顺利,是不是心情很爽?
----写在后面的话.希望大家多写些心得, 把CU办的更好.