10月25日任務html
10.11 Linux網絡相關linux
10.12 firewalld和netfiltervim
10.13 netfilter5表5鏈介紹centos
10.14 iptables語法網絡
安裝:yum install -y net-toolsdom
[root@centos7 ~]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.65.130 netmask 255.255.255.0 broadcast 192.168.65.255 ... lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 ...
ifup/ifdown ens33ssh
# 這裏在命令行模式下要轉義:即\: [root@centos7 network-scripts]# cp ifcfg-ens33 ifcfg-ens33\:1
[root@centos7 network-scripts]# vim ifcfg-ens33:1 # 其中只要修改IPADDR、DEVICE和NAME三列便可 # 這裏要刪除UUID(惟一性),能夠將DNS,GATEWAY行也刪掉(可選)
[root@centos7 network-scripts]# ifdown ens33 && ifup ens33 成功斷開設備 'ens33'。 鏈接已成功激活(D-Bus 活動路徑:/org/freedesktop/NetworkManager/ActiveConnection/3)
[root@centos7 network-scripts]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.65.133 netmask 255.255.255.0 broadcast 192.168.65.255 ... ens33:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.65.143 netmask 255.255.255.0 broadcast 192.168.65.255 ether 00:0c:29:94:84:1f txqueuelen 1000 (Ethernet) lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 ...
在物理機測試ping可通,證實配置成功tcp
C:\Users\18367>ping 192.168.65.143 正在 Ping 192.168.65.143 具備 32 字節的數據: 來自 192.168.65.143 的回覆: 字節=32 時間<1ms TTL=64 來自 192.168.65.143 的回覆: 字節=32 時間<1ms TTL=64 來自 192.168.65.143 的回覆: 字節=32 時間<1ms TTL=64 來自 192.168.65.143 的回覆: 字節=32 時間<1ms TTL=64 192.168.65.143 的 Ping 統計信息: 數據包: 已發送 = 4,已接收 = 4,丟失 = 0 (0% 丟失), 往返行程的估計時間(以毫秒爲單位): 最短 = 0ms,最長 = 0ms,平均 = 0ms
mii-tool | ethtool測試
1. 可使用mii-tool命令查看 [root@centos7 network-scripts]# mii-tool ens33 ens33: negotiated 1000baseT-FD flow-control, link ok 2. 也可使用ethtool命令查看 [root@centos7 network-scripts]# ethtool ens33 | tail -n 1 Link detected: yes
下列命令只支持centos7.xcentos7
hostnamectl set-hostname HOST
上列的命令在當前終端下並不會當即生效,須要重啓!
在/etc/hostname文件中能夠查看系統主機的hostname。
主機host的配置文件爲/etc/hosts
,修改其內容只在本機生效!
若存在多個ip指向同一個域名,只有最後一行的ip生效!即後面設置的同域名的ip將覆蓋前面的ip!
此外同一個ip能夠指向多個域名,在hosts文件內能夠寫在一行內即
192.168.1.110 www.123.com www.qq.com www.baidu.com
修改hosts文件,指定2個ip指向同一個域名 [root@centos7 network-scripts]# vim /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.25 www.baidu.com 192.168.1.35 www.baidu.com ~
上述配置以後只有後一個ip192.168.1.35
生效;一樣的指向同一個域名的多個ip,只有最後一個ip生效
[root@centos7 network-scripts]# ping www.baidu.com PING www.a.shifen.com (192.168.1.35) 56(84) bytes of data. 64 bytes from 192.168.1.35 (192.168.1.35): icmp_seq=1 ttl=128 time=29.6 ms ....
/etc/resolv.conf
文件存放系統的DNS,該DNS由網卡的配置文件中的DNS列定義產生。
配置時必須關閉selinux,不然防火牆沒法正常運行
setenforce 0
SELINUX=disabled
getenforce
disable禁止開機啓動,stop關閉服務 [root@centos7 network-scripts]# systemctl disable firewalld Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [root@centos7 network-scripts]# systemctl stop firewalld
[root@centos7 network-scripts]# yum install -y iptables-services
[root@centos7 network-scripts]# systemctl enable iptables Created symlink from /etc/systemd/system/basic.target.wants/iptables.service to /usr/lib/systemd/system/iptables.service. [root@centos7 network-scripts]# systemctl start iptables
[root@centos7 network-scripts]# iptables -nvL Chain INPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 28 1848 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 ...
!centos6中只有4個表(沒有security);7.x版本有5個表(及其使用的鏈),以下:
相關的有5個鏈
數據通過本機 PREROUTING -> FORWARD -> POSTROUTING
數據不通過本機 PREROUTING -> INPUT -> OUTPUT -> POSTROUTING
工做中主要使用的是filter和nat表,後3個表使用很少
iptables詳解 http://www.cnblogs.com/metoy/p/4320813.html
iptables默認規則配置文件 /etc/sysconfig/iptables
iptables -nvL
iptables -F
service iptables save
存操做iptables -t nat
iptables -Z
[root@localhost network-scripts]# iptables -A INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP
# 在首行插入規則 [root@localhost network-scripts]# iptables -I INPUT -s 1.1.1.1 -j DROP # 在末行添加規則 [root@localhost network-scripts]# iptables -A INPUT -s 1.1.1.1 -j DROP # 刪除某條規則(對應添加時的規則) [root@localhost network-scripts]# iptables -D INPUT -s 1.1.1.1 -j DROP
# -i指定網卡 [root@localhost network-scripts]# iptables -I INPUT -s 192.168.1.0/24 -i ens33 -j ACCEPT
[root@localhost network-scripts]# iptables -nvL --line-number Chain INPUT (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination 1 184 13824 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 2 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 3 0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 4 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 5 6 468 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination 1 0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT 141 packets, 10976 bytes) num pkts bytes target prot opt in out source destination # 刪除第一條 [root@localhost network-scripts]# iptables -D INPUT 1
# 默認INPUT的策略爲ACCEPT [root@localhost network-scripts]# iptables -P INPUT DROP # 這裏須要注意的是,一旦修改默認策略爲DROP,你的ssh通訊的數據包將被丟棄,沒法遠程鏈接,只能連物理機修改!因此最好不要亂修改,保持默認便可!