User Tools

Site Tools


network-service:enablessl

网站启用SSL加密

为了防止我的博客中因出现某些敏感词汇而被墙,启用SSL加密连接。

参考:http://wiki.ubuntu.org.cn/index.php?title=UbuntuHelp:Forum/server/apache2/SSL&variant=zh-hant

Create a Certificate

  1. apt-get install ssl-cert
  2. mkdir /etc/apache2/ssl
  3. make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem

在VPS上发现ssl-cert已经安装了,其中make-ssl-cert应该是一个快速创建证书的命令

Usage: /usr/sbin/make-ssl-cert template output [--force-overwrite]
Usage: /usr/sbin/make-ssl-cert generate-default-snakeoil [--force-overwrite]

Create virtualhost(SSL)

这个教程是拷贝了默认的一个模板进行修改。

我发现在sites-available目录下已经有了一个默认的SSL模板:

default-ssl

既然已经有了那就直接用它了。

对这个文件进行简单的修改,我一共就修改了4行:

  • 主要修改网站根目录:

	ServerAdmin pengjianqing@gmail.com

	DocumentRoot /var/www/blog/wordpress/
	<Directory />
		Options FollowSymLinks
		AllowOverride None
	</Directory>
	<Directory /var/www/blog/wordpress/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
	</Directory>

  • 修改证书目录:

#   SSL Engine Switch:
	#   Enable/Disable SSL for this virtual host.
	SSLEngine on

	#   A self-signed (snakeoil) certificate can be created by installing
	#   the ssl-cert package. See
	#   /usr/share/doc/apache2.2-common/README.Debian.gz for more info.
	#   If both key and certificate are stored in the same file, only the
	#   SSLCertificateFile directive is needed.
	SSLCertificateFile    /etc/apache2/ssl/apache.pem
	#SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
保证:

SSLEngine on

还有SSLCertificateFile路径正确

SSLCertificateFile    /etc/apache2/ssl/apache.pem

Reload apache

最后重启apache,一切正常。

可以用https://impjq.net/twitter/访问了。

发现加密之后很耗系统资源,特别是内存。

用https访问一下网页,内存立马减少将近100M,数据传输完后又会恢复了,如果人多的话,岂不是VPS立马就将内存耗尽?

/var/www/dokuwiki/wiki/data/pages/network-service/enablessl.txt · Last modified: 2016/05/05 13:07 (external edit)