Vodič za upravljanje mrežom, rješavanje problema i uklanjanje pogrešaka za Linux Sysadmins


Rutinski zadaci administratora sustava uključuju konfiguriranje, održavanje, rješavanje problema i upravljanje poslužiteljima i mrežama unutar podatkovnih centara. U Linuxu postoje brojni alati i uslužni programi dizajnirani za administrativne svrhe.

U ovom ćemo članku pregledati neke od najčešće korištenih alata i uslužnih programa naredbenog retka za upravljanje mrežom u Linuxu, u različitim kategorijama. Objasnit ćemo neke uobičajene primjere korištenja koji će upravljanje mrežom učiniti mnogo lakšim u Linuxu.

Ovaj je popis jednako koristan i stalnim mrežnim inženjerima.

Alati za mrežnu konfiguraciju, rješavanje problema i uklanjanje pogrešaka

ifconfig je alat sučelja naredbenog retka za konfiguraciju mrežnog sučelja i također se koristi za inicijalizaciju sučelja u vrijeme pokretanja sustava. Jednom kada poslužitelj radi i može se koristiti za dodjeljivanje IP adrese sučelju i omogućavanje ili onemogućavanje sučelja na zahtjev.

Također se koristi za prikaz statusa IP adrese, hardvera/MAC adrese, kao i MTU (Maximum Transmission Unit) veličine trenutno aktivnih sučelja. ifconfig je stoga koristan za ispravljanje pogrešaka ili izvršavanje ugađanja sustava.

Evo primjera za prikaz statusa svih aktivnih mrežnih sučelja.

$ 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)

Da biste popisali sva sučelja koja su trenutno dostupna, bilo gore ili dolje, upotrijebite zastavicu -a .

$ ifconfig -a 	

Da biste sučelju dodijelili IP adresu, upotrijebite sljedeću naredbu.

$ sudo ifconfig eth0 192.168.56.5 netmask 255.255.255.0

Da biste aktivirali mrežno sučelje, upišite.

$ sudo ifconfig up eth0

Da biste deaktivirali ili isključili mrežno sučelje, upišite.

$ sudo ifconfig down eth0

Napomena: Iako je ifconfig izvrstan alat, sada je zastario (zastario), njegova zamjena je ip naredba koja je objašnjena u nastavku.

Kakva je razlika između ifconfig i ip naredbe "da biste saznali više o tome.)

Sljedeća naredba prikazat će IP adresu i ostale informacije o mrežnom sučelju.

$ 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
...

Da biste privremeno dodijelili IP adresu određenom mrežnom sučelju (eth0), upišite.

$ sudo ip addr add 192.168.56.1 dev eth0

Da biste uklonili dodijeljenu IP adresu s mrežnog sučelja (eth0), upišite.

$ sudo ip addr del 192.168.56.15/24 dev eth0

Da biste prikazali trenutnu susjedsku tablicu u jezgri, upišite.

$ ip neigh

192.168.0.1 dev enp1s0 lladdr 10:fe:ed:3d:f3:82 REACHABLE

ifup naredba aktivira mrežno sučelje, čineći ga dostupnim za prijenos i primanje podataka.

$ sudo ifup eth0

naredba ifdown onemogućava mrežno sučelje, održavajući ga u stanju u kojem ne može prenositi ili primati podatke.

$ sudo ifdown eth0

naredba ifquery koja se koristi za raščlanjivanje konfiguracije mrežnog sučelja, omogućujući vam primanje odgovora na upit o tome kako je trenutno konfigurirana.

$ sudo ifquery eth0

ethtool je uslužni program naredbenog retka za postavljanje upita i izmjenu parametara kontrolera mrežnog sučelja i upravljačkih programa uređaja. Primjer u nastavku prikazuje upotrebu ethtoola i naredbu za pregled parametara mrežnog sučelja.

$ 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) uslužni je program koji se obično koristi za testiranje povezanosti između dvaju sustava na mreži (lokalna mreža (LAN) ili mreža širokog područja (WAN)). Koristi ICMP (Internet Control Message Protocol) za komunikaciju s čvorovima na mreži.

Da biste testirali povezanost s drugim čvorom, jednostavno navedite njegov IP ili naziv hosta, na primjer.

