2017年12月04日 17:10:26 hahaha_yan 閱讀數:1357ssh
1、圖形化管理火牆tcp
系統提供了圖像化的配置工具 firewall-config 、 system-config-firewall, 提供命令行客戶端 firewall-cmd, 用於配置 firewalld 永久性或非永久性運行時間的改變。工具
一、下載圖形管理命令測試
yum install firewall-configspa
二、使用命令調出圖形.net
firewall-config命令行
三、在圖形處進行選擇,另外一方進行監控firewalld的變化3d
watch -n 1 'firewall-cmd --list-all'server
圖形化的界面xml
若爲runtime模式僅選中便可,不用重啓火牆,但若選擇permanent,要重啓火牆才能使策略生效。
2、firewalld的配置存儲
/etc/firewalld
進行全部的命令,均是改變此中文件/etc/firewalld/zones中的文件的內容,也可在文件中直接改動,改完後須要進行重啓服務。
/usr/lib/firewalld中的各類xml文件中
3、firewalld的基本使用命令
啓用命令
systemctl start firewalld ##開啓防火牆
systemctl enable firewalld ##開機自動開啓防火牆
systemctl stop firewalld ##關閉防火牆
systemctl disable firewalld ##開機不自動開啓防火牆
配置火牆命令
firewall-cmd --state ##火牆狀態,開啓或者中止
firewall-cmd --get-active-zones ##正在活躍的火牆域
firewall-cmd --get-default-zone ##火牆中默認的域
firewall-cmd --get-zones ##火牆中全部存在的域
firewall-cmd --zone=public --list-all ##查看public域中的全部信息
firewall-cmd --get-services ##火牆中全部能夠提供的服務
此中全部列出的服務的名字都可以進行自行改變,在/usr/lib/firewalld/service中有全部的服務列表,將其中的名字進行改變,但仍然以xml進行結尾,便可進行改變名字,但一般不這麼作。
firewall-cmd --list-all-zones ##列出火牆中的全部域及全部信息
firewall-cmd --set-default-zone=dmz ##將dmz域設置爲默認的域
[root@localhost zones]# firewall-cmd --add-service=http ##給默認域中添加服務http
[root@localhost zones]# firewall-cmd --remove-service=http ##刪除默認域中的服務http
測試:
[root@localhost zones]# firewall-cmd --add-port=8080/tcp ##給默認域中添加tcp端口8080
[root@localhost zones]# firewall-cmd --remove-port=8080/tcp ##刪除默認域中的8080端口
測試:將httpd服務的端口改成8080,並在火牆中加入該端口
此時,火牆的默認域爲public,且沒有添加http服務
[root@localhost zones]# firewall-cmd --add-source=172.25.254.73 --zone=trusted
[root@localhost zones]# firewall-cmd --remove-source=172.25.254.73 --zone=trusted
##此ip在訪問時能夠進行火牆中的額任何服務,走的是trusted這個域
測試:
此時server虛擬機有兩塊網卡,能夠進行設置,將eth0走public域,eth1走bmz域
此間有一個問題,必須將兩塊網卡的ip設置爲在不一樣的網段內,通過實驗,若將兩塊網卡放在同一個網段內的話,會出現兩塊網卡都走的是默認的域,沒有實驗效果。
[root@localhost zones]# firewall-cmd --change-interface=eth1 --zone=dmz
測試:
172.25.71.1 走的是dmz域
172.25.254.173 走的是public域,我在其中加入了http服務
經過 firewall-cmd 工具 , 能夠使用 --direct 選項在運行時間裏增長或者移除鏈。
[root@localhost zones]# firewall-cmd --direct --add-rule ipv4 filter INPUT 1 -s 172.25.254.73 -p tcp --dport 80 -j REJECT
表示在filter表中第一行加入 http服務(80端口)對於172.25.254.73不開放
測試:
語句成功後:
##使用--direct 語句使得172.25.254.73主機不能實現ftp服務的鏈接
[root@localhost zones]# firewall-cmd --direct --add-rule ipv4 filter INPUT 1 ! -s 172.25.254.73 -p tcp --dport 21 -j REJECT
測試:
172.25.254.73主機:
別的主機:
地址假裝:
將172.25.71.2主機使用sshd訪問172.25.254.73主機時訪問的是173主機
思想:
一、須要一個雙網卡的主機充當路由器,此路由器必須與172.25.71.2和172.25.254.73能夠進行通訊
二、172.25.71.2主機將能夠與他進行通訊的路由器的端口設置成網關
路由器:
[root@localhost zones]# firewall-cmd --add-masquerade
[root@localhost zones]# firewall-cmd --add-forward-port=port=22:proto=tcp:toport=22:toaddr=172.25.254.173
測試: