• 927阅读
  • 0回复

CentOS服务器下安装配置SSL

楼层直达
/Ny#+$cfk  
https是一个安全的访问方式,数据在传输过程中是加密的,https基于SSL。 T7-yZSw -m  
一、安装apache和ssl模块 9Wg;M#c2Y|  
1、安装apache gD;T"^S+  
#yum install httpd !K+hXQE1  
2、安装ssl模块 7j HrLsB  
#yum install mod_ssl S..8,5mBH  
重启apache: xLms|jS  
#service httpd restart z "z  
安装完mod_ssl会创建一个默认的SSL证书,路径位于/etc/pki/tls,此时可以立即通过https访问服务器了: o2;Eti  
https://X.X.X.X/ ~Ye nH  
如果不使用默认的证书,也可以使用openssl手动创建证书。 WJI}~/z;C  
二、使用openssl手动创建证书 ,tDLpnB@;  
1、安装openssl aHb&+/HZ  
#yum install openssl Y]^*mc0fE  
2、生成服务器私钥 7IQa Xcl  
#cd /etc/pki/tls 45x4JG  
#openssl genrsa -out server.key 1024 0d+b<J,  
注意:server.key是私钥。 X]n`YF7  
3、用私钥server.key文件生成证书请求文件csr b4EUr SL  
#openssl req -new -key server.key -out server.csr j'Q0DF=GV  
注:server.csr是证书请求文件。 t,'J%)j  
此步骤需要输入一些证书信息: &/:c?F?l  
Country Name (2 letter code) [XX]:CN ,izp^,`  
State or Province Name (full name) []:shanghai )2 q r^)  
Locality Name (eg, city) [Default City]:shanghai tOte[~,  
Organization Name (eg, company) [Default Company Ltd]:ccc W$Xr:RU  
Organizational Unit Name (eg, section) []:bbb j?T>S]xOX  
Common Name (eg, your name or your server's hostname) []:www.test.com @P>>:002/  
Email Address []:a@a.com M+^ NF\  
输入国家、省份、城市、公司、部门、姓名或服务器名、电子邮箱,随后会要求输入一个challengepassword(密码),无需输入,后面一律直接回车即可。 M,yxPHlN  
4、生成数字签名crt文件(证书文件) c6=XJvz  
#openssl x509 -days 365 -req -in server.csr -signkey server.key -outserver.crt 9i lJ  
用私钥签名证书请求文件,证书的申请机构和颁发机构都是自己。 \zBZ$5 rE  
5、编辑apache的ssl配置文件 H6>tto  
vim/etc/httpd/conf.d/ssl.conf }sJ}c}b  
/etc/httpd/conf.d/ssl.conf文件配置具体如下: ux*G*QZ  
<VirtualHost _default_:443> }6 u)wF5  
DocumentRoot "/var/www/https"      //设置网页存放目录 @3 +   
ServerName *:443                  //服务器的端口 A[`c+&  
DirectoryIndex index.html index.html.var  //首页名称 |Q@(<'8=  
SSLEngine on BeD>y@ it  
SSLCertificateFile /etc/pki/tls/server.crt    //证书 X+ybgB4(  
SSLCertificateKeyFile /etc/pki/tls/server.key  //私钥 }5z!FXB  
</VirtualHost> &oJ[ *pQ  
6、重启apache Xk:3w,  
#servicehttpd restart mi5bk>o  
访问https://ip/,就能看到证书信息了。 KV'3\`v@LY  
由于不是第三方根证书颁发机构颁发的证书,而是自己颁发的证书,所以浏览器会提示安全证书不受信任。 >* F#ZZv}p  
!!!注意:首页index.html 的文件权限为755,否则将会出现如上提示: \<y|[  
Forbidden 0C"2?etMx  
Youdon't have permission to access /main.html on this server. t:,lz8Y~  
解决方法:修改首页index.html读写权限。 W'E3_dj+  
#Chmod755  index.html CPY|rV  
关于openssl指令的补充说明: +(w9! 5?F  
#openssl [操作]  -out  filename  [bits] >>;He7  
参数说明: ]C|xo.=?]  
[操作]  主要的操作有如下两个: =BV_ ?  
      genrsa,建立RSA加密的Public key mM+^v[=  
      req,建立凭证要求文件或者是凭证文件 BHNJH  
-out ,后面加上输出的文件名,就是那把key name OKj\>3  
bits,用在genrsa加密的公钥的长度 6$csFW3R  
-x509,X.509,CertificateData  Management.  一种验证的管理方式 n^|7ycB'  
例:建立一支长度为1024bits的Public Key,注意文件名。 fq):'E)  
#openssl genrsa  -out  Server.key 1024 >{0,dGm  
生成证书请求命令 8p/&_<mnW  
#Openssl req  -new  -key file.key  -out  file.csr -config  /path/to/openssl.cnf vv`53 Pbw)  
-config:指定openssl的配置文件路径,不指定时,默认会访问Unix格式的默认路径:/usr/local/ssl/openssl.cnf。 #,!/Cnqis  
例:#openssl req -new -key server.key -outserver.csr
快速回复

限100 字节
安逸网提示:如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
认证码:
上一个 下一个