當前位置:首頁 » 文件傳輸 » iptables屏蔽某埠訪問
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

iptables屏蔽某埠訪問

發布時間: 2022-12-08 09:48:35

① linux 用iptables 如何禁止本機某一個網卡去訪問別人的80服務

iptables -t filter -A OUTPUT -s網卡IP -d0.0.0.0/0 -p tcp --dport 80 -j DROP

② LInux iptables 屏蔽設置

1.修改SSH配置文件:/etc/ssh/sshd_config #找到Port 22,這里是標識默認使用22埠,修改為:

Port 22

Port 1234

/etc/init.d/sshd restart

#這樣SSH埠將同時工作在22、1234上

查看防火牆規則

1、iptables -nvL

2、more /etc/sysconfig/iptables

2.添加防火牆規則

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

iptables -A INPUT -p tcp --dport 1234 -j ACCEPT

/etc/rc.d/init.d/iptables save

/etc/rc.d/init.d/iptables restart

然後使用SSH工具 測試 你所設置的埠是否能正常使用

如果能正常使用返回到第一步,刪除原來的22埠,以及修改防火牆配置文件

之所以先設置成兩個埠,測試成功後再關閉一個埠,是為了方式在修改的過程中,萬一出現掉線、斷網、誤操作等未知情況時候,還能通過另外一個埠連接上去調試以免發生連接不上的狀況。

開啟自動啟動:chkconfig iptables on

開啟不自動啟動:chkconfig iptables off

附錄:

設定預設規則,INPUT鏈默認拒絕,OUTPUT鏈默認接受,FORWARD鏈默認拒絕

iptables -F #清除預設表filter中的所有規則鏈的規則

iptables -X #清除預設表filter中使用者自定鏈中的規則

iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

iptables -P FORWARD DROP

iptables -L -n --line #按行數顯示防火牆規則

iptables -D INPUT 1 #刪除INPUT表第一條

iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT #來源、目的為127.0.0.1都接受,這條放最後就可以了

1、安裝iptables防火牆

如果沒有安裝iptables需要先安裝,CentOS執行:

yum install iptables

Debian/Ubuntu執行:

apt-get install iptables

2、清除已有iptables規則

iptables -F

iptables -X

iptables -Z

3、開放指定的埠

#允許本地回環介面(即運行本機訪問本機)

iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

# 允許已建立的或相關連的通行

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#允許所有本機向外的訪問

iptables -A OUTPUT -j ACCEPT

# 允許訪問22埠

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

#允許訪問80埠

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

#允許FTP服務的21和20埠

iptables -A INPUT -p tcp --dport 21 -j ACCEPT

iptables -A INPUT -p tcp --dport 20 -j ACCEPT

#如果有其他埠的話,規則也類似,稍微修改上述語句就行

#禁止其他未允許的規則訪問

iptables -A INPUT -j REJECT (注意:如果22埠未加入允許規則,SSH鏈接會直接斷開。)

iptables -A FORWARD -j REJECT

4、屏蔽IP

#如果只是想屏蔽IP的話「3、開放指定的埠」可以直接跳過。

#屏蔽單個IP的命令是

iptables -I INPUT -s 123.45.6.7 -j DROP

#封整個段即從123.0.0.1到123.255.255.254的命令

iptables -I INPUT -s 123.0.0.0/8 -j DROP

#封IP段即從123.45.0.1到123.45.255.254的命令

iptables -I INPUT -s 124.45.0.0/16 -j DROP

#封IP段即從123.45.6.1到123.45.6.254的命令是

iptables -I INPUT -s 123.45.6.0/24 -j DROP

5、查看已添加的iptables規則

iptables -L -n

v:顯示詳細信息,包括每條規則的匹配包數量和匹配位元組數

x:在 v 的基礎上,禁止自動單位換算(K、M) vps偵探

n:只顯示IP地址和埠號,不將ip解析為域名

6、刪除已添加的iptables規則

將所有iptables以序號標記顯示,執行:

iptables -L -n --line-numbers

比如要刪除INPUT里序號為8的規則,執行:

iptables -D INPUT 8

7、iptables的開機啟動及規則保存

CentOS上可能會存在安裝好iptables後,iptables並不開機自啟動,可以執行一下:

chkconfig --level 345 iptables on

開啟自動啟動:chkconfig iptables on

開啟不自動啟動:chkconfig iptables off

將其加入開機啟動。

CentOS上可以執行:

service iptables save

/etc/rc.d/init.d/iptables save

/etc/rc.d/init.d/iptables restart

保存規則。

另外更需要注意的是Debian/Ubuntu上iptables是不會保存規則的。

需要按如下步驟進行,讓網卡關閉是保存iptables規則,啟動時載入iptables規則:

創建/etc/network/if-post-down.d/iptables 文件,添加如下內容:

#!/bin/bash

iptables-save > /etc/iptables.rules

執行:chmod +x /etc/network/if-post-down.d/iptables 添加執行許可權。

創建/etc/network/if-pre-up.d/iptables 文件,添加如下內容:

#!/bin/bash

iptables-restore < /etc/iptables.rules

執行:chmod +x /etc/network/if-pre-up.d/iptables 添加執行許可權。

關於更多的iptables的使用方法可以執行:iptables --help或網上搜索一下iptables參數的說明。

註:每次服務在停止之前會自動將現有的規則保存

在 /etc/sysconfig/iptables 這個文件中去.

③ 利用iptables ,如何關閉3006埠的服務,或限制外部IP訪問3006埠,ssh命令是什麼呢

限制訪問本機的3006埠的服務的iptables規則:
iptables -A INPUT -p tcp --dport 3006 -j DROP
iptables -A INPUT -p udp --dport 3006 -j DROP

ssh服務對應的22埠
通過命令
ps -aux | grep ssh
可以看到提供ssh服務的進程。
如果你想使用ssh訪問192.168.1.1伺服器,就用命令
ssh 192.168.1.1就可以了,然後輸入用戶名和密碼,就可以登錄到192.168.1.1的shell命令行了。

④ linux的iptables如何禁止不同網段訪問埠

禁止同網段的單個IP你知道怎麼操作的話,禁止不同網段也很簡單了,只需要把單個IP換成以子網掩碼格式表示的網段地址即可。
比如你給出的網段地址172.16.101.0這個網段,你只禁用172.16.101.50-172.16.101.254這個地址段,前面的一段不禁用,那麼就需要計算對應的子網掩碼值,前面不禁用的共49個地址,2的5次方是32,2的6次方是64。那麼掩碼值就是29或者30,對應不到49個ip地址。因此你可以這樣配置:
禁用172.168.101.0/29 地址段,放行了172.168.101.1-172.168.101.31,還需要單獨放行172.168.101.32-172.168.101.49,你就需要單獨每個ip來進行放行了。後面的整段IP禁用就比較簡單了,直接禁用
172.168.102.0/24
172.168.103.0/24
我這里只是提供一個思路,如果你覺得比較麻煩,那麼還可以自己計算172.168.101.0-172.168.202.0這個網段的子網掩碼,我計算了以下,大概是
172.168.101.0/23,但是中間還有若干個網段需要單獨設置,具體的操作就要你自己來做了。

⑤ iptables實現禁用埠

iptables實現禁用埠!
這里用iptables屏蔽埠25,防止被利用發垃圾郵件導致VPS被封

用iptables屏蔽全部IP連接25埠:

上面這一條命令就夠了

=======

如果需要特殊情況請看下面的命令

只允許特定ip連接25埠:

重新禁止此ip連接25埠,刪除上述許可記錄就可以了:

需要禁止特定ip連接25埠:

⑥ Linux下如何用iptables限制某段IP訪問伺服器

比如禁止192.168.0.x網段訪問伺服器iptables -A input -p tcp -s 192.168.0.0/24 -j DROP如果是允許訪問iptables -A input -p tcp -s 192.168.0.0/24 -j ACCEPT如果是禁止訪問伺服器某一埠號iptables -A input -p tcp -s 192.168.0.0/24 --dport (埠號) -DROP 差不多就是這樣了,如果還要學習的話就要看書了。發給你個Iptables命令基礎參考資料http://wenku..com/view/4c5eb5d528ea81c758f578df.html

⑦ 求5條iptables命令關閉所有埠(除80埠外),封鎖整個linux

