在伺服器上架了一個tomcat,指定好埠號,我就開始訪問,未果! 公司對伺服器(RedHat)埠限制,可謂是滴水不漏! 用iptables 檢視防火牆設定: Shell程式碼 iptables -nL 我需要一個8880埠,看來是不能訪問了! 直接修改配置檔案: Shell程式碼 vi /etc/sysconfig/iptables 照貓畫虎,增加紅框中的內容! 這樣做還不保險,詭異狀況下這個埠還是會被遮蔽! 強制儲存: Shell程式碼 service iptables save 然後,重啟服務: Shell程式碼 service iptables restart 再看看防火牆設定: Shell程式碼 iptables -nL OK,現在就可以通過ip+埠在區域網內訪問了! 來點實際的,限制外網非80埠的一切訪問 使用命令 Shell程式碼 #接受80埠的tcp訪問,且指定網路卡為eth1 iptables -A INPUT -p tcp -m tcp --dport 80 -i eth1 -j ACCEPT #拒絕非內網地址的一切訪問,指定網路卡為eth1 iptables -A INPUT -s ! 10.0.0.0/255.0.0.0 -i eth1 -j DROP 使用iptables-save強制生效,但我無論如何使用該命令,重啟ipatbles服務後,都是根據配置檔案走的。 來個直接的,編輯iptables Shell程式碼 vim /etc/sysconfig/iptables 追加以下內容: Shell程式碼 #接受80埠的tcp訪問,且指定網路卡為eth1 -A INPUT -p tcp -m tcp --dport 80 -i eth1 -j ACCEPT #拒絕非內網地址的一切訪問,指定網路卡為eth1 -A INPUT -s ! 10.0.0.0/255.0.0.0 -i eth1 -j DROP 重啟iptables: Shell程式碼 service iptables restart 檢視iptables狀態: Shell程式碼 iptables -nL 引用 Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- 127.0.0.1 0.0.0.0/0 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 DROP all -- !10.0.0.0/8 0.0.0.0/0 一定要注意順序,一定是先做ACCEPT的配置,最後做DROP的配置!!! 否則,配置錯誤了,連SSH都沒得用! 最後,最關鍵的一步,使得iptable配置隨系統啟動: Shell程式碼 service iptables save 引用 # service iptables save 將當前規則儲存到 /etc/sysconfig/iptables: [確定] 據說 Shell程式碼 chkconfig iptables on 也可以達到自動啟動作用,即啟動iptables就會自動讀取配置檔案(/etc/sysconfig/iptables) 。 引用 Iptables的命令選項 iptables [-t tables] command option parameter target -A 在鏈尾新增一條規則 -C 將規則新增到使用者定義鏈之前對其進行檢查 -D 從鏈中刪除一條規則 -E 重新命名使用者定義的鏈,不改變鏈本身 -F 清空鏈,刪除鏈上的所有規則 -I 在鏈中插入一條規則 -L 列出某個鏈上的規則,如iptables –L INPUT 列出INPUT鏈的規則 -N 建立一個新鏈 -P 定義某個鏈的預設策略 -R 替換鏈上的某條規則 -X 刪除某個使用者相關的鏈 -Z 將所有表的所有 檢視圖片附件