激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統 - Ubuntu - 在Ubuntu Server是配置iptables防火墻

在Ubuntu Server是配置iptables防火墻

2019-11-25 18:59Ubuntu教程網 Ubuntu

iptables 是一個安裝在Ubuntu Server上的默認防火墻。在正常的ubuntu安裝過程中,iptables是被安裝上了的,但是它默認允許所有的流量(不管防火墻是否是無效的)

關于iptables有價值的信息很多,但是大多都描述的很復雜。如果你想做些基本的配置,下面的 How To 很適合你。 
◆ 基本命令 
鍵入: 

# iptables -L 

列出您當前iptables中在規則。如果您是剛剛建立您的服務器,那么可能此時還沒有任何規則,而且您應該看到如下: 

Chain INPUT (policy ACCEPT) 
target prot opt source destination 

Chain FORWARD (policy ACCEPT) 
target prot opt source destination 

Chain OUTPUT (policy ACCEPT) 
target prot opt source destination 

◆ 允許建立會話 

我們可以允許建立會話來接受流量: 

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

◆ 在指定端口上允許入站流量 

阻斷所有流量您也可以啟動系統,但是您可能正在通過SSH工作,所有在您阻斷其他流量前有必要允許SSH流量。 

為了在22端口號(默認的SSH端口)上的允許流量入站,您可以告訴iptables允許您的網卡接受所有的目的端口為22的TCP流量。 

# iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT 

特別的,這將向表中追加(-A)INPUT規則,允許目的端口號為SSH的所有流量進入接口(-i) eth0,以便iptables完成跳轉(-j)或動作:ACCEPT 

讓我們核對下這些規則:(這里僅顯示了少數行,您應該看到更多) 

# iptables -L 
Chain INPUT (policy ACCEPT) 
target prot opt source destination 
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED 
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh 

現在,讓我們允許所有的web流量 

# iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT 

檢查我們現有的規則 

# iptables -L 
Chain INPUT (policy ACCEPT) 
target prot opt source destination 
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED 
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh 
ACCEPT tcp -- anywhere anywhere tcp dpt:www 

我們已經指定SSH和web端口為允許通過的TCP流量,但是因為我們還沒阻斷任何流量,所以到目前為止所有的流量仍然可以進入。 

◆ 阻斷流量 

一旦一條規則對一個包進行了匹配,其他規則不再對這個包有效。因為我們的規則首先允許SSH和WEB流量,所以只要我們阻斷所有流量的規則緊跟其後,我們依然能接受我們感興趣的流量。我們要做的僅僅是把阻斷所有流量的規則放在最後,所以我們需要再次用到它。 

# iptables -A INPUT -j DROP 
# iptables -L 
Chain INPUT (policy ACCEPT) 
target prot opt source destination 
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED 
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh 
ACCEPT tcp -- anywhere anywhere tcp dpt:www 
DROP all -- anywhere anywhere 

因為我們剛才沒有指定一個接口或一個協議,所以除了web和ssh流量外其他任何流量都會被阻斷。 

◆ 編輯 iptables 

到目前為止我們設置過程中唯一的問題是回環端口(loopbakc)也被阻斷了。我們本可以通過指定 -i eth0 來僅僅丟棄eth0上的數據包,但我們也可以為回環端口(loopback)添加一條規則。如果我們追加這條規則,這將太晚了----因為所有的流量已經 被丟棄。我們必須插入這條跪著到第4行。 

# iptables -I INPUT 4 -i lo -j ACCEPT 
# iptables -L 
Chain INPUT (policy ACCEPT) 
target prot opt source destination 
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED 
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh 
ACCEPT tcp -- anywhere anywhere tcp dpt:www 
ACCEPT all -- anywhere anywhere 
DROP all -- anywhere anywhere 

最後2行看起來幾乎一樣,因此我們可以讓iptables列的更詳細些。 

# iptables -L -v 

◆ 日志記錄 

在上面的例子中,所有的流量都不會被記錄。如果您愿意在syslog中記錄被丟棄的包, 下面將是最快捷的方式: 

# iptables -I INPUT 5 -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7 

看 提示 段獲得更多關于logging的ideas. 

◆ 保存 iptables 

如果您現在要重新啟動機器的話,您的iptables配置將會消失。為了不用每次重新啟動時敲入這些命令,您可以保存你的配置,讓它在系統啟動時自動啟動。你可以通過iptables-save 和iptables-restore命令來保存配置。 


◆ 配置啟動時自動加載規則 

保存您的防火墻股則到一個文件 

# iptables-save > /etc/iptables.up.rules 

接著修改 /etc/network/interfaces 腳本自動應用這些規則(末行是添加的) 

auto eth0 
iface eth0 inet dhcp 
pre-up iptables-restore < /etc/iptables.up.rules 

你也可以準備一組規則冰并自動應用它 

auto eth0 
iface eth0 inet dhcp 
pre-up iptables-restore < /etc/iptables.up.rules 
post-down iptables-restore < /etc/iptables.down.rules 

◆ 提示 
◆ 如果你要在一個規則基礎上手動編輯iptables 

下面的步驟復習了怎樣建立你的防火墻規則,并假定它們相對固定(而且對于大多數人來說它們也應該是)。但是如果你要做許多研究工作,你也許想要你的 iptables在你每次重啟時保存一次。你可以在 /etc/network/interfaces 里添加像下面的一行: 

pre-up iptables-restore < /etc/iptables.up.rules 
post-down iptables-save > /etc/iptables.up.rules 

"post-down iptables-save > /etc/iptables.up.rules" 此行將保存規則用于下次啟動時使用。 
◆ 用iptables-save/restore來測試規則 

如果你超出了這個指南來編輯iptables,你可能想利用iptables-save和iptables-restore來編輯和測試你的規則。你可以通過使用你喜愛的文本編輯器(此處為gedit)來打開這些規則文件來完成編輯。 

# iptables-save > /etc/iptables.test.rules 
# gedit /etc/iptables.test.rules 

你會得到一個如下類似的文件(下面是緊接上的例子文件): 

# Generated by iptables-save v1.3.1 on Sun Apr 23 06:19:53 2006 
*filter 
:INPUT ACCEPT [368:102354] 
:FORWARD ACCEPT [0:0] 
:OUTPUT ACCEPT [92952:20764374] 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT 
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7 
-A INPUT -j DROP 
COMMIT 
# Completed on Sun Apr 23 06:19:53 2006 

注意到這些都是減去iptables命令的iptables語句。隨意編輯這些命令、完成後保存它們。然後簡單的測試下: 

# iptables-restore < /etc/iptables.test.rules 

測試完畢後,如果你還沒添加iptables-save命令 到 /etc/network/interfaces 里面,記得不要丟失了你的更改: 

# iptables-save > /etc/iptables.up.rules 

◆ 更詳細的日志 
為了在你的syslog中獲得更多細節,你可能想創建一個額外的鏈。下面是個很簡短的例子---我的 /etc/iptables.up.rules ,它將展示我是如何設置iptables記錄到syslog中的: 

# Generated by iptables-save v1.3.1 on Sun Apr 23 05:32:09 2006 
*filter 
:INPUT ACCEPT [273:55355] 
:FORWARD ACCEPT [0:0] 
:LOGNDROP - [0:0] 
:OUTPUT ACCEPT [92376:20668252] 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT 
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -j LOGNDROP 
-A LOGNDROP -p tcp -m limit --limit 5/min -j LOG --log-prefix "Denied TCP: " --log-level 7 
-A LOGNDROP -p udp -m limit --limit 5/min -j LOG --log-prefix "Denied UDP: " --log-level 7 
-A LOGNDROP -p icmp -m limit --limit 5/min -j LOG --log-prefix "Denied ICMP: " --log-level 7 
-A LOGNDROP -j DROP 
COMMIT 
# Completed on Sun Apr 23 05:32:09 2006 

請注意 一個名為 LOGNDROP的鏈在文件頂部。而且,INPUT鏈底部標準的DROP被替換成了LOGNDROP,同時添加了協議描述so it makes sense looking at the log。最後我們在LOGNDROP鏈尾部丟棄了這些流量。下面的行告訴我們發生了什么: 

* --limit 設置記錄相同規則到syslog中的次數 
* --log-prefix "Denied..." 添加一個前綴使得在syslog中查找更easy 
* --log-level 7 設置syslog的消息級別 (see man syslog for more detail, but you can probably leave this) 

◆ 禁用防火墻 

如果您要臨時禁用防火墻,您可以通過下面的命令清空所偶的規則: 

# iptables -F 

◆ 輕松配置通過 GUI 

新手可以利用 Firetarter(一個gui工具)---倉庫中的可用軟件(新立德或apt-get 獲得)來配置她或他的iptables規則,而需要命令行知識。請查看指南,盡管...... 配置很簡單,但是對于高級用戶來說可能遠遠不能滿足。然而它對于大多數的家庭用戶來說是足夠的...... 。(我)建議您使用firestarter在策略表中將出站配置為 “限制”,而將您需要的連接類型(如用于http的80、https的443,msn chat的1683等等)加入白名單。您也可以通過它查看進出您計算機的活動連接...... 。防火墻會一直保持下去一旦通過向導配置完畢。撥號用戶必須在向導中指定它在撥號時自動啟動。 

firestarter主頁: http://www.fs-security.com/ (再次, 倉庫源中可用, 不需要編譯) 指南: http://www.fs-security.com/docs/tutorial.php 

個人筆記:不幸運的是,它沒有阻斷(或詢問用戶)特定應用/程序的選項......。因此,我的理解是一旦啟用了80端口(例如,用于訪問網頁),那么任何程序都可以通過80端口連接任何服務器、做任何它想做的事......

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 久久精精| 狠狠干精品视频 | 在线成人免费观看www | 亚州欧美视频 | 亚洲 综合 欧美 动漫 丝袜图 | 亚洲影院在线播放 | 制服丝袜日日夜夜 | 精品成人av一区二区三区 | 亚洲网站在线 | 久草在线视频网 | 国产精品久久久乱弄 | 一色桃子av大全在线播放 | 国产三级三级三级三级 | 久久精品色| 久久精品国产亚洲一区二区 | h视频免费在线观看 | 国产99久久精品一区二区 | 久久久久成人免费 | 韩国精品视频在线观看 | 欧美高清视频一区 | 免费h片 | 中文字幕一二三区芒果 | 欧美色视频免费 | 久久精品com| 在线视频1区| 久久国产免费视频 | 一级做a爱片久久毛片a高清 | 日日草夜夜操 | 成人午夜淫片a | 久久婷婷一区二区三区 | 欧美一级电影网 | 欧美成人性生活 | 国产一区二区不卡 | 免费视频aaa| 99久久精品免费看国产四区 | 久久久电影电视剧免费看 | 国产精品久久久免费观看 | 美女福利视频国产 | 国产精品一区视频 | 精品伊人 | 成人福利在线免费观看 |