Nginx配置https请求,以及Nginx+keepalive
一、Nginx配置https请求
要实现Nginx配置https请求,安装的时候需要加上 --with-http_ssl_module,因为http_ssl_module不属于Nginx的基本模块。
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
1、创建证书
SSL 证书是一种互联网上身份验证的方式,可以用来标识和证明通信双方身份的数字信息文件。使用SSL 证书的网站,能够保证用户和服务器间信息交换的保密性。SSL证书由浏览器中“受信任的根证书颁发机构”在验证服务器身份后颁发,具有网站身份验证和加密传输双重功能。Nginx创建证书步骤如下:
(a)openssl genrsa -des3 -out server.key 1024
创建服务器私钥,采用rsa算法生成服务器私钥,然后存放在server.key文件中。
(b)openssl req -new -key server.key -out server.csr
创建证书请求文件csr,用于申请证书,csr核心内容是一个公钥
(c)cp server.key server.key.org
备份一份服务器密钥文件
(d)openssl rsa -in server.key.org -out server.key
去除使用私钥的口令验证
(e)openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
生成证书文件server.crt,其中x509是一种证书格式,-days 365证书有效期365天,server.crt就是最后需要的证书。
2、Nginx配置https
二、Nginx+keepalived实现高可用
keepalived就是利用VRRP协议实现的一种可保障集群高可用的工具。通过主机之间的优先等级以及心跳检测来及时切换主备机的工作状态,以提高集群的高可用性。
VRRP全称 Virtual Router Redundancy Protocol,即虚拟路由冗余协议。可以认为它是实现路由器高可用的容错协议,即将N台提供相同功能的路由器组成一个路由器组(Router Group),这个组里面有一个master和多个backup,但在外界看来就像一台一样,构成虚拟路由器,拥有一个虚拟IP(vip,也就是路由器所在局域网内其他机器的默认路由),占有这个IP的master实际负责ARP响应和转发IP数据包,组中的其它路由器作为备份的角色处于待命状态。master会发组播消息,当backup在超时时间内收不到vrrp包时就认为master宕掉了,这时就需要根据VRRP的优先级来选举一个backup当master,保证路由器的高可用。
1、安装keepalived
(a)tar -zxvf keepalived.tar.gz
--prefix指的是安装路径,不指定prefix,则可执行文件默认放在/usr/local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc。其它的资源文件放在/usr /local/share。
--with指的是安装本文件所依赖的库文件。
--sysconf指定配置文件安装路径
(b)./configure --prefix=/mnt/keepalived --sysconf=/etc
主要作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系,但并不是所有的tar包都是源代码的包,可以查看有没有configure文件判断是否源代码包,如果是二进制的包,解压后直接就能使用。
(c)make && make install
编译安装
(d)cd /mnt/keepalived-2.0.10
ln -s /mnt/keepalived/sbin/keepalived /sbin
建立软链接
(e)添加系统服务
cp /mnt/keepalived-2.0.10/keepalived/etc/init.d/keepalived /etc/init.d/
chkconfig --add keepalived
chkconfig keepalived on
添加系统服务,设置开机启动
systemctl start keepalived
systemctl restart keepalived
启动系统服务
systemctl stop keepalived
停止系统服务
systemctl status keepalived
查看服务状态
(f)配置输出日志
1)将keepalived日志输出到local0
vim /etc/sysconfig/keepalived
KEEPALIVED_OPTIONS="-D -d -S 0"
2)在/etc/rsyslog.conf里添加:
vim /etc/rsyslog.conf
local0.* /var/log/keepalived.log
3)重新启动keepalived和rsyslog服务
service rsyslog restart
systemctl restart keepalived
2、keepalived配置
主备keepalived使用相同的虚拟ip(192.168.101.10),主keepalived的实际ip地址为192.168.101.100,备份keepalived的实际ip地址为192.168.101.101。主备keepalived的配置文件/etc/keepalived/ keepalived.conf分别如下:
主keepalived配置 备份keepalived配置