服务器限制某个端口只允许特定IP访问(处理第三方依赖漏洞)

最近项目部署之后,有些客户开始进行系统系统漏洞扫描,其中出现问题多的一个就是我们项目所依赖的Elasticsearch(es检索服务),很容易就被扫出来各种高危漏洞,而且这些漏洞我们在处理起来是很棘手的,毕竟这个是依赖于开源的一些服务,我们不可能等到厂商直接解决这些问题,那么我们只能自己尝试解决这些问题喽!

1、解决思路

(1)问题现象描述

(2)问题解决思路

好多问题,这解决起来根本无从下手啊,这要是解决起来,难不成我们还要去改人家的源码吗?想想都不现实。好在最后想到了一个思路:既然这些漏洞是通过访问特定的端口,从而获取到一些用户安全方面的信息,那么我们直接将这个Elasticsearch所依赖的端口给他禁用掉不就行了吗,而且一劳永逸。我们在指定当前Elasticsearch所占用的端口只允许特定的IP或者只允许本机访问,那么这样我们系统对于Elasticsearch的依赖不也能正常使用了嘛。

2、限制特定端口只允许特定IP访问

因为我们的项目基本都是基于docker环境部署的,所以以下操作在docker环境下是可行的,其他环境部署的可以试一试

(1)知识点

默认情况下 docker 会在 iptables 里创建优先级比 firewalld 高的规则。使用 firewalld 创建的规则对 docker 的容器就不会产生作用。 所以就会出现我们在firewalld设置端口访问控制,并不能完成限制特定IP访问的目的。

(2)操作步骤

-- 查看DOCKER 开放的规则

iptables --line -nvL DOCKER

-- 禁用9200端口

iptables -I DOCKER -p tcp --dport 9200 -j DROP

-- 允许10.4.56.13可以访问本机9200端口

iptables -I DOCKER -s 10.4.56.13 -p tcp --dport 9200 -j ACCEPT

-- 删除防火墙规则,需指定规则序号,规则序号通过命令:iptables --line -nvL DOCKER 查询

iptables -D DOCKER 规则序号 4

-- 保存规则(如果保存失败,或者防火墙不能重启,下次操作系统重启以后已配置规则会失效)

systemctl save iptables 或者 service iptables save

-- 重启防火墙

systemctl iptables restart

(3)注意

-- 如果执行service iptables save

报如下错误:

The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.

-- 原因:

从 CentOS 7.x 开始,CentOS 开始使用 systemd 服务来代替 daemon,原来管理系统启动和管理系统服务的相关命令全部由 systemctl 命令来代替。service 命令之保留了极少部分使用,大部分命令都要改用 systemctl 命令来使用。

-- 解决方法:

-- 首先停止防火墙,再禁用firewalld:

systemctl stop firewalld

systemctl mask firewalld

yum install iptables-services

service iptables start

chkconfig iptables on

相关推荐
JosieBook2 小时前
【远程运维】Linux 远程连接 Windows 好用的软件:MobaXterm 实战指南
linux·运维·windows
鳄鱼杆3 小时前
服务器 | Docker应用开发与部署的实践以及阿里云镜像加速配置
服务器·阿里云·docker
羚羊角uou3 小时前
【Linux】命名管道
linux·运维·服务器
IT 小阿姨(数据库)4 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
曾经的三心草4 小时前
Python2-工具安装使用-anaconda-jupyter-PyCharm-Matplotlib
android·java·服务器
逍遥浪子~4 小时前
docker实践(一)
运维·docker·容器
grrrr_14 小时前
【工具类】Nuclei YAML POC 编写以及批量检测
网络·安全·web安全
AI云原生5 小时前
如何使用Docker快速运行Firefox并实现远程访问本地火狐浏览器的教程
运维·docker·云原生·容器·serverless·firefox·kubeless
今生相伴9915 小时前
ELFK:企业级日志管理的完整解决方案——从入门到精通
运维·elk·elasticsearch
码出钞能力5 小时前
更换libc.so导致linux变砖,通过LD_PRELOAD挽救
linux·服务器