linux 中 開放端口,以及防火牆的相關命令


最近公司需要在 生產環境上線系統,碰到一些防火牆以及開放端口的問題,在此來 復習mark下
 
1、設定
 
[root@localhost ~]# /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
[root@localhost ~]# /sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
[root@localhost ~]# /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
 
2、保存
 
[root@localhost ~]# /etc/rc.d/init.d/iptables save
         
 
3、重啟防火牆
 
[root@localhost ~]# service iptables restart
         
 
  
4、查看
 
[root@localhost ~]# /etc/init.d/iptables status
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination        
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:3306
2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22
3    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80
Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination        
Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination
 
  

永久性關閉防火牆:

命令:#chkconfig --level 2345 iptables off

或者 #chkconfig  iptables off

 

其中2345 代表”執行等級“

 

等級0表示:表示關機

等級1表示:單用戶模式

等級2表示:無網絡連接的多用戶命令行模式

等級3表示:有網絡連接的多用戶命令行模式

等級4表示:不可用

等級5表示:帶圖形界面的多用戶模式

等級6表示:重新啟動

 
 

臨時關閉防火牆:

命令:/etc/init.d/iptables stop    

出現三個OK,關閉成功,此時防火牆已經關閉,不許重啟已經生效。

命令: /etc/init.d/iptables status

關閉后查看狀態,應該顯示 firewall is not running上
 
 
 

防火牆常用命令:

service iptables status可以查看到iptables服務的當前狀態。
      但是即使服務運行了,防火牆也不一定起作用,你還得看防火牆規則的設置 iptables -L
      在此說一下關於啟動和關閉防火牆的命令:
      1) 重啟后生效
      開啟: chkconfig iptables on
      關閉: chkconfig iptables off
      2) 即時生效,重啟后失效
     開啟: service iptables start
     關閉: service iptables stop

設置防火牆 iptables 如何 禁止某個IP訪問

方法一:

1.vi /etc/sysconfig/iptables里:RH-Firewall-1-INPUT – [0:0]下面添加一行

下面是只允許某個IP訪問xx端口

  1. -A INPUT -s 192.168.5.244 -j DROP
2.重啟生效

#service iptables restart

方法二:

1.先備份iptables

# cp /etc/sysconfig/iptables /var/tmp

添加拒絕IP

# iptables -I INPUT -s 118.109.231.217 -j DROP

以上是臨時設置。

2.然后保存iptables

# service iptables save

3.重啟防火牆

#service iptables restart

—————-下面是參考————————————

1. 查看本機關於IPTABLES的設置情況
# iptables -L -n

2. 清除原有規則
# iptables -F 清除預設表filter中的所有規則鏈的規則
# iptables -X 清除預設表filter中使用者自定鏈中的規則

3. 保存設置規則(因配置隨系統重啟而失效)
# /etc/rc.d/init.d/iptables save
保存規則到/etc/sysconfig/iptables文件中, 也可手工編輯該文件.

4. 設定預設規則
# iptables -p INPUT DROP
# iptables -p OUTPUT DROP
# iptables -p FORWARD DROP
上面的規則是不允許任何包通過.

5. 添加規則
# iptables -A INPUT -p tcp –dport 22 -j ACCEPT
# iptables -A OUTPUT -p tcp –sport 22 -j ACCEPT
開啟22端口, 允許SSH登錄, 如開啟80端口:
# iptables -A INPUT -p tcp –dport 80 -j ACCEPT
# iptables -A OUTPUT -p tcp –sport 80 -j ACCEPT

6. 禁止某個IP訪問
# iptables -I INPUT -s x.x.x.x -j DROP

也可進行更細致的設置, 如只允許192.168.1.14的機器進行SSH連接:
# iptables -A INPUT -p tcp –dport 22 -s 192.168.1.14 -j ACCEPT
如果要允許或限制一段IP地址可用192.168.1.0/24 表示192.168.1.1-255端的所有IP.

防止同步包洪水(Sync Flood)
# iptables -A FORWARD -p tcp –syn -m limit –limit 1/s -j ACCEPT

防止各種端口掃描
# iptables -A FORWARD -p tcp –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/s -j ACCEPT

Ping 洪水攻擊(Ping of Death)
# iptables -A FORWARD -p icmp –icmp-type echo-request -m limit –limit 1/s -j ACCEPT


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM