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
相关推荐
·薯条大王21 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
小小、码农1 天前
Linux进程控制:从fork到exec,手写一个简易Shell
linux·运维·服务器
不会就选b1 天前
Linux之进程间通信(二)---模拟进程池
linux·运维·服务器
NeilYuen1 天前
用UDP实现向DNS服务器请求IP地址
服务器·tcp/ip·udp
shengnan_wsn1 天前
【协议】【TCP】
网络·网络协议·tcp/ip
沫璃染墨1 天前
《从零入门Linux系统篇(十五):系统工具篇·六——GDB调试器详解:从程序执行控制到高级调试技巧》
linux·运维·服务器·c语言·c++
消失的旧时光-19431 天前
第 3 篇:机器人 TCP 长连接如何稳定运行?心跳、掉线检测与自动重连
网络协议·tcp/ip·机器人
AIgorithmGEEK1 天前
Linux 环境变量完全指南:从入门到理解底层原理
linux·运维·服务器
修罗王1 天前
Linux Docker 服务管理与排查实战指南(新手速查版)
运维·docker
迪康Defender1 天前
从静态存储到动态流转:终端透明加密两种模式实战解析
运维·服务器·网络·数据库·其他