1. 程式人生 > >linux 管理技巧

linux 管理技巧

flag 文件 兩個 cfg 關閉防火墻 systemctl generate ifcfg 1.2

抓包工具


有時想看下網卡上都有哪些數據包,尤其是當初你初步判定服務上有流量攻擊時,使用抓包工具來抓取數據包就可以知道有哪些 ip在攻擊


1、tcpdump工具

用法 tcpdump -nn -i +網卡

14:24:24.376261 IP 192.168.12.111.22 > 192.168.12.1.52048: Flags [P.], seq 2883280:2883456, ack 18081, win 332, length 176
14:24:24.376298 IP 192.168.12.111.22 > 192.168.12.1.52048: Flags [P.], seq 2883456:2883632, ack 18081, win 332, length 176

14:24:24.376387 IP 192.168.12.111.22 > 192.168.12.1.52048: Flags [P.], seq 2883632:2883808, ack 18081, win 332, length 176
14:24:24.376425 IP 192.168.12.111.22 > 192.168.12.1.52048: Flags [P.], seq 2883808:2883984, ack 18081, win 332, length 176
14:24:24.376514 IP 192.168.12.111.22 > 192.168.12.1.52048: Flags [P.], seq 2883984:2884160, ack 18081, win 332, length 176
14:24:24.376551 IP 192.168.12.111.22 > 192.168.12.1.52048: Flags [P.], seq 2884160:2884336, ack 18081, win 332, length 176
14:24:24.376640 IP 192.168.12.111.22 > 192.168.12.1.52048: Flags [P.], seq 2884336:2884512, ack 18081, win 332, length 176
14:24:24.376677 IP 192.168.12.111.22 > 192.168.12.1.52048: Flags [P.], seq 2884512:2884688, ack 18081, win 332, length 176


如果沒有tcpdump 命令 需要使用 yum install -y tcpdump 我們關註是的是第三列和第四列,它們顯示的是為哪一個IP+端口號在連接哪一個IP+端口號 後面跟的是數據包的相關信息

-i 選項後面跟設備名稱,如果想抓取其他網卡的數據包,後面則需要跟其他網卡的名字,-nn選項的作用是讓第3列和第4列顯示成“IP+端口號”的形成,如果不加-nn 選項,則顯示“主機名+服務器名稱”

tcpdump的其他用法

# tcpdump -nn -i eno16777736 -c 100 表示抓取網卡100條數據包的信息

-c 的作用是指抓包數量,抓包夠了自動退出,不用我們認為取消

# tcpdump -nn -i eno16777736 port 22 表示只抓22端口的包

# tcpdump -nn -i eno16777736 tcp and not port 22 表示只抓tcp的包,但是不要22端口的

# tcpdump -nn -i eno16777736 port 22 and port 53 表示只抓22端口和53端口的包


ifconfig 命令

ifconfig 作用是查看網卡IP相關的信息 和之前使用的ipaddr命令一樣

如果沒有ifconfig 這個命令 則需要 執行:yum install -y net-tools

設置ip的方法

# vi etc/sysconfig/network-scripts/ifcfg-網卡名字 之後修改網卡的ip地址 最後重啟網卡 :systemctl restart network

ifdown 即停用網卡 ifup即啟動網卡 用法:ifdown ens33 && ifup ens33 表示單獨重啟ens33這個網卡


查看網卡的連接狀態

(查看網卡的連接狀態有兩個命令,1個是mii-tool+網卡名字 或ethtool +網卡名字)

[root@localhost ~]# mii-tool eno16777736 # 查看網卡連接狀態
eno16777736: negotiated 1000baseT-FD flow-control, link ok

這裏顯示link OK 就說明網卡為連接狀態,如果是 no link 說明為網卡壞了或者沒有連接到網絡

[root@localhost ~]# ethtool eno16777736 #如果不支持mii就使用ethtool 來查看網卡的連接狀態
Settings for eno16777736:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes

如果link detected :yes 說明網卡為連接狀態


更改主機名

(更改主機名有兩種方法,下面介紹下這兩種方法)

[root@localhost ~]# hostname #查看主機名
yzllinux123

# hostname yzlliniux 這樣修改只是保存到內存中,如果重啟,主機還會變動為之前的名稱,要想永久使用這個主機名,就必須編輯/etc/hostname這個文件

# vi /etc/hostname/ 把裏面的主機名換成yzllinux這個主機名


方法2

hostnamectl set-hostname yzllinux 表示更改主機名


設置DNS

執行的命令是 vim /etc/resolv.conf

[root@yzllinux123 ~]# vim /etc/resolv.conf #執行這條命令
# Generated by NetworkManager
nameserver 8.8.8.8 #增加DNS 4個8為谷歌的dns
nameserver 119.29.29.29
~

這裏vim/etc/resolv.conf只是臨時修改 要想永久修需要執行,vi /etc/sysconfig/network-scripts/ifcfg-eno16777736


linux 防火墻

setenforce 0 是臨時關閉防火墻

要想永久關閉則需要執行:vi /etc/selinuxconfig 然後修改裏面SELINUX=enforcing 改成SELINUX=disabled 然後重啟生效






linux 管理技巧