因公司項目的需求,須要對客戶端機器簡便使用防火牆的功能,因此可在頁面進行簡便設置防禦牆規則,固然,這個功能需求放到我手上我纔有機會學到。由於客戶端機器都是ubuntu的,因此固然用了ubuntu特有且簡便的防火牆設置規則,那就是ufw,文章以ubuntu16.04爲準,其它版本的用法應該也差不太多。本文着重介紹其經常使用的用法,至於其餘的用法那就要等各位小夥伴再自行研究了。ubuntu
UFW 全稱爲Uncomplicated Firewall,是Ubuntu 系統上默認的防火牆組件, 爲了輕量化配置iptables 而開發的一款工具。 UFW 提供一個很是友好的界面用於建立基於IPV4,IPV6的防火牆規則。安全
使用ufw的命令必須有管理員權限纔可運行,沒有的話就要sudo一下了,不過要注意安全,不能瞎搞哈。。。ssh
# ufw enable //開啓防火牆 # ufw disable //禁用防火牆 # ufw reset //重置防火牆,會把你全部已添加的規則所有刪除,而且禁用防火牆
可使用如下命令查看ufw防火牆的狀態tcp
# ufw status // 沒開啓是這個樣子的 Status: inactive //開啓後是這樣子的 Status: active ... // 若是你添加了防火牆規則下面這裏就會顯示
設置默認的防火牆規則,默認爲容許,就是說什麼玩意都容許你連進來。工具
# ufw default allow|deny //設置默認規則 allow : 容許 deny : 拒絕
協議規則就是有關於協議的一些防火牆規則。code
ufw [delete] [insert NUM] allow|deny [in|out] [PORT[/PROTOCOL] ] [comment COMMENT] delete : 刪除這個規則 insert : Num表明你要插入到防火牆規則的那個位置,規則是有序排列的。會根據須要來一個個檢查 allow|deny : 這條規則是容許的仍是禁用的 in|out: 這條規則對發送仍是接收數據生效 PORT: 端口號 protocol : 協議,例如TCP仍是UDP comment : 註釋 ...
添加一條容許ssh的規則(ssh的端口號是22,協議是TCP),而且插入到位置2orm
# ufw insert 2 allow in 22/tcp
禁用22端口連入教程
# ufw deny in 22
ip規則裏面能夠包含端口號和協議,反過來則不行。進程
ufw [delete] [insert NUM] allow|deny [in|out [on INTERFACE]] [proto PROTOCOL] [from ADDRESS [port PORT]] [to ADDRESS [port PORT]] [comment COMMENT] INTERFACE :網卡,就是針對哪一個網卡生效,可使用ifconfig或ip addr查看你的網卡 form ADDRESS : 源IP地址 to ADDRESS : 目標IP地址 PORT : 跟在源IP地址後面就是源IP地址的端口號,反之則是目標IP地址的端口號 其餘的都和協議規則的一致
添加容許192.168.0.2 的22端口tcp協議(ssh)的規則ip
# ufw allow proto tcp from 192.168.0.2 port 22
若你的系統上有幫他人進行轉發信息的進程,那麼你能夠容許來自某個源IP地址發送信息到某個目標地址,例:容許源IP地址192.168.0.2的8088端口 發送到 目標地址192.162.0.2的8080端口
# ufw allow from 192.168.0.2 port 80 to 192.168.0.2 port 8080
刪除規則分兩種,一種是根據規則的內容刪除,一種是根據序號刪除
剛纔添加規則的命令前面添加delete
參數,例:
# ufw allow 22/tcp //添加一條容許ssh的規則 # ufw delete allow 22/tcp //刪除ssh規則
根據序號刪除,怎麼知道規則的序號呢?使用ufw status numbered
# ufw status numbered //查 Status: active To Action From -- ------ ---- [ 1] 22 ALLOW IN Anywhere
我須要刪除第一條規則
# ufw delete 1 //這樣就是刪除第一條規則啦
# ufw enbale //開啓防火牆 # ufw alllow ssh // 添加ssh的規則,這是簡寫規則 # ufw default deny //設置默認爲禁用,可是咱們已經添加了ssh規則,就不擔憂。 後面這裏大家就能夠本身搞事情啦! ...
好了,以上講的都是比較基本的用法,想要深刻了解的話能夠自行到官網上看看,後面會出一章關於iptables的防火牆規則,ufw就是基於iptables上進行封裝的,iptables適用於全部Linux系統哦,不僅僅是隻有Ubuntu了。這篇文章到此結束,感謝各位小夥伴的閱讀,Thanks♪(・ω・)ノ