前情概要
SSL证书(安全套接字层证书)是一种数字证书,用于在客户端(如浏览器)和服务器之间建立加密连接,确保数据传输的安全性。下文以Apache服务为例。
目录
一,申请证书
二,上传证书到Linux服务器
三,配置Apache相关设置(附域名绑定到Apache教程)
四,查看证书是否成功配置
一,申请证书
在各大云服务平台如(阿里云 腾讯云 京东云…)的 产品控制台 可申请免费证书,这里以腾讯云为例:我的证书 – SSL 证书 – 控制台
1.登录云平台 首次使用记得实名认证,之后在控制台搜索证书,或者ssl等关键词 进入图下界面,点击申请免费证书有效期为三个月,也可购买时长更久的证书
2.来到购买页面,点击申请免费证书
3.填写申请资料,证书绑定域名填 自己想要申请ssl证书的域名,一般1~2h内,证书文件会下发
验证域名时记得要按要求,到自己域名的注册平台解析txt类型的记录。
4.下发成功后,就可以在控制台 下载证书文件到服务器了,如图点击下载
二,上传证书到Linux服务器
1.将下载好的文件通过sftp,或者ftp等方式上传到服务器的文件夹里。理论上文件可以放在任何位置,但为了方便管理,可以自己创建一个ssl文件夹,用于专门存放证书文件,终端命令如下:mkdir /etc/apache2/ssl 这样就创建了一个名为ssl的文件夹。
2.上传之前下载好的文件到ssl文件夹里,这里借助便捷工具filezilla,本质上用的是sftp协议。
按提示填写连接信息,连接成功后,将之前保存的证书文件找到并拖拽到右边之前创建的ssl文件夹里 成功传输后如图2.
三,配置Apache相关设置
1.修改Apache获取ssl证书的文件路径,保证服务能正确获取我们上传的ssl证书文件
执行以下命令启用ssl模块
sudo a2enmod ssl
之后会在/etc/apache2/sites-available目录生成SSL证书配置文件default-ssl.conf。
2.再用vim编辑器打开default-ssl.conf配置文件
温馨提示:(vim编辑器的使用:英文模式下按 i 进入编写插入模式,文件内容修改完成后 按 esc 进入只读模式,再打出冒号 :再输入 wq 回车)至此就完成了文件的修改,保存,退出的拳布流程。
vim /etc/apache2/sites-available/default-ssl.conf
3.修改文件获取路径。l3l4.xyz是示例域名,文中的.crt .key等后缀的文件需要替换为自己证书的文件名,ServerName后面的域名也需要替换为自己的,否则无法生效
注:ServerName是你解析到此服务器的域名,如果没有ServerName,可自行添加。他是实现能否通过域名进行访问网站的关键,光解析域名到服务器是没有用的,还要在这里进行域名绑定
ServerName l3l4.xyz #请将l3l4.xyz替换为您自己证书绑定的域名。部分服务器,没有该配置参数,您需要手动添加。
SSLCertificateFile /etc/apache2/ssl/l3l4.xyz.crt #证书文件路径。请替换为实际证书文件路径。
SSLCertificateKeyFile /etc/apache2/ssl/l3l4.xyz.key #证书私钥文件路径。请替换为实际证书私钥文件路径。
SSLCertificateChainFile /etc/apache2/ssl/root_bundle.crt #证书链文件路径。请替换为实际证书链文件路径。
4.执行以下命令,将default-ssl.conf映射至/etc/apache2/sites-enabled目录,实现两者之间的自动关联。
sudo ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/000-ssl.conf
执行以下命令,重新加载Apache2配置文件。
sudo /etc/init.d/apache2 force-reload
最后重启Apache服务
sudo systemctl restart apache2
四,查看证书是否成功配置
检验证书是否配置成功,可以直接把协议直接换为 https://+域名 进行访问
或者用 vim /etc/apache2/sites-available/000-default.conf 命令添加重定向规则(需要添加的代码如下),wq保存后,sudo a2enmod rewrite重新加载rewrite模块,sudo systemctl restart apache2,重启Apache服务,之后系统会自动以https协议进行访问,否则输入域名默认的还是http协议进行访问。
RewriteEngine on #将以下三行代码复制到/etc/apache2/sites-available/000-default.conf文件里
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]
如图可以看到 网址 由http变为了https,网页 也没有了不安全或者禁止访问的提示
评论前必须登录!
注册