iptables 配置異常(Centos 6)[出現(xiàn)概率:10%]
前提條件:您只有在已授權(quán)可關(guān)閉 iptables 的情況下讯嫂,才能做該項(xiàng)排查抽活。
故障現(xiàn)象:SSH 無(wú)法連接绣檬,關(guān)閉 iptables 后連接恢復(fù)亮瓷。
解決方法:調(diào)整 iptables 配置策略衔沼。
查看防火墻規(guī)則:
iptables -nvL –line-number
L 查看當(dāng)前表的所有規(guī)則欲芹,默認(rèn)查看的是 filter 表卿啡,如果要查看 NAT 表,可以加上 -t NAT 參數(shù)菱父。
n 不對(duì) IP 地址進(jìn)行反查颈娜,加上這個(gè)參數(shù)顯示速度會(huì)快很多。
v 輸出詳細(xì)信息滞伟,包含通過(guò)該規(guī)則的數(shù)據(jù)包數(shù)量揭鳞、總字節(jié)數(shù)及相應(yīng)的網(wǎng)絡(luò)接口。
修改規(guī)則梆奈。
若之前已設(shè)置過(guò)規(guī)則策略的野崇,將原有的 iptables 文件保存一份,避免之前設(shè)置的策略丟失亩钟。
cp -a /etc/sysconfig/iptables /etc/sysconfig/iptables.bak
清空服務(wù)器上所有的規(guī)則乓梨。
iptables -F
設(shè)置 INPUT 方向所有的請(qǐng)求都拒絕鳖轰。如果是線上業(yè)務(wù)請(qǐng)勿直接操作,會(huì)導(dǎo)致業(yè)務(wù)直接中斷扶镀。
iptables -P INPUT DROP
設(shè)置 iptables 防火墻后需放行 22 號(hào)端口蕴侣,否則會(huì)導(dǎo)致無(wú)法遠(yuǎn)程。
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
指定 IP 訪問(wèn)22號(hào)端口臭觉。(根據(jù)我的判斷昆雀,這一段可以不用加,因?yàn)闀簳r(shí)沒(méi)必要)
iptables -I INPUT -s 192.168.1.1 -p tcp --dport 22 -j ACCEPT
說(shuō)明:192.168.1.1 為請(qǐng)求端 IP 地址蝠筑。
使用iptables -L查看一下添加的規(guī)則是否生效狞膘。
iptables -L
保存添加的規(guī)則。
iptables-save > /etc/sysconfig/iptables
設(shè)置后需要重啟iptables什乙。
service iptables restart 或 /etc/init.d/iptables restart
操作完成后挽封,重啟服務(wù)器進(jìn)行配置驗(yàn)證。
systemctl reboot
完成操作后臣镣,請(qǐng)?jiān)龠M(jìn)行 SSH 連接辅愿。
安全組設(shè)置
在ECS安全組放行需訪問(wèn)的端口和訪問(wèn)白名單,下面的示例表示允許所有IP訪問(wèn)服務(wù)器的80端口忆某。您可以根據(jù)實(shí)際情況放行允許訪問(wèn)的客戶端IP点待。