$ 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

Također možete reći pingu da izađe nakon određenog broja ECHO_REQUEST paketa, koristeći oznaku -c kao što 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 uslužni program naredbenog retka za praćenje pune staze od vašeg lokalnog sustava do drugog mrežnog sustava. Ispisuje broj skokova (IP usmjerivača) na toj stazi kojom putujete do krajnjeg poslužitelja. To je uslužni program za rješavanje problema s mrežom nakon naredbe ping.

U ovom primjeru pratimo pakete ruta od lokalnog sustava do jednog od Googleovih poslužitelja s IP adresom 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 moderni mrežni dijagnostički alat naredbenog retka koji kombinira funkcionalnost ping-a i traceroute-a u jedan dijagnostički alat. Njegov se izlaz ažurira u stvarnom vremenu, prema zadanim postavkama dok ne izađete iz programa pritiskom na q .

Najlakši način pokretanja mtr-a je pružanje imena hosta ili IP adrese kao argumenta, kako slijedi.

$ 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.

Možete ograničiti broj pinga na određenu vrijednost i izaći iz mtr nakon tih pingova, koristeći oznaku -c kako je prikazano.

$ mtr -c 4 google.com

route je uslužni program naredbenog retka za prikaz ili manipulaciju tablicom IP usmjeravanja Linux sustava. Uglavnom se koristi za konfiguriranje statičkih ruta do određenih hostova ili mreža putem sučelja.

Tablicu IP usmjeravanja jezgre možete pregledati upisivanjem.

$ 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

Brojne su naredbe pomoću kojih možete konfigurirati usmjeravanje. Evo nekoliko korisnih:

Dodajte zadani pristupnik tablici usmjeravanja.

$ sudo route add default gw <gateway-ip>

Dodajte mrežnu rutu u tablicu usmjeravanja.

$ sudo route add -net <network ip/cidr> gw <gateway ip> <interface>

Iz tablice usmjeravanja izbrišite određeni unos rute.

$ sudo route del -net <network ip/cidr>

Nmcli je jednostavan za korištenje, alat za naredbene retke koji se može pisati, za izvještavanje o stanju mreže, upravljanje mrežnim vezama i kontrolu NetworkManager-a.

Da biste pregledali sve svoje mrežne uređaje, upišite.

$ nmcli dev status

DEVICE      TYPE      STATE      CONNECTION         
virbr0      bridge    connected  virbr0             
enp0s3      ethernet  connected  Wired connection 1 

Da biste provjerili mrežne veze na vašem sustavu, upišite.

$ nmcli con show

Wired connection 1  bc3638ff-205a-3bbb-8845-5a4b0f7eef91  802-3-ethernet  enp0s3 
virbr0              00f5d53e-fd51-41d3-b069-bdfd2dde062b  bridge          virbr0 

Da biste vidjeli samo aktivne veze, dodajte zastavicu -a .

$ nmcli con show -a

Alati za mrežno skeniranje i analizu performansi

netstat je alat naredbenog retka koji prikazuje korisne informacije kao što su mrežne veze, tablice usmjeravanja, statistika sučelja i još mnogo toga, u vezi s Linux mrežnim podsustavom. Korisno je za rješavanje problema mreže i analizu performansi.

Uz to, to je također osnovni alat za otklanjanje pogrešaka mrežnih usluga koji se koristi za provjeru programa koji slušaju na kojim priključcima. Na primjer, sljedeća naredba će pokazati sve TCP priključke u načinu slušanja i koji programi ih slušaju.

$ 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        

Da biste pogledali tablicu usmjeravanja jezgre, upotrijebite zastavicu -r (koja je ekvivalentna gore pokrenutoj naredbi rute).

$ 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

Napomena: Iako je Netstat izvrstan alat, sada je zastario (zastario), njegova zamjena je ss naredba koja je objašnjena u nastavku.

ss (statistika soketa) moćan je uslužni program naredbenog retka za istraživanje utičnica. Izbacuje statistiku soketa i prikazuje informacije slične netstatu. Uz to, prikazuje više podataka o TCP-u i stanju u usporedbi s drugim sličnim uslužnim programima.

Sljedeći primjer pokazuje kako navesti sve TCP priključke (utičnice) koji su otvoreni na poslužitelju.

$ 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                                                                  :::*             
...

Da biste prikazali sve aktivne TCP veze zajedno s njihovim tajmerima, pokrenite sljedeću naredbu.

$ ss -to

NC (NetCat), koji se naziva i "Mrežni švicarski nož", moćan je uslužni program koji se koristi za gotovo sve zadatke povezane s TCP, UDP ili UNIX utičnicama. Koristi se otvorenim TCP vezama, preslušava se na proizvoljnim TCP i UDP priključcima, vrši skeniranje porta i još mnogo toga.

Možete ga koristiti i kao jednostavne TCP proxyje, za mrežno testiranje demona, kako biste provjerili jesu li udaljeni portovi dostupni i još mnogo toga. Nadalje, možete koristiti nc zajedno s pv naredbom za prijenos datoteka između dva računala.

Sljedeći će primjer pokazati kako skenirati popis luka.

$ nc -zv server2.tecmint.lan 21 22 80 443 3000

Također možete odrediti raspon priključaka kao što je prikazano.

$ nc -zv server2.tecmint.lan 20-90

Sljedeći primjer pokazuje kako koristiti nc za otvaranje TCP veze na port 5000 na server2.tecmint.lan, koristeći port 3000 kao izvorni port, s vremenskim ograničenjem od 10 sekundi.

$ nc -p 3000 -w 10 server2.tecmint.lan 5000 

Nmap (Network Mapper) moćan je i izuzetno svestran alat za Linux sustav/mrežne administratore. Koristi se za prikupljanje podataka o jednom domaćinu ili istraživanje mreže cijele mreže. Nmap se također koristi za izvođenje sigurnosnih skeniranja, mrežnu reviziju i pronalaženje otvorenih portova na udaljenim hostovima i još mnogo toga.

Možete, na primjer, skenirati hosta koristeći njegovo ime ili IP adresu.

$ 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

Ili upotrijebite IP adresu kako 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

Pročitajte naše sljedeće korisne članke o naredbi nmap.

  1. Kako koristiti skripte Nmap Script Engine (NSE) u Linuxu
  2. Praktični vodič za Nmap (Network Security Scanner) u Kali Linux
  3. Saznajte sve IP adrese adresa hostova povezanih na mrežu u Linuxu

Uslužni programi za traženje DNS-a

naredba host je jednostavan uslužni program za izvođenje DNS pretraživanja, prevodi imena hostova u IP adrese i obrnuto.

$ 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 (groper informacije o domeni) također je još jedan jednostavan uslužni program za traženje DNS-a koji se koristi za ispitivanje podataka povezanih s DNS-om poput A Record, CNAME, MX Record itd., na primjer:

$ 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 također popularan uslužni program naredbenog retka za interaktivno i neinteraktivno ispitivanje DNS poslužitelja. Koristi se za ispitivanje zapisa DNS resursa (RR). Možete pronaći "A" zapis (IP adresa) domene kao što je prikazano.

$ 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

Također možete izvršiti obrnuto pretraživanje domene kao što 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

Linux analizatori mrežnih paketa

Tcpdump je vrlo moćan i široko korišten mrežni njuškač naredbenog retka. Koristi se za hvatanje i analizu TCP/IP paketa prenesenih ili primljenih preko mreže na određenom sučelju.

Da biste uhvatili pakete s određenog sučelja, navedite ga pomoću opcije -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)

Da biste uhvatili određeni broj paketa, upotrijebite opciju -c za unos željenog broja.

$ tcpdump -c 5 -i eth1

Pakete također možete hvatati i spremati u datoteku za kasniju analizu, upotrijebite zastavicu -w da odredite izlaznu datoteku.

$ tcpdump -w captured.pacs -i eth1

Wireshark je popularan, moćan, svestran i jednostavan alat za hvatanje i analizu paketa u mreži s komutiranim paketima, u stvarnom vremenu.

Podatke koje ste uhvatili također možete spremiti u datoteku za kasniji pregled. Koriste ga administratori sustava i mrežni inženjeri za nadgledanje i pregled paketa radi sigurnosti i rješavanja problema.

Pročitajte naš članak "10 savjeta o korištenju Wiresharka za analizu mrežnih paketa kako biste saznali više o Wiresharku".

bmon je moćan uslužni program za praćenje i otklanjanje pogrešaka koji se temelji na naredbenom retku za sustave slične Unixu, bilježi mrežne statistike i vizualno ih ispisuje u formatu prilagođenom čovjeku. To je pouzdan i učinkovit monitor i procjena brzine pojasa u stvarnom vremenu.

Pročitajte naš članak "bmon - moćan alat za praćenje i uklanjanje pogrešaka u propusnosti mreže da biste saznali više o bmonu".

Alati za upravljanje vatrozidom za Linux

iptables je alat naredbenog retka za konfiguriranje, održavanje i inspekciju tablica filtriranje IP paketa i NAT skup pravila. Služio je za postavljanje i upravljanje Linux vatrozidom (Netfilter). Omogućuje vam popis postojećih pravila filtriranja paketa; dodavati ili brisati ili mijenjati pravila filtriranja paketa; popis brojača po pravilu pravila filtriranja paketa.

Iz naših jednostavnih, ali sveobuhvatnih vodiča možete naučiti kako koristiti Iptables u razne svrhe.

  1. Osnovni vodič za IPTables (Linux vatrozid) Savjeti/naredbe
  2. 25 korisnih pravila IPtable vatrozida koji bi svaki Linux administrator trebao znati
  3. Kako postaviti Iptables vatrozid da omogući daljinski pristup uslugama
  4. Kako blokirati ping ICMP zahtjeve za Linux sustave

Firewalld je moćan i dinamičan demon za upravljanje Linux vatrozidom (Netfilter), baš kao i iptables. Koristi "mrežne zone" umjesto ULAZNIH, IZLAZNIH I NAPRIJED LANACA u iptablesima. Na trenutnim Linux distribucijama poput RHEL/CentOS 7 i Fedora 21+, iptables se aktivno zamjenjuje vatrozidom.

Da biste započeli s vatrozidom, pogledajte ove dolje navedene vodiče:

  1. Korisna pravila "FirewallD" za konfiguriranje i upravljanje vatrozidom u Linuxu
  2. Kako konfigurirati ‘FirewallD’ u RHEL/CentOS 7 i Fedora 21
  3. Kako pokrenuti/zaustaviti i omogućiti/onemogućiti vatrozid D i Iptables vatrozid u Linuxu
  4. Postavljanje Sambe i konfiguriranje vatrozidaD i SELinux da omoguće dijeljenje datoteka na Linuxu/Windowsu

Važno: Iptables je i dalje podržan i može se instalirati s YUM upraviteljem paketa. Međutim, ne možete istovremeno koristiti Firewalld i iptables na istom poslužitelju - morate odabrati jedan.

UFW je dobro poznati i zadani alat za konfiguriranje vatrozida na distribucijama Debiana i Ubuntu Linuxa. Koristi se na vrhu za omogućavanje/onemogućavanje vatrozida sustava, dodavanje/brisanje/mijenjanje/poništavanje pravila filtriranja paketa i još mnogo toga.

Da biste provjerili status UFW vatrozida, upišite.

$ sudo ufw status

Ako UFW vatrozid nije aktivan, možete ga aktivirati ili omogućiti pomoću sljedeće naredbe.

$ sudo ufw enable

Da biste onemogućili UFW vatrozid, upotrijebite sljedeću naredbu.

$ sudo ufw disable 

Pročitajte naš članak “Kako postaviti UFW vatrozid na Ubuntu i Debian” da biste saznali više o UFW).

Ako želite pronaći više informacija o određenom programu, možete pogledati njegove stranice s uputama, kao što je prikazano.

$ man programs_name

To je sve za sada! U ovom opsežnom vodiču pregledali smo neke od najčešće korištenih alata i uslužnih programa naredbenog retka za upravljanje mrežom u Linuxu, pod različitim kategorijama, za sistemske administratore, a jednako korisni i stalnim mrežnim administratorima/inženjerima.

Svoje mišljenje o ovom vodiču možete podijeliti putem obrasca za komentare u nastavku. Ako smo propustili često korištene i važne Linux mrežne alate/uslužne programe ili bilo koje korisne povezane informacije, također nas obavijestite.