如何在linux上开设使用ssl安全连接的站点
问题
如何在Linux上开设使用ssl安全链接的站点
解决方案
目前的尚不支持直接开设ssl站点,所以需要手动配置ssl功能,步骤如下:
1) 每个ssl站点必须工作在独立的IP,所以服务器上必须有多个IP。
请为您的服务器增加多个IP地址,方法略。
2) 登陆到主控界面中,点击服务器管理,查询当前这台服务器,选择修改ip地址,把刚才几个新ip都加上。
3) 启用apache的ssl模块。
首先查看/usr/prima/etc/httpd/modules.conf,检查里边是否有ssl的支持。
如果有“#SSL=1”这样一行,则把前边的注释符号“#”去掉即可。
如果当前已经是“SSL=1”,不带有注释符号,那么说明ssl模块已经加载了。
重新启动apache:/etc/init.d/httpd restart
4) 在iptables防火墙上启用ssl所用的TCP协议443端口。
编辑iptables,方法:vi /etc/sysconfig/iptables
查找是否有TCP 协议443端口的设置,如果没有,在80端口协议下边添加如下一行:
-A RH-Firewall-1-INPUT -m state --state NEW -p tcp -m tcp --dport 443 --syn -j ACCEPT
注意:不同linux的iptables中的参数可能不一样,您只需按照开放80端口的参数来写就可以。
重新iptables防火墙使配置生效:/etc/init.d/iptables restart
5) 开设普通http站点。
在主控界面中,选择一个站点方案,开设站点abc.com。
注意:由于刚才添加了多个ip地址,所以开站时候可以选择一个ssl专用的ip。
6) 上传abc.com所用的证书。
abc.com.crt上传到/usr/prima/apache_ssl/conf/ssl.crt/目录下
abc.com.key上传到/usr/prima/apache_ssl/conf/ssl.key/目录下
设置属主为ftpd:ftpd:
chown ftpd:ftpd /usr/prima/apache_ssl/conf/ssl.crt/abc.com.crt
chown ftpd:ftpd /usr/prima/apache_ssl/conf/ssl.crt/abc.com.key
设置权限为400:
chmod 400 /usr/prima/apache_ssl/conf/ssl.crt/abc.com.crt
chmod 400 /usr/prima/apache_ssl/conf/ssl.crt/abc.com.key
7) 将证书和站点进行绑定。
首先编辑站点配置文件:vi /usr/prima/etc/httpd/virtual.conf
找到新开设的那个站点,格式可能是如下的一段:
<VirtualHost 192.168.0.100:80>
ServerName abc.com
DocumentRoot /www/users/abc.com
ServerAlias www.abc.com
</VirtualHost>
修改80端口为443端口,并且添加关于ssl的支持:
<VirtualHost 192.168.0.100:443>
ServerName abc.com
DocumentRoot /www/users/abc.com
ServerAlias www.abc.com
SSLEngine on
SSLCertificateFile /usr/prima/apache_ssl/conf/ssl.crt/abc.com.crt
SSLCertificateKeyFile /usr/prima/apache_ssl/conf/ssl.key/abc.com.key
</VirtualHost>
重新启动apache:/etc/init.d/httpd restart
8) 配置完成,可以使用IE访问了:
https://abc.com/
-----------------------
在AS4系统上,使用的httpd版本是系统自带的2.0
配置方法只在少数步骤上有一些不同,写边是不同的步骤:
3) 加装ssl支持
从as4的安装光盘中,找到mod_ssl的rpm,上传到服务器。
运行rpm -ivh 包名.rpm
即可完成mod_ssl的加装
执行/etc/init.d/httpd restart重新启动apache
6) 上传cert证书到服务器
在/usr/prima/apache_ssl/下建立个conf/cert目录即可。
或者放到其他目录下也可以,只要后边的步骤都设置相同的文件名即可。
相关推荐
某些公司会墙特定网站,如果你有一个可访问的域名和服务器,就可以通过nginx反向代理来来解决这些问题。比如现在我们用mirror.example.com镜像www.baidu.com,以下是详细操作。