步骤三:安装配置nginx
nginx负责将线下服务器的请求转发至HSS后台管理后台。
安装前准备:检查yum源
检查yum源是否有nginx软件包,如果没有nginx软件包需完成配置yum源,并临时绑定公网ip,待安装结束之后再解绑公网ip。
- 远程登录代理服务器,执行以下命令检查yum源中是否存在nginx包。
yum list nginx
- 显示如图1所示表示nginx包存在。
安装nginx
- 执行以下命令使用yum安装nginx。
yum install -y nginx
图2 安装nginx
- 自动执行安装,出现如图3所示“Complete!”表示安装成功。
配置nginx
- 执行以下命令进入nginx目录。
cd /etc/nginx/
- 执行以下命令完成证书自签。
openssl req -new -x509 -nodes -out server.pem -keyout server.key -days 36500
命令执行后需填写证书相关信息,自定义填写即可。
图4 自签证书
第一项Country Name受长度限制,只能填写两个字符。
- 执行以下命令修改nginx.conf。
vi nginx.conf
- 配置upstream。在http下找到server,在server上方添加以下信息。
upstream backend_hss {
server ADDR:10180;
}
图5 配置upstream
- 配置server。server下的监听端口保留一条listen并将值修改为10180,server_name的值修改为ADDR。
图6 配置server
- 在server下添加以下信息开启ssl认证。
ssl on;
ssl_protocols TLSv1.2;
ssl_certificate "server.pem";
ssl_certificate_key "server.key";
ssl_session_cache shared:ssl:10m;
ssl_session_timeout 10m;
ssl_prefer_server_ciphers on;
图7 开启ssl认证
- 配置location。在server下找到location,在location下的{}中添加以下信息。
limit_except GET POST PUT
{
deny all;
}
proxy_set_header Host ADDR;
proxy_pass https://backend_hss;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
图8 配置location
- 可选:填写完成后键入ECS,输入以下命令,键入回车键退出,完成配置。
:wq!
图9 保存退出
- 依次执行以下命令完成启动nginx。
sed -i "s#ADDR#`cat /usr/local/hostguard/conf/connect.conf | grep master_address | cut -d '=' -f 2 | cut -d ':' -f 1`#g" nginx.conf
echo '*/10 * * * * root systemctl start nginx' >> /etc/crontab
systemctl start nginx