现有一项目由于网络资源有限只有WEB应用服务器能访问公网且该服务器只映射了80、443端口其他服务器均只有内网地址。请你在WEB服务器上部署一套Nginx服务实现访问该WEB项目自动跳转https以及内网主机访问互联网同时完成Nginx安全基线配置。请输出nginx服务相关安装命令和配置参数
安装Nginx服务的命令如下:
- 更新系统软件包:
sudo apt update
- 安装Nginx:
sudo apt install nginx
Nginx安装完成后,默认会启动并运行。
下面是Nginx的配置参数,以实现访问WEB项目自动跳转https以及内网主机访问互联网:
- 配置HTTPS转发:
编辑Nginx配置文件
/etc/nginx/nginx.conf,添加以下内容:
server {
listen 80;
server_name your_domain.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name your_domain.com;
ssl_certificate /path/to/ssl_certificate.crt;
ssl_certificate_key /path/to/ssl_certificate.key;
location / {
proxy_pass http://internal_server_ip:internal_server_port;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
将your_domain.com替换为你的域名,/path/to/ssl_certificate.crt和/path/to/ssl_certificate.key替换为你的SSL证书的路径,internal_server_ip和internal_server_port替换为内网主机的IP地址和端口号。
- 配置内网主机访问互联网:
编辑Nginx配置文件
/etc/nginx/nginx.conf,添加以下内容:
http {
server {
listen 80;
server_name internal_domain.com;
location / {
proxy_pass http://external_server_ip:external_server_port;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
}
将internal_domain.com替换为你的内网域名,internal_server_ip和internal_server_port替换为内网主机的IP地址和端口号,external_server_ip和external_server_port替换为外网服务器的IP地址和端口号。
完成以上配置后,保存并退出配置文件。
- 重启Nginx服务:
sudo systemctl restart nginx
完成上述步骤后,Nginx将会根据配置自动跳转到HTTPS,并允许内网主机通过代理访问互联网
原文地址: https://www.cveoy.top/t/topic/hMbB 著作权归作者所有。请勿转载和采集!