SSL证书是加密网站信息并创建更安全连接的一种方式。此外,证书可以向站点访问者显示虚拟专用服务器的标识信息。证书颁发机构可以颁发SSL证书来验证服务器的详细信息,而自签名证书没有第三方佐证。
确保nginx安装在您的VPS上。如果不是,你可以快速安装它的2个步骤。
安装EPEL存储库:
su -c 'rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm'
安装nginx
yum install nginx
SSL证书有2个主要部分:证书本身和公钥。为了使所有相关文件容易访问,我们应该创建一个目录来存储它们:
sudo mkdir /etc/nginx/ssl
我们将在目录中执行以下几个步骤:
cd /etc/nginx/ssl
首先创建私有服务器密钥。在此过程中,您将被要求输入特定的密码。一定要仔细地注意这个短语,如果你忘记它或失去它,你将无法访问证书。
sudo openssl genrsa -des3 -out server.key 1024
后续操作是创建证书签名请求:
sudo openssl req -new -key server.key -out server.csr
此命令将提示终端显示需要填写的字段列表。
最重要的一行是“Common Name”。在这里输入您的官方网域名称,如果您还没有,请输入您网站的IP位址。将挑战密码和可选的公司名称留空。
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) [AU]:US State or Province Name (full name) [Some-State]:New York Locality Name (eg, city) []:NYC Organization Name (eg, company) [Internet Widgits Pty Ltd]:Awesome Inc Organizational Unit Name (eg, section) []:Dept of Merriment Common Name (e.g. server FQDN or YOUR name) []:example.com Email Address []:[email protected]
我们几乎完成了证书的创建。但是,它将帮助我们删除密码。虽然具有密码确实提供了更高的安全性,但是当尝试重新加载nginx时,问题开始。在nginx崩溃或需要重新启动的情况下,您将总是必须重新输入密码,以使整个Web服务器重新联机。
使用此命令删除密码:
sudo cp server.key server.key.org sudo openssl rsa -in server.key.org -out server.key
你的证书只是完成了,你只需要签名。请记住,您可以通过将365更改为您希望的天数来指定证书应保持有效的时间。因为它是,这个证书将在一年后过期。
sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
您现在已完成证书。
打开SSL配置文件:
vi /etc/nginx/conf.d/ssl.conf
在HTTPS服务器下的部分下取消注释。将您的配置与以下信息匹配,将“server_name”行中的example.com替换为您的域名或IP地址。如果你只是想测试你的证书,默认的根将有工作。
# HTTPS server server { listen 443; server_name example.com; ssl on; ssl_certificate /etc/nginx/ssl/server.crt; ssl_certificate_key /etc/nginx/ssl/server.key; }
然后重新启动nginx:
/etc/init.d/nginx restart
访问https:// youraddress。
您将在该网页上看到您的自签名证书!