Linux學習-1025(網路、防火牆)
10.11 Linux網路相關
10.12 firewalld和netfilter
10.13 netfilter5表5鏈介
10.14 iptables語法
一、Linux網路相關
- 檢視網絡卡ip命令:ifconfig
ifconfig命令在centos6中是預設安裝的,centos7需要進行安裝:
yum install -y net-tools
網絡卡如果down掉,ifconfig是不顯示的,如果要檢視加個-a選項
- 關閉/啟動網絡卡
有的時候修改了網絡卡引數需要關閉重啟
ifdown 網絡卡名 :關閉網絡卡
ifup 網絡卡名: 啟動網絡卡
如果是遠端操作,網絡卡關閉就無法連線操作了。這種情況可以使用以下方法:
ifdown 網絡卡名 && ifup 網絡卡名
- 設定虛擬網絡卡
cp /etc/sysconfig/network-scripts/原網絡卡 虛擬網絡卡
把現有的網絡卡複製一份,重新命名,並修改name, device, ip這三個引數。
ifdown 網絡卡名 && ifup 網絡卡名 使用這種方法重啟即可。
- 檢視網絡卡連線狀態
mii-tool 網絡卡名
- 修改hostname
hostnamectl set-hostname 新主機名
檢視hostname名命令:hostname
- DNS配置檔案
/etc/resolv.conf 如果臨時修改DNS可以修改這個檔案,但是重啟後會被網絡卡配置檔案的內容所覆蓋
- hosts檔案
hosts檔案windows和linux都有,用來指定域名解析ip。只能做本機使用
二、firewalld和netfilter
1、SELinux
臨時關閉SELinux
setenforce 0
永久關閉
編輯配置/etc/selinux/config,SELINUX=enforcing改為disabled ,儲存重啟系統
檢視SELinux狀態
getenforce
2、netfilter/firewalld
netfileter是centos6中使用的防火牆,centos7把netfileter升級為了firewalld。
由於目前使用時centos7,想要使用netfileter可以把firewalld先關閉
- 關閉firewalld
systemctl disable firewalld //禁止啟動
systemctl stop firewalld //停止防火牆服務
- 開啟netfilter
先安裝iptables工具包:
yum install -y iptables-services
//啟動iptables服務
systemctl enable iptables
systemctl start iptables
- 開啟後檢視iptable規則
iptables -nvL
三、netfilter5表5鏈介
netfilter五表:
filter:包過濾,用於防火牆規則。有INPUT、FORWARD、OUTPUT三個鏈
nat:地址轉換,用於閘道器路由器。有PREROUTING、OUTPUT、POSTROUTING三個鏈
mangle:用於給資料包打標記,然後根據標記去操作那些表。(不常用)
不常用的表:raw、security
netfilter五鏈:
PREROUTING:資料包進入路由表之前
INPUT:通過路由表後目的地為本機
FORWARD:通過路由表後,目的地不為本機
OUTPUT:由本機產生,向外發出
POSTROUTING:傳送到網絡卡介面之前
參考文章:
http://www.cnblogs.com/metoy/p/4320813.html
四、iptables語法
- 檢視iptables規則:
iptables -nvL
- 清除iptables規則:
iptables -F
清空後未儲存規則配置檔案(/etc/sysconfig/iptables),服務重啟或系統重啟後,防火牆服務會重新載入規則配置檔案中的原有規則。
- 儲存規則
service iptables save
- 重啟
service iptables restart
- 檢視nat表
iptables -t nat -nvL
- 計數器清零
iptables -Z
- 新增iptables規則
iptables -A INPUT -s 192.168.1.19 -p tcp --sport 8888 -d 192.168.1.12 --dport 80 -i ens33 -j DROP
解釋: 增加一條iptables規則:input鏈,源IP:192.168.1.19,TCP協議,源埠:8888,目的IP:192.168.1.12,目的埠:80,執行:DROP(丟掉)。
和DROP類似的還有REJECT,不同的是:接受資料包後REJECT會進行檢視,然後丟掉,DROP則是直接丟掉。一般DROP比較常用。
- 刪除iptables規則
和新增規則類似,把-A改成-D
iptables -D INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -i ens33 -j DROP
也可以根據查詢規則號進行刪除:
查詢
iptables -nvL --line-number
刪除
iptables -D INPUT 編號
- 插入一條規則
iptables -I INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT
插入一條來源網段為 192.168.1.0/24,網絡卡為eth0,執行放行操作
- 修改預設規則
一般不要修改預設規則,有可能導致遠端終端無法連線
修改:
iptables -P INPUT DROP
恢復:
ptables -P OUTPUT ACCEPT