1、關閉所有的 INPUT FORWARD OUTPUT 只對某些埠開放。
下面是命令實現:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
再用命令 iptables -L -n 查看 是否設置好, 好看到全部 DROP 了
這樣的設置好了,我們只是臨時的, 重啟伺服器還是會恢復原來沒有設置的狀態
還要使用 service iptables save 進行保存
看到信息 firewall rules 防火牆的規則 其實就是保存在 /etc/sysconfig/iptables
可以打開文件查看 vi /etc/sysconfig/iptables
2、下面我只打開22埠,看我是如何操作的,就是下面2個語句
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
再查看下 iptables -L -n 是否添加上去, 看到添加了
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:22
現在Linux伺服器只打開了22埠,用putty.exe測試一下是否可以鏈接上去。
可以鏈接上去了,說明沒有問題。
最後別忘記了保存 對防火牆的設置
通過命令:service iptables save 進行保存
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
針對這2條命令進行一些講解吧
-A 參數就看成是添加一條 INPUT 的規則
-p 指定是什麼協議 我們常用的tcp 協議,當然也有udp 例如53埠的DNS
到時我們要配置DNS用到53埠 大家就會發現使用udp協議的
而 --dport 就是目標埠 當數據從外部進入伺服器為目標埠
反之 數據從伺服器出去 則為數據源埠 使用 --sport
-j 就是指定是 ACCEPT 接收 或者 DROP 不接收

⑧ ubuntu 使用iptables 如何禁止任何和埠5353的訪問

iptables -A INPUT -S port:5353 deny 就是禁止任意IP的源口為5353的包入站
或者

iptables -A OUTPUT -d port:5353 deny 禁止任意IP的目的口為5353的包出站
可以設置行為禁止做丟棄包,這是對你本機,轉發的要另寫

⑨ linux下如何屏蔽埠

埠是linux下應用軟體因需要而開啟的socket套接字,具有唯一性。埠可以查看、啟動關閉、設置防火牆規則等。

1、埠查看

netstat -tln //表示已數字形式查看,正在監聽的埠

netstat -ap //查看所有應用佔用埠情況

2、啟動停止

埠自己是不會停止和啟動的,需要停止和啟動的是埠對應的應用。

可以先找到埠,再對應PID,命令如下:

netstat -anp|grep 57069 //這個是要找的埠號

lsof -i:57069 //查找器PID信息

第三部殺死進程:圖例裡面沒有在這里寫上,kill -9 PID

3、屏蔽

linux下一般使用防火牆的filter規則 定義允許或者不允許進行屏蔽。對於filter一般只能做在3個鏈上:INPUT ,FORWARD ,OUTPUT。

例如設置在輸入端屏蔽53埠:

iptables-AINPUT1-d172.16.100.1-pudp--dport53-jREJECT

-A是增加規則,-d:表示匹配目標地址,-pudp表示UPD協議,--dPort 是埠53

這里表示在輸入端目的地址是172.16.100.1的53埠被屏蔽

⑩ linux運維之iptables的一些操作(參考大神的)

1.安裝iptables管理命令

2.載入防火牆的內核模塊

3.查看已載入的模塊

4.啟動防火牆

首先停止firewalld

開啟iptables

1.查看防火牆規則

2.清除防火牆規則

3.添加防火牆規則

4.網路連接狀態

5.刪除某個規則

1.禁止某個埠訪問

2.規則解釋:

3.禁止除跳板機以外的IP訪問

4.匹配埠范圍

 5. 匹配ICMP類型

6.一些操作

1、封掉10.0.0.7

2、讓10.0.0.7和SSH客戶端(10.0.0.1)伺服器可以Ping,其它的不能Ping

3、封掉3306埠

1.從上往下依次匹配

2.一但匹配上,就不在往下匹配了

3.默認規則,默認的情況,默認規則是放行所有

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

iptables A INPUT -p tcp -m state --dport 22 -j DROP

禁止一個數據包:

tcp協議

訪問的埠是22

禁止源地址是10.0.0.7的主機訪問22埠

禁止源地址是10.0.0.7的主機訪問任何埠

禁止源地址是10.0.0.8的主機訪問80埠

禁止除了10.0.0.7以外的地址訪問80埠

2條規則沖突,會以誰先誰為准

禁止10.0.0.7訪問22和80埠

禁止10.0.0.7訪問22到100之間的所有埠

禁止所有主機ping

放行10.0.0.7可以ping

只允許10.0.0.7可以ping

等同於上一條,優化版,只要不是10.0.0.7就不允許ping

優先順序:

匹配頻次最高的條件放前面