nginx的https搭建

1、防火墙配置

复制代码
# 开放HTTP和HTTPS服务(永久生效)
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
# 重新加载规则
firewall-cmd --reload
# 验证开放状态
firewall-cmd --list-services

2、配置账户验证

复制代码
# 安装认证工具
yum install httpd-tools -y   
# 创建认证文件
htpasswd -c /etc/nginx/.htpasswd admin
# 设置文件权限(仅Nginx可读)
chmod 600 /etc/nginx/.htpasswd
chown nginx:nginx /etc/nginx/.htpasswd

3、启用https

复制代码
# 生成自签名证书
mkdir -p /etc/ssl/private
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/ssl/private/nginx.key \
-out /etc/ssl/certs/nginx.crt \
  -subj "/C=CN/ST=Beijing/L=Beijing/O=Test/CN=your_domain.com"

4、nginx配置文件

复制代码
server {
    listen 80;
    server_name your_domain.com;
    return 301 https://$server_name$request_uri; # HTTP跳转HTTPS
}

server {
    listen 443 ssl;
    server_name your_domain.com;
    
    # SSL配置
    ssl_certificate /etc/ssl/certs/nginx.crt;
    ssl_certificate_key /etc/ssl/private/nginx.key;
    ssl_protocols TLSv1.2 TLSv1.3; # 禁用旧协议
    ssl_ciphers HIGH:!aNULL:!MD5;
    
    # 账户验证
    auth_basic "Restricted Area";
    auth_basic_user_file /etc/nginx/.htpasswd;
    
    root /usr/share/nginx/html;
    index index.html;
}

5、验证与重启

复制代码
# 检查配置语法
nginx -t
# 重启Nginx
systemctl reload nginx
相关推荐
CDN36011 分钟前
中小团队加速 + 防护方案:360CDN+SDK 游戏盾实测
运维·游戏·网络安全
今晚务必早点睡1 小时前
Nginx 从入门到精通:一篇讲透原理、功能、配置与实战场景
运维·nginx·负载均衡
IMPYLH1 小时前
Linux 的 dir 命令
linux·运维·服务器·数据库
fanged1 小时前
操作系统番外1(Linux的测试体系)(TODO)
linux·运维·服务器
givemeacar1 小时前
Nginx如何实现 TCP和UDP代理?
tcp/ip·nginx·udp
成为你的宁宁2 小时前
【Docker 与 Docker-Compose 实战:从零开始容器化部署若依项目,从单容器分步运行到 Compose 一键编排】
运维·docker·容器·docker-compose
xuefeiniao2 小时前
Docker 部署宝塔面板 Nginx 反向代理 502 踩坑实录
nginx·docker·容器
zjjsctcdl3 小时前
springBoot发布https服务及调用
spring boot·后端·https
H_老邪3 小时前
Linux 与 Docker 常用命令
linux·运维·服务器·docker
博语小屋3 小时前
I/O 多路转接之epoll
运维·服务器·数据库