如何在Lighttpd服务器上配置SSL

使用SSL运行的所有站点都使用HTTPS协议的默认端口443上的SSL通过加密服务器和客户端之间的数据安全的数据通信。在我们前面的文章中我们描述了有关在CentOS的/ RHEL系统上 安装的lighttpd创造virtualhosts。本文将帮助你在Lighttpd的服务器配置SSL。在这个例子中,我们使用的是自签名证书。 如果您正在寻找在 Apache/HTTPD 配置SSL,那么你必须 这篇文章

第1步:创建证书签名请求(CSR)

为了创建SSL证书,第一个要求是创建私钥和CSR。 CSR是其对域中的所有细节,包括一个公共密钥的文件。首先创建一个目录,建立CSR和key。
# mkdir /etc/lighttpd/ssl/
# cd /etc/lighttpd/ssl/
现在用下面的命令创建CSR和密钥文件。更改名称的文件 example.com.keyexample.com.csr按您的域名。 此命令会要求输入你的域名信息。 了解更多有关创建CSR。
# openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr
Generating a 2048 bit RSA private key
....+++
...............+++
writing new private key to 'example.com.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:IN
State or Province Name (full name) []:Delhi
Locality Name (eg, city) [Default City]:Delhi
Organization Name (eg, company) [Default Company Ltd]:youcl Inc.
Organizational Unit Name (eg, section) []:web
Common Name (eg, your name or your server's hostname) []:example.com
Email Address []:user@example.com

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: [Leave Blank]
An optional company name []: [Leave Blank]

第2步:从CA申请证书

创建CSR后,从任何证书提供商,如GeoTrust,Comodo,Digicert 或 GoDaddy 等请求SSL证书 或创建一个 自签名证书供内部使用。
# openssl x509 -req -days 365 -in example.com.csr -signkey example.com.key -out example.com.crt
您将在一个名为 example.com.crt当前目录获取创建的证书文件。现在,通过在一个文件中结合密钥文件和证书创建PEM文件
# cat example.com.key  example.com.crt > example.com.pem

第3步:设置虚拟主机使用SSL

编辑Lighttpd的配置文件 /etc/lighttpd/lighttpd.conf并添加下列值。
$SERVER["socket"] == ":443" {
        ssl.engine = "enable"
        ssl.pemfile = "/etc/lighttpd/ssl/youcl.com.pem"
      # ssl.ca-file = "/etc/lighttpd/ssl/CA_issuing.crt"
        server.name = "site1.youcl.com"
        server.document-root = "/sites/vhosts/site1.youcl.com/public"
        server.errorlog = "/var/log/lighttpd/site1.youcl.com.error.log"
        accesslog.filename = "/var/log/lighttpd/site1.youcl.com.access.log"
}

第4步:验证配置和重新启动Lighttpd

在开始的lighttpd服务之前,请确认配置文件的语法。
# lighttpd -t -f /etc/lighttpd/lighttpd.conf

Syntax OK
如果你发现所有的语法是ok 的,让我们重新开始服务
# service lighttpd restart
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