傻瓜式 Apache2 安装 SSL 证书

傻瓜式 Apache2 安装 SSL 证书

八月 7, 2016 阅读 94 字数 1096 评论 0 喜欢 0

还是那个SS翻墙站,https://prpr.shellbin.me
因为网站类型比较特别,用http容易存在被封杀的后果,所以从letsencrypt那里受签了免费的SSL签名

其实整个获取签名的过程特别简单,只是到了后来,因为我对Apache非常的不熟悉,所以遇到很多问题,既然已经解决,我就来笔记一发

 

首先,请确定你已经获取了证书,证书存放在/etc/letsencrypt/live/【你的域名】下

第二步,我们需要设置支持SSL
# a2ensite default-ssl(后面我不再写sudo,但要注意这些功能都需要在root下进行)
再配置下这里
# a2enmod ssl
重启一下Apache2
# /etc/init.d/apache2 restart
第三步,修改Apache2配置文件
# nano /etc/apache2/sites-available/default-ssl
找到下面这几行,并且证书地址要按照自己的情况修改
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/prpr.shellbin.me/chain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/prpr.shellbin.me/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/prpr.shellbin.me/fullvhain.pem

第四步,重启Apache2
# /etc/init.d/apache2 restart

这时候,你的网站就成功的开启了SSL,打开浏览器,用https的方式试试?


但是,别忘啦,别人依然可以通过http的方式访问。所以我们需要做下面这几件事:

为了剧情连贯,先说怎么跳转http方式吧

首先,我们需要知道,不加密的网页走80端口,加密的网页走443端口,所以要怎么办呢,当然是rewrite!

老规矩,来安装个这个模块
# a2enmod rewrite

第二,配置apache2.conf
#nano /etc/apache2/apache2.conf

在其中添加以下字段

<Directory /var/www/html>
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]
</Directory>

第三,重启你的Apache2
# /etc/init.d/apache2 restart

至此,就完成了http的跳转。

发表评论

电子邮件地址不会被公开。 必填项已用*标注