#随便转载无需在意我的感受#
需求:服务器需要ssl证书认证
工具:阿里服务器 &freessl.cn证书
方法两种:1.配置nginx文件2.配置apache的httpd文件
说明一:
因为我在阿里服务器里面没有找到免费的ssl证书,所以我在这里(freessl.cn)找到免费证书.
说明二:
为了关于观看,我先写步骤,在文章后半部分写解析(中间可能穿插)。
具体步骤:
1.下载ca证书和自己的key秘钥
2.配置相应的文件(这里只有nginx和httpd的方法)
步骤一:下载ca证书和自己的key秘钥(两种方法相同)
1.打开证书官网(最好创一个账,又不要钱,等会可能还有用)
2.打开右上角->ssl工具–>csr文件在线生成(Certificate Signing Request 证书签名请求文件)–>按所需填写自己信息(私钥密码后面会用到(听说可以不写,我没有试,之后修改文件时会用到,如果没有写的,我猜测到时候不会用到))
3.用文本编辑器保存这两个文件(文件名1:xiaoheihu.top.csr(请求文件) 2.xiaoheihu.top.key(你的秘钥),文件类型all)不要用记事本
3.证书官网跳到首页填写以下信息(首页先填写你的域名后会跳到这里,填写完成后点击创建)
4.下载文件,在服务器内创建相应目录,放入下载后的文件(apache的是在html目录下,阿里服务器在tomcat下root目录中创建如图)
5.配置完成后先检测
结果1:如果结果如图全部匹配返回去验证就好了(如果美国没有通过也没事,博主之前就是这样,没有通过的不要回去点验证,验证会失败,而且要等十分钟)
结果2:3个都失败,你文件的路径有问题,就是平常你访问自己服务器静态文件的路径(默认apache下的html,nginx服务器开启的要去配置文件下看看)
建议:如果一不小心点了失败,可以去你账号下的申请列表找到后删除,然后重新以上申请过程,这样就不会等十分钟了,
6.成功后会出现如下界面
好了完成到这里,你的证书文件就已经下好了,ps:下载的文件有两个,一个是key,一个是以上两个证书合起来的证书,不用管
步骤二:配置文件(你服务器怎么访问就用什么方法)
不过我猜现在应该就是用nginx服务器了
方法一:配置apache默认的httpd文件(博主没有亲试,只是看了一些教程,你们最好先看看)
1.在/etc/ssl/创建一个目录(目录名随便,方便起见写你的域名),并把刚刚四个文件放进去,如图
2.修改ssl.conf配置文件(最好先看看这个视频(这个博主没有亲测))
vim /etc/httpd/conf.d/ssl.conf
如图
更改完成后保存. :wq;
3.重启你的httpd服务(博主做的时候有问题,因为我用的是nginx代理过的,所以这里有问题, apache的可以试试)
service httpd restart
然后应该就可以访问了!
方法二:配置nginx.conf文件
1.在 /etc/nginx目录下创建cret目录,并把下载的证书pem文件和秘钥key文件放进去
2.添加访问443端口的服务如图
vim /etc/nginx/nginx.conf
3.检查nginx配置文件(这里会需要你之前设置的密码,success代表成功)
$ nginx -t
4.使配置生效
$ nginx -s reload
记得去控制台开放相应端口
如果有报错
nginx: [error] invalid PID number "" in "/var/run/nginx.pid"[root@izwz93428vtl3yogfats5hz nginx]# nginx: [error] invalid PID number "" in "/var/run/nginx.pid"
nginx -c /etc/nginx/nginx.conf
然后在重新加载配置
好了,应该没有其他问题了,应该可以直接访问了。
过程解析:
1.为什么需要https?
为了加密,防止黑客攻击,让浏览器确认你就是他想要访问的服务器,而不是被黑客假冒。这里就需要一个证书(证明你就是服务器),证书一般是由第三方做担保人,你也可以自己做。使用的算法是RSA,有兴趣的同学自己去了解,反正你需要一个证书文件和一个自己用的key文件。
2.nginx配置
之前不了解ngxin的概念,有兴趣的同学自己去了解吧,他只是一个代理器分
正向代理:客户端->nginx->其他服务器,然后数据由nginx返回
反向:自己了解吧 很重要。
想信当你研究完这个两个概念之后就知道整个流程了。