Nginx核心技术:封禁IP和IP段及密码认证

添加 Nginx 反向代理和 IP 白名单配置:

bash 复制代码
server {
    listen 80;
    server_name your_elasticsearch_domain_or_ip;

    location / {
        proxy_pass http://localhost:9200;  # Elasticsearch 运行在本地的端口
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        # IP 白名单
        allow 192.168.1.100;   # 允许的 IP 地址
        allow 192.168.1.101;   # 另一个允许的 IP 地址
        deny all;              # 拒绝其他所有 IP 地址
    }
}

如果ip地址多的情况下,将ip地址打包在一个文件当中iplist,上传至/etc/nginx目录下,编辑nginx配置文件添加配置:

bash 复制代码
include conf.d/iplist;

执行重载命令:

bash 复制代码
nginx -t 
nginx -s reload

Nginx添加密码认证:

安装 htpasswd 工具:

bash 复制代码
#Debian/Ubuntu:
sudo apt update
sudo apt install apache2-utils
#CentOS/RHEL:
sudo yum install httpd-tools

创建密码文件:

bash 复制代码
sudo htpasswd -c /etc/nginx/.htpasswd admin

编辑配置文件在配置文件location 中添加如下配置:

bash 复制代码
server {
    listen 80;
    server_name yourdomain.com;

    location / {
        auth_basic "请输入密码";  # 提示用户输入密码时的显示内容
        auth_basic_user_file /etc/nginx/htpasswd;  # 指定密码文件路径

        proxy_pass http://your_backend_server;
    }
}

重载nginx服务:

bash 复制代码
nginx -t
nginx -s reload

删除用户:

bash 复制代码
vim /etc/nginx/.htpasswd
相关推荐
励志师code1 分钟前
Ansible 批量运维实战:从连通性巡检到灰度变更的完整闭环
运维·ansible
colinu24 分钟前
Docker 容器自启动策略说明与常用命令
运维·docker·容器
灯澜忆梦25 分钟前
【docker】#3 | 数据卷挂载
运维·docker·容器
Peter-Code28 分钟前
Nginx 常用操作整理(前端)
服务器·前端·nginx
像风一样自由20209 小时前
52.Docker部署大模型应用从本地开发到服务化运行
运维·人工智能·docker·容器·大模型·智能体
sxgzzn9 小时前
如何利用电缆故障定位在线监测系统提升供电安全?
运维·重构·无人机·开关柜局放在线监测·gis局放在线监测
mengchanmian10 小时前
VSFTP 服务器搭建(Centos)
运维·服务器·centos
北京盛世宏博11 小时前
通信异常深度排查:以太网温湿度设备 TCP 粘包、UDP 丢包根治方案
单片机·网络协议·tcp/ip·udp·以太网·传感器·温湿度
别动我齐刘海11 小时前
Linux 系统调试学习1
linux·运维·服务器·c++·学习·机器学习·机器人
不像程序员的程序媛12 小时前
linux常见文本操作命令
linux·运维·服务器