Linux端口设置ip白名单

一、 Linux 22端口设置ip白名单

在Linux系统中,如果您想要限制只有特定的IP地址能够访问端口22(通常是SSH服务的端口),您可以使用iptables防火墙来实现。以下是一个基本的示例,展示了如何设置端口22的IP白名单:

  1. 首先,确保您已经安装了iptables。在大多数Linux发行版中,iptables通常会作为默认防火墙软件随系统一起安装。
  2. 打开终端,并使用sudo来运行iptables命令。
  3. 添加一个规则,允许特定的IP地址访问端口22。例如,如果您想要允许IP地址192.168.1.100访问端口22,您可以使用以下命令:
sh 复制代码
sudo iptables -A INPUT -s 192.168.10.76 -p tcp --dport 22 -j ACCEPT

这个命令的含义是:

  • sudo iptables:运行iptables命令,需要使用sudo以获得必要的权限。
  • -A INPUT:向INPUT链添加一个规则。
  • -s 192.168.1.100:指定源IP地址为192.168.1.100。
  • -p tcp:指定协议为TCP。
  • --dport 22:指定目标端口为22。
  • -j ACCEPT:匹配到规则时,执行的动作是接受这个连接。
  1. 如果您想要允许多个IP地址,只需重复上述命令,为每个IP地址添加一个规则。
  2. 保存iptables规则。在某些系统中,您可能需要运行iptables-save命令来保存规则,而在其他系统上,规则可能会在系统重启时自动保存。
  3. 重启iptables服务,以确保规则生效。这可以通过运行systemctl restart iptables(如果iptables是由systemd管理的)或重新启动计算机来实现。
    请注意,iptables是一个强大的工具,它可以进行复杂的网络配置。在实际应用中,您应该根据实际情况调整规则,并确保您理解每个命令的作用。此外,始终确保在允许任何连接之前,您已经考虑了安全性和可能的攻击风险。

二、ubuntu 22端口设置ip白名单

在Ubuntu系统中,您可以使用iptables来设置22端口的IP白名单。以下是设置步骤和示例代码:

首先,您需要安装iptables,如果尚未安装,可以使用以下命令安装:

bash 复制代码
sudo apt update
sudo apt install iptables

清除当前的iptables规则(可选,但建议在进行规则更改前这么做):

bash 复制代码
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT

设置白名单规则,只允许指定IP访问22端口:

bash 复制代码
sudo iptables -A INPUT -p tcp --dport 22 -s YOUR_IP_ADDRESS -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j DROP   #将其他ip设置为黑名单

将YOUR_IP_ADDRESS替换为您希望允许访问22端口的IP地址。您可以添加多个IP地址,为每个IP地址重复执行第二条规则。

保存iptables规则,使其在重启后生效:

bash 复制代码
sudo netfilter-persistent save
sudo netfilter-persistent reload

请注意,这些命令需要以root权限或使用sudo执行。如果您不希望在系统重启后丢失规则,应确保iptables-persistent服务已安装并设置为在启动时运行。

三、Linux解除22端口黑名单操作

sudo iptables -A INPUT -p tcp --dport 22 -j DROP,如何解除这个操作?

如果您不小心添加了以下规则:

sh 复制代码
sudo iptables -A INPUT -p tcp --dport 22 -j DROP

这会阻止所有到端口22(SSH)的TCP连接。要解除这个操作,您需要删除这个规则。可以使用以下命令:

sh 复制代码
sudo iptables -D INPUT -p tcp --dport 22 -j DROP

这条命令会从INPUT链中删除之前添加的规则。记得在删除规则后检查iptables规则以确保您的设置正确。可以使用以下命令来检查iptables规则:

sh 复制代码
sudo iptables -L -n -v

确保DROP规则已经被移除,并且没有其他阻止端口22的规则。如果您的目标是允许SSH连接,您可能还需要添加一个接受到端口22的TCP连接的规则:

sh 复制代码
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

添加这个规则后,SSH连接应该会被允许。记得应用更改:

sh 复制代码
sudo iptables-save
sudo systemctl restart netfilter-persistent

这将保存更改并重启netfilter-persistent服务,以确保iptables规则生效。

相关推荐
Liveweb视频汇聚平台10 分钟前
TCP 和 UDP 的区别:解析网络传输协议
网络·tcp/ip·udp
m0_694938011 小时前
Leetcode打卡:字符串及其反转中是否存在同一子字符串
linux·服务器·leetcode
看星星的派大星2 小时前
rk3588 android12 root
linux
网络安全-杰克2 小时前
《网络对抗》—— Web基础
前端·网络
飘飘燃雪2 小时前
Linux Modbus协议详解,代码示例
linux·运维·服务器·modbus
李老头探索2 小时前
TCP-UDP调试工具推荐:Socket通信测试教程(附详细图解)
网络协议·tcp/ip·udp
蜗牛hb2 小时前
Kali基础知识
linux·运维·服务器
几维安全2 小时前
出海隐私合规解决方案,一文助力中企合规出海
网络·安全
红米饭配南瓜汤3 小时前
WebRTC服务质量(10)- Pacer机制(02) RoundRobinPacketQueue
网络·音视频·webrtc·媒体
老鑫安全培训3 小时前
从安全角度看 SEH 和 VEH
java·网络·安全·网络安全·系统安全·安全威胁分析