Vodnik za sistemske skrbnike Linuxa za upravljanje omrežja, odpravljanje težav in odpravljanje napak
Rutinske naloge skrbnika sistema vključujejo konfiguriranje, vzdrževanje, odpravljanje težav in upravljanje strežnikov in omrežij v podatkovnih centrih. V Linuxu obstajajo številna orodja in pripomočki, namenjeni administrativnim namenom.
V tem članku bomo pregledali nekaj najpogosteje uporabljenih orodij in pripomočkov ukazne vrstice za upravljanje omrežja v Linuxu, v različnih kategorijah. Pojasnili bomo nekaj pogostih primerov uporabe, ki bodo v Linuxu precej olajšali upravljanje omrežja.
Ta seznam je enako uporaben za inženirje omrežja s polnim delovnim časom.
Orodja za konfiguracijo omrežja, odpravljanje težav in odpravljanje napak
ifconfig je orodje vmesnika ukazne vrstice za konfiguracijo omrežnega vmesnika in se uporablja tudi za inicializacijo vmesnikov ob zagonu sistema. Ko se strežnik zažene in zažene, ga lahko uporabite za dodelitev naslova IP vmesniku in omogočite ali onemogočite vmesnik na zahtevo.
Uporablja se tudi za ogled IP naslova stanja, naslova strojne opreme/MAC, pa tudi velikosti MTU (največja enota prenosa) trenutno aktivnih vmesnikov. ifconfig je tako uporaben za odpravljanje napak ali izvajanje sistemskega uglaševanja.
Tukaj je primer za prikaz stanja vseh aktivnih omrežnih vmesnikov.
$ ifconfig enp1s0 Link encap:Ethernet HWaddr 28:d2:44:eb:bd:98 inet addr:192.168.0.103 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::8f0c:7825:8057:5eec/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:169854 errors:0 dropped:0 overruns:0 frame:0 TX packets:125995 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:174146270 (174.1 MB) TX bytes:21062129 (21.0 MB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:15793 errors:0 dropped:0 overruns:0 frame:0 TX packets:15793 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:2898946 (2.8 MB) TX bytes:2898946 (2.8 MB)
Če želite prikazati vse vmesnike, ki so trenutno na voljo, navzgor ali navzdol, uporabite zastavico -a
.
$ ifconfig -a
Če želite vmesniku dodeliti naslov IP, uporabite naslednji ukaz.
$ sudo ifconfig eth0 192.168.56.5 netmask 255.255.255.0
Če želite aktivirati omrežni vmesnik, vnesite.
$ sudo ifconfig up eth0
Če želite deaktivirati ali zaustaviti omrežni vmesnik, vnesite.
$ sudo ifconfig down eth0
Opomba: Čeprav je ifconfig odlično orodje, je zdaj zastarel (zastarel), vendar je njegova zamenjava ukaz ip, ki je razložen spodaj.
Kakšna je razlika med ifconfig in ip Command «, če želite izvedeti več o tem.)
Naslednji ukaz bo prikazal naslov IP in druge podatke o omrežnem vmesniku.
$ ip addr show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 28:d2:44:eb:bd:98 brd ff:ff:ff:ff:ff:ff inet 192.168.0.103/24 brd 192.168.0.255 scope global dynamic enp1s0 valid_lft 5772sec preferred_lft 5772sec inet6 fe80::8f0c:7825:8057:5eec/64 scope link valid_lft forever preferred_lft forever 3: wlp2s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 38:b1:db:7c:78:c7 brd ff:ff:ff:ff:ff:ff ...
Če želite začasno dodeliti naslov IP določenemu omrežnemu vmesniku (eth0), vnesite.
$ sudo ip addr add 192.168.56.1 dev eth0
Če želite odstraniti dodeljeni naslov IP iz omrežnega vmesnika (eth0), vnesite.
$ sudo ip addr del 192.168.56.15/24 dev eth0
Če želite prikazati trenutno sosednjo tabelo v jedru, vnesite.
$ ip neigh 192.168.0.1 dev enp1s0 lladdr 10:fe:ed:3d:f3:82 REACHABLE
ifup aktivira omrežni vmesnik, s čimer je na voljo za prenos in sprejem podatkov.
$ sudo ifup eth0
ifdown onemogoči omrežni vmesnik in ga ohrani v stanju, v katerem ne more prenesti ali sprejeti podatkov.
$ sudo ifdown eth0
ifquery, ki se uporablja za razčlenjevanje konfiguracije omrežnega vmesnika, kar vam omogoča, da prejmete odgovore na poizvedbo o tem, kako je trenutno konfiguriran.
$ sudo ifquery eth0
ethtool je pripomoček ukazne vrstice za poizvedovanje in spreminjanje parametrov krmilnika omrežnega vmesnika in gonilnikov naprav. Spodnji primer prikazuje uporabo ethtool in ukaz za ogled parametrov omrežnega vmesnika.
$ sudo ethtool enp0s3 Settings for enp0s3: 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: umbg Wake-on: d Current message level: 0x00000007 (7) drv probe link Link detected: yes
ping (Packet INternet Groper) je pripomoček, ki se običajno uporablja za preskušanje povezljivosti med dvema sistemoma v omrežju (lokalno omrežje (LAN) ali širše omrežje (WAN)). Za komunikacijo z vozlišči v omrežju uporablja ICMP (Internet Control Message Protocol).
Če želite preizkusiti povezljivost z drugim vozliščem, preprosto navedite na primer njegov IP ali ime gostitelja.
$ ping 192.168.0.103 PING 192.168.0.103 (192.168.0.103) 56(84) bytes of data. 64 bytes from 192.168.0.103: icmp_seq=1 ttl=64 time=0.191 ms 64 bytes from 192.168.0.103: icmp_seq=2 ttl=64 time=0.156 ms 64 bytes from 192.168.0.103: icmp_seq=3 ttl=64 time=0.179 ms 64 bytes from 192.168.0.103: icmp_seq=4 ttl=64 time=0.182 ms 64 bytes from 192.168.0.103: icmp_seq=5 ttl=64 time=0.207 ms 64 bytes from 192.168.0.103: icmp_seq=6 ttl=64 time=0.157 ms ^C --- 192.168.0.103 ping statistics --- 6 packets transmitted, 6 received, 0% packet loss, time 5099ms rtt min/avg/max/mdev = 0.156/0.178/0.207/0.023 ms
Pingu lahko tudi poveste, da zapusti določeno število paketov ECHO_REQUEST, z uporabo zastavice -c, kot je prikazano.
$ ping -c 4 192.168.0.103 PING 192.168.0.103 (192.168.0.103) 56(84) bytes of data. 64 bytes from 192.168.0.103: icmp_seq=1 ttl=64 time=1.09 ms 64 bytes from 192.168.0.103: icmp_seq=2 ttl=64 time=0.157 ms 64 bytes from 192.168.0.103: icmp_seq=3 ttl=64 time=0.163 ms 64 bytes from 192.168.0.103: icmp_seq=4 ttl=64 time=0.190 ms --- 192.168.0.103 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3029ms rtt min/avg/max/mdev = 0.157/0.402/1.098/0.402 ms
Traceroute je pripomoček ukazne vrstice za sledenje celotne poti od vašega lokalnega sistema do drugega omrežnega sistema. Natisne število skokov (IP usmerjevalnikov) na poti, ki jo potujete, da dosežete končni strežnik. To je preprost pripomoček za odpravljanje težav z omrežjem po ukazu ping.
V tem primeru sledimo paketom poti, ki potekajo od lokalnega sistema do enega od Googlovih strežnikov z naslovom IP 216.58.204.46.
$ traceroute 216.58.204.46 traceroute to 216.58.204.46 (216.58.204.46), 30 hops max, 60 byte packets 1 gateway (192.168.0.1) 0.487 ms 0.277 ms 0.269 ms 2 5.5.5.215 (5.5.5.215) 1.846 ms 1.631 ms 1.553 ms 3 * * * 4 72.14.194.226 (72.14.194.226) 3.762 ms 3.683 ms 3.577 ms 5 108.170.248.179 (108.170.248.179) 4.666 ms 108.170.248.162 (108.170.248.162) 4.869 ms 108.170.248.194 (108.170.248.194) 4.245 ms 6 72.14.235.133 (72.14.235.133) 72.443 ms 209.85.241.175 (209.85.241.175) 62.738 ms 72.14.235.133 (72.14.235.133) 65.809 ms 7 66.249.94.140 (66.249.94.140) 128.726 ms 127.506 ms 209.85.248.5 (209.85.248.5) 127.330 ms 8 74.125.251.181 (74.125.251.181) 127.219 ms 108.170.236.124 (108.170.236.124) 212.544 ms 74.125.251.181 (74.125.251.181) 127.249 ms 9 216.239.49.134 (216.239.49.134) 236.906 ms 209.85.242.80 (209.85.242.80) 254.810 ms 254.735 ms 10 209.85.251.138 (209.85.251.138) 252.002 ms 216.239.43.227 (216.239.43.227) 251.975 ms 209.85.242.80 (209.85.242.80) 236.343 ms 11 216.239.43.227 (216.239.43.227) 251.452 ms 72.14.234.8 (72.14.234.8) 279.650 ms 277.492 ms 12 209.85.250.9 (209.85.250.9) 274.521 ms 274.450 ms 209.85.253.249 (209.85.253.249) 270.558 ms 13 209.85.250.9 (209.85.250.9) 269.147 ms 209.85.254.244 (209.85.254.244) 347.046 ms 209.85.250.9 (209.85.250.9) 285.265 ms 14 64.233.175.112 (64.233.175.112) 344.852 ms 216.239.57.236 (216.239.57.236) 343.786 ms 64.233.175.112 (64.233.175.112) 345.273 ms 15 108.170.246.129 (108.170.246.129) 345.054 ms 345.342 ms 64.233.175.112 (64.233.175.112) 343.706 ms 16 108.170.238.119 (108.170.238.119) 345.610 ms 108.170.246.161 (108.170.246.161) 344.726 ms 108.170.238.117 (108.170.238.117) 345.536 ms 17 lhr25s12-in-f46.1e100.net (216.58.204.46) 345.382 ms 345.031 ms 344.884 ms
MTR je sodobno orodje za diagnosticiranje omrežne ukazne vrstice, ki združuje funkcionalnost ping in traceroute v eno samo diagnostično orodje. Njeni rezultati se privzeto posodabljajo v realnem času, dokler ne zaprete programa s pritiskom na q
.
Najlažji način za zagon mtr je, da mu kot argument navedete ime gostitelja ali naslov IP, kot sledi.
$ mtr google.com OR $ mtr 216.58.223.78
linux-console.net (0.0.0.0) Thu Jul 12 08:58:27 2018 First TTL: 1 Host Loss% Snt Last Avg Best Wrst StDev 1. 192.168.0.1 0.0% 41 0.5 0.6 0.4 1.7 0.2 2. 5.5.5.215 0.0% 40 1.9 1.5 0.8 7.3 1.0 3. 209.snat-111-91-120.hns.net.in 23.1% 40 1.9 2.7 1.7 10.5 1.6 4. 72.14.194.226 0.0% 40 89.1 5.2 2.2 89.1 13.7 5. 108.170.248.193 0.0% 40 3.0 4.1 2.4 52.4 7.8 6. 108.170.237.43 0.0% 40 2.9 5.3 2.5 94.1 14.4 7. bom07s10-in-f174.1e100.net 0.0% 40 2.6 6.7 2.3 79.7 16.
Število pingov lahko omejite na določeno vrednost in po teh pingih zapustite mtr z oznako -c
, kot je prikazano.
$ mtr -c 4 google.com
route je pripomoček ukazne vrstice za prikaz ali upravljanje usmerjevalne tabele IP sistema Linux. Uporablja se predvsem za konfiguracijo statičnih poti do določenih gostiteljev ali omrežij prek vmesnika.
Tabelo usmerjanja IP jedra si lahko ogledate tako, da vnesete.
$ route Destination Gateway Genmask Flags Metric Ref Use Iface default gateway 0.0.0.0 UG 100 0 0 enp0s3 192.168.0.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
Za konfiguriranje usmerjanja lahko uporabite številne ukaze. Tu je nekaj uporabnih:
V tabelo za usmerjanje dodajte privzeti prehod.
$ sudo route add default gw <gateway-ip>
Mrežni poti dodajte tabelo usmerjanja.
$ sudo route add -net <network ip/cidr> gw <gateway ip> <interface>
Iz tabele usmerjanja izbrišite določen vnos poti.
$ sudo route del -net <network ip/cidr>
Nmcli je preprosto orodje za ukazno vrstico, ki ga je mogoče pisati, ki poroča o stanju omrežja, upravlja omrežne povezave in nadzoruje NetworkManager.
Če si želite ogledati vse svoje omrežne naprave, vnesite.
$ nmcli dev status DEVICE TYPE STATE CONNECTION virbr0 bridge connected virbr0 enp0s3 ethernet connected Wired connection 1
Če želite preveriti omrežne povezave v sistemu, vnesite.
$ nmcli con show Wired connection 1 bc3638ff-205a-3bbb-8845-5a4b0f7eef91 802-3-ethernet enp0s3 virbr0 00f5d53e-fd51-41d3-b069-bdfd2dde062b bridge virbr0
Če si želite ogledati samo aktivne povezave, dodajte zastavico -a
.
$ nmcli con show -a
Orodja za skeniranje omrežja in analizo učinkovitosti
netstat je orodje ukazne vrstice, ki prikazuje uporabne informacije, kot so omrežne povezave, usmerjevalne tabele, statistika vmesnikov in še veliko več, ki se nanašajo na omrežni podsistem Linux. Uporaben je za odpravljanje težav z omrežjem in analizo učinkovitosti.
Poleg tega je tudi temeljno orodje za odpravljanje napak omrežnih storitev, ki se uporablja za preverjanje, kateri programi poslušajo na kakšnih vratih. Naslednji ukaz bo na primer prikazal vsa vrata TCP v načinu poslušanja in programe, ki jih poslušajo.
$ sudo netstat -tnlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:587 0.0.0.0:* LISTEN 1257/master tcp 0 0 127.0.0.1:5003 0.0.0.0:* LISTEN 1/systemd tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN 1015/dovecot tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN 1015/dovecot tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd tcp 0 0 0.0.0.0:465 0.0.0.0:* LISTEN 1257/master tcp 0 0 0.0.0.0:53 0.0.0.0:* LISTEN 1404/pdns_server tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1064/pure-ftpd (SER tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 972/sshd tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 975/cupsd tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 1257/master tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 636/lscpd (lscpd - tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 1015/dovecot tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN 1015/dovecot tcp6 0 0 :::3306 :::* LISTEN 1053/mysqld tcp6 0 0 :::3307 :::* LISTEN 1211/mysqld tcp6 0 0 :::587 :::* LISTEN 1257/master tcp6 0 0 :::110 :::* LISTEN 1015/dovecot tcp6 0 0 :::143 :::* LISTEN 1015/dovecot tcp6 0 0 :::111 :::* LISTEN 1/systemd tcp6 0 0 :::80 :::* LISTEN 990/httpd tcp6 0 0 :::465 :::* LISTEN 1257/master tcp6 0 0 :::53 :::* LISTEN 1404/pdns_server tcp6 0 0 :::21 :::* LISTEN 1064/pure-ftpd (SER tcp6 0 0 :::22 :::* LISTEN 972/sshd tcp6 0 0 ::1:631 :::* LISTEN 975/cupsd tcp6 0 0 :::25 :::* LISTEN 1257/master tcp6 0 0 :::993 :::* LISTEN 1015/dovecot tcp6 0 0 :::995 :::* LISTEN 1015/dovecot
Če si želite ogledati usmerjevalno tabelo jedra, uporabite zastavico -r
(kar je enakovredno zgornjemu ukazu route).
$ netstat -r Destination Gateway Genmask Flags MSS Window irtt Iface default gateway 0.0.0.0 UG 0 0 0 enp0s3 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s3 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
Opomba: Čeprav je Netstat odlično orodje, je zdaj zastarel (zastarel), vendar je njegova zamenjava ukaz ss, ki je razložen spodaj.
ss (statistika vtičnic) je zmogljiv pripomoček ukazne vrstice za raziskovanje vtičnic. Izbriše statistiko vtičnice in prikaže informacije, podobne netstat. Poleg tega prikazuje več informacij o TCP in stanju v primerjavi z drugimi podobnimi pripomočki.
Naslednji primer prikazuje, kako navesti vsa vrata TCP (vtičnice), ki so odprta na strežniku.
$ ss -ta State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 100 *:submission *:* LISTEN 0 128 127.0.0.1:fmpro-internal *:* LISTEN 0 100 *:pop3 *:* LISTEN 0 100 *:imap *:* LISTEN 0 128 *:sunrpc *:* LISTEN 0 100 *:urd *:* LISTEN 0 128 *:domain *:* LISTEN 0 9 *:ftp *:* LISTEN 0 128 *:ssh *:* LISTEN 0 128 127.0.0.1:ipp *:* LISTEN 0 100 *:smtp *:* LISTEN 0 128 *:8090 *:* LISTEN 0 100 *:imaps *:* LISTEN 0 100 *:pop3s *:* ESTAB 0 0 192.168.0.104:ssh 192.168.0.103:36398 ESTAB 0 0 127.0.0.1:34642 127.0.0.1:opsession-prxy ESTAB 0 0 127.0.0.1:34638 127.0.0.1:opsession-prxy ESTAB 0 0 127.0.0.1:34644 127.0.0.1:opsession-prxy ESTAB 0 0 127.0.0.1:34640 127.0.0.1:opsession-prxy LISTEN 0 80 :::mysql :::* ...
Če želite prikazati vse aktivne povezave TCP skupaj s časovniki, zaženite naslednji ukaz.
$ ss -to
NC (NetCat), imenovan tudi "omrežni švicarski nož", je zmogljiv pripomoček, ki se uporablja za skoraj vse naloge, povezane z vtičnicami domene TCP, UDP ali UNIX. Uporablja se za odprte povezave TCP, poslušanje poljubnih TCP in Vrata UDP, skenirajte vrata in še več.
Uporabite ga lahko tudi kot preproste strežnike proxy TCP, za testiranje demonov omrežja, da preverite, ali so oddaljena vrata dosegljiva in še veliko več. Poleg tega lahko za prenos datotek med dvema računalnikoma uporabite nc skupaj z ukazom pv.
Naslednji primer bo pokazal, kako optično prebrati seznam vrat.
$ nc -zv server2.tecmint.lan 21 22 80 443 3000
Določite lahko tudi vrsto vrat, kot je prikazano.
$ nc -zv server2.tecmint.lan 20-90
Naslednji primer prikazuje, kako z nc odpreti povezavo TCP do vrat 5000 na server2.tecmint.lan z uporabo vrat 3000 kot izvornih vrat s časovno omejitvijo 10 sekund.
$ nc -p 3000 -w 10 server2.tecmint.lan 5000
Nmap (Network Mapper) je močno in izjemno vsestransko orodje za sistemske/omrežne skrbnike Linuxa. Uporablja se za zbiranje informacij o enem gostitelju ali za raziskovanje omrežij po celotnem omrežju. Nmap se uporablja tudi za izvajanje varnostnih pregledov, revizijo omrežja in iskanje odprtih vrat na oddaljenih gostiteljih in še veliko več.
Gostitelja lahko na primer optično preberete z njegovim imenom ali naslovom IP.
$ nmap google.com Starting Nmap 6.40 ( http://nmap.org ) at 2018-07-12 09:23 BST Nmap scan report for google.com (172.217.166.78) Host is up (0.0036s latency). rDNS record for 172.217.166.78: bom05s15-in-f14.1e100.net Not shown: 998 filtered ports PORT STATE SERVICE 80/tcp open http 443/tcp open https Nmap done: 1 IP address (1 host up) scanned in 4.92 seconds
Druga možnost je, da uporabite naslov IP, kot je prikazano.
$ nmap 192.168.0.103 Starting Nmap 6.40 ( http://nmap.org ) at 2018-07-12 09:24 BST Nmap scan report for 192.168.0.103 Host is up (0.000051s latency). Not shown: 994 closed ports PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 902/tcp open iss-realsecure 4242/tcp open vrml-multi-use 5900/tcp open vnc 8080/tcp open http-proxy MAC Address: 28:D2:44:EB:BD:98 (Lcfc(hefei) Electronics Technology Co.) Nmap done: 1 IP address (1 host up) scanned in 0.13 seconds
Preberite naslednje uporabne članke o ukazu nmap.
- Kako uporabljati skripte Nmap Script Engine (NSE) v Linuxu
- Praktični vodnik za Nmap (bralnik omrežne varnosti) v Kali Linuxu
- Poiščite vse naslove IP gostiteljev v živo, povezane v omrežju v sistemu Linux
Pripomočki za iskanje DNS
Ukaz host je preprost pripomoček za iskanje DNS, prevaja imena gostiteljev v naslove IP in obratno.
$ host google.com google.com has address 172.217.166.78 google.com mail is handled by 20 alt1.aspmx.l.google.com. google.com mail is handled by 30 alt2.aspmx.l.google.com. google.com mail is handled by 40 alt3.aspmx.l.google.com. google.com mail is handled by 50 alt4.aspmx.l.google.com. google.com mail is handled by 10 aspmx.l.google.com.
dig (dodatek podatkov o domeni) je tudi drug preprost pripomoček za iskanje DNS, ki se uporablja za poizvedovanje o informacijah, povezanih z DNS, kot so A Record, CNAME, MX Record itd., na primer:
$ dig google.com ; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7 <<>> google.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23083 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 14 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;google.com. IN A ;; ANSWER SECTION: google.com. 72 IN A 172.217.166.78 ;; AUTHORITY SECTION: com. 13482 IN NS c.gtld-servers.net. com. 13482 IN NS d.gtld-servers.net. com. 13482 IN NS e.gtld-servers.net. com. 13482 IN NS f.gtld-servers.net. com. 13482 IN NS g.gtld-servers.net. com. 13482 IN NS h.gtld-servers.net. com. 13482 IN NS i.gtld-servers.net. com. 13482 IN NS j.gtld-servers.net. com. 13482 IN NS k.gtld-servers.net. com. 13482 IN NS l.gtld-servers.net. com. 13482 IN NS m.gtld-servers.net. com. 13482 IN NS a.gtld-servers.net. com. 13482 IN NS b.gtld-servers.net. ;; ADDITIONAL SECTION: a.gtld-servers.net. 81883 IN A 192.5.6.30 b.gtld-servers.net. 3999 IN A 192.33.14.30 c.gtld-servers.net. 14876 IN A 192.26.92.30 d.gtld-servers.net. 85172 IN A 192.31.80.30 e.gtld-servers.net. 95861 IN A 192.12.94.30 f.gtld-servers.net. 78471 IN A 192.35.51.30 g.gtld-servers.net. 5217 IN A 192.42.93.30 h.gtld-servers.net. 111531 IN A 192.54.112.30 i.gtld-servers.net. 93017 IN A 192.43.172.30 j.gtld-servers.net. 93542 IN A 192.48.79.30 k.gtld-servers.net. 107218 IN A 192.52.178.30 l.gtld-servers.net. 6280 IN A 192.41.162.30 m.gtld-servers.net. 2689 IN A 192.55.83.30 ;; Query time: 4 msec ;; SERVER: 192.168.0.1#53(192.168.0.1) ;; WHEN: Thu Jul 12 09:30:57 BST 2018 ;; MSG SIZE rcvd: 487
Nslookup je tudi priljubljen pripomoček ukazne vrstice za interaktivno in neinteraktivno poizvedovanje po strežnikih DNS. Uporablja se za iskanje zapisov virov DNS (RR). Kot je prikazano, lahko izveste\"A" zapis (naslov IP) domene.
$ nslookup google.com Server: 192.168.0.1 Address: 192.168.0.1#53 Non-authoritative answer: Name: google.com Address: 172.217.166.78
Prav tako lahko izvedete povratno iskanje domene, kot je prikazano.
$ nslookup 216.58.208.174 Server: 192.168.0.1 Address: 192.168.0.1#53 Non-authoritative answer: 174.208.58.216.in-addr.arpa name = lhr25s09-in-f14.1e100.net. 174.208.58.216.in-addr.arpa name = lhr25s09-in-f174.1e100.net. Authoritative answers can be found from: in-addr.arpa nameserver = e.in-addr-servers.arpa. in-addr.arpa nameserver = f.in-addr-servers.arpa. in-addr.arpa nameserver = a.in-addr-servers.arpa. in-addr.arpa nameserver = b.in-addr-servers.arpa. in-addr.arpa nameserver = c.in-addr-servers.arpa. in-addr.arpa nameserver = d.in-addr-servers.arpa. a.in-addr-servers.arpa internet address = 199.180.182.53 b.in-addr-servers.arpa internet address = 199.253.183.183 c.in-addr-servers.arpa internet address = 196.216.169.10 d.in-addr-servers.arpa internet address = 200.10.60.53 e.in-addr-servers.arpa internet address = 203.119.86.101 f.in-addr-servers.arpa internet address = 193.0.9.1
Analizatorji omrežnih paketov Linux
Tcpdump je zelo zmogljiv in pogosto uporabljan omrežni ostrešnik ukazne vrstice. Uporablja se za zajem in analizo paketov TCP/IP, poslanih ali sprejetih po omrežju na določenem vmesniku.
Če želite zajeti pakete iz danega vmesnika, ga podajte z možnostjo -i
.
$ tcpdump -i eth1 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on enp0s3, link-type EN10MB (Ethernet), capture size 262144 bytes 09:35:40.287439 IP linux-console.net.ssh > 192.168.0.103.36398: Flags [P.], seq 4152360356:4152360552, ack 306922699, win 270, options [nop,nop,TS val 2211778668 ecr 2019055], length 196 09:35:40.287655 IP 192.168.0.103.36398 > linux-console.net.ssh: Flags [.], ack 196, win 5202, options [nop,nop,TS val 2019058 ecr 2211778668], length 0 09:35:40.288269 IP linux-console.net.54899 > gateway.domain: 43760+ PTR? 103.0.168.192.in-addr.arpa. (44) 09:35:40.333763 IP gateway.domain > linux-console.net.54899: 43760 NXDomain* 0/1/0 (94) 09:35:40.335311 IP linux-console.net.52036 > gateway.domain: 44289+ PTR? 1.0.168.192.in-addr.arpa. (42)
Če želite zajeti določeno število paketov, z možnostjo -c
vnesite želeno številko.
$ tcpdump -c 5 -i eth1
Pakete lahko tudi zajamete in shranite v datoteko za kasnejšo analizo, z zastavico -w
določite izhodno datoteko.
$ tcpdump -w captured.pacs -i eth1
Wireshark je priljubljeno, zmogljivo, vsestransko in preprosto orodje za zajemanje in analizo paketov v omrežju s paketnim preklopom v realnem času.
Zajete podatke lahko shranite tudi v datoteko za poznejši pregled. Sistemski skrbniki in omrežni inženirji ga uporabljajo za spremljanje in pregledovanje paketov zaradi varnosti in odpravljanja težav.
Preberite naš članek »10 nasvetov o uporabi Wiresharka za analizo omrežnih paketov, če želite izvedeti več o Wiresharku«.
bmon je zmogljiv pripomoček za spremljanje in odpravljanje napak na osnovi ukazne vrstice za sisteme, podobne Unixu, zajema statistične podatke, povezane z omrežjem, in jih vizualno natisne v človeku prijazni obliki. Je zanesljiv in učinkovit monitor pasovne širine in ocenjevalnik hitrosti v realnem času.
Preberite naš članek »bmon - Zmogljivo orodje za spremljanje in odpravljanje napak omrežne pasovne širine, če želite izvedeti več o bmonu«.
Orodja za upravljanje požarnega zidu Linux
iptables je orodje ukazne vrstice za konfiguracijo, vzdrževanje in pregledovanje filtriranja paketov IP paketov in nabora pravil NAT. Uporabljal se je za nastavitev in upravljanje požarnega zidu Linuxa (Netfilter). Omogoča vam, da navedete obstoječa pravila filtriranja paketov; dodajanje ali brisanje ali spreminjanje pravil filtriranja paketov; seznam števcev na pravilo pravil paketnega filtra.
Iz naših preprostih, a izčrpnih vodnikov se lahko naučite, kako uporabljati Iptables za različne namene.
- Namigi/ukazi osnovnega vodnika o tablicah IP (požarni zid Linux)
- 25 Koristnih pravil požarnega zidu IPtable, ki bi jih moral poznati vsak skrbnik Linuxa
- Kako nastaviti požarni zid Iptables za omogočanje oddaljenega dostopa do storitev
- Kako blokirati ping zahteve ICMP do sistemov Linux
Firewalld je zmogljiv in dinamičen demon za upravljanje požarnega zidu Linuxa (Netfilter), tako kot iptables. Namesto INPUT, OUTPUT in FORWARD CHAINS v iptables uporablja\"omrežna območja". V trenutnih distribucijah Linuxa, kot sta RHEL/CentOS 7 in Fedora 21+, iptables aktivno nadomešča firewalld.
Če želite začeti z firewalldom, si oglejte te vodnike, navedene spodaj:
- Koristna pravila "FirewallD" za konfiguracijo in upravljanje požarnega zidu v Linuxu
- Kako konfigurirati "FirewallD" v RHEL/CentOS 7 in Fedora 21
- Kako zagnati/ustaviti ter omogočiti/onemogočiti požarni zidD in Iptables požarni zid v Linuxu
- Nastavitev Sambe in konfiguriranje požarnega ziduD in SELinux za omogočanje skupne rabe datotek v sistemu Linux/Windows
Pomembno: Iptables je še vedno podprt in ga je mogoče namestiti z upraviteljem paketov YUM. Vendar pa Firewallda in iptables ne morete uporabljati hkrati na istem strežniku - izberite enega.
UFW je dobro znano in privzeto orodje za konfiguracijo požarnega zidu v distribucijah Debian in Ubuntu Linux. Uporablja se za omogočanje/onemogočanje požarnega zidu sistema, dodajanje/brisanje/spreminjanje/ponastavitev pravil filtriranja paketov in še veliko več.
Če želite preveriti stanje požarnega zidu UFW, vnesite.
$ sudo ufw status
Če požarni zid UFW ni aktiven, ga lahko aktivirate ali omogočite z naslednjim ukazom.
$ sudo ufw enable
Če želite onemogočiti požarni zid UFW, uporabite naslednji ukaz.
$ sudo ufw disable
Preberite naš članek\"Kako nastaviti požarni zid UFW na Ubuntu in Debian", če želite izvedeti več o UFW).
Če želite poiskati več informacij o določenem programu, si oglejte njegove strani z navodili, kot je prikazano.
$ man programs_name
To je vse za zdaj! V tem obsežnem priročniku smo pregledali nekaj najpogosteje uporabljenih orodij in pripomočkov ukazne vrstice za upravljanje omrežja v Linuxu, v različnih kategorijah, za sistemske skrbnike in enako koristni za skrbnike/inženirje za polni delovni čas.
Svoje misli o tem priročniku lahko delite s spodnjim obrazcem za komentarje. Če ste zamudili pogosto uporabljena in pomembna orodja/pripomočke za povezovanje v omrežje Linux ali kakršne koli koristne povezane informacije, nam to sporočite.