리눅스 netstat 명령어, ifconfig 명령어

리눅스에 netstat 명령어 및 ifconfig 명령어를 실행하기 위해 리눅스 서버에 명령어 실행을 위한 net-tools이 설치되어 있어야 합니다.

  • net-tools
  • netstat 명령어, ifconfig 명령어
  • 네트워크 명령어

✅ net-tools 설치

# CentOS
sudo yum -y install net-tools
# Ubuntu
sudo apt-get -y install net-tools
# Rocky Linux
sudo dnf -y install net-tools

✅ netstat 명령어

netstat[network statistics:네트워크 통계]은 네트워크 상태를 확인하는 명령어입니다. 어떤 포트가 열려있고, 어떻게 사용되고 있는지와 해킹 시도가 있거나 자신의 컴퓨터가 좀비 PC인지 확인할 수 있습니다.

◼ netstat 명령어 옵션

◼ netstat 실행 및 설명

netstat 명령어를 실행해서 네트워크 연결상태, 라우팅테이블, 인터페이스 상태 등을 확인할 수 있습니다.

netstat -antpl
# 현재의 모든 네트웍 상태를 보여주며(-a), 다른 PC와 연결된(Established) 상태 및 대기(Listeniing) 중인 모든 포트(-n) / TCP 프로토콜(-t) / 포트를 사용하는 프로세스와 프로그램(-p) / 대기중인 네트워크 (-l) 
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1103/sshd: /usr/sbi 
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      6391/mariadbd       
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::80                   :::*                    LISTEN      10875/httpd         
tcp6       0      0 :::3306                 :::*                    LISTEN      6391/mariadbd       
tcp6       0      0 10.0.0.99:80            45.xx.xx.xxx:40040      TIME_WAIT   -                   
tcp6       0      0 10.0.0.99:80            209.xx.xx.xxx:62754     FIN_WAIT2   -                
  • Proto: 프로토콜 종류
  • Recv-Q: process가 받고 있는 바이트 값
  • Send-Q: process가 현재 보내는 바이트 값
  • Local Address: 출발지 주소 및 포트 번호
  • Local Address에서 IP 상태가 0.0.0.0.0으로 되어 있다면 모든 접속이 허용된 상태이며, 127.0.0.1로 되어있다면 loopback(돌아오다) IP로 자기 자신만 호출이 가능한 상태.
  • Foreign Address: 목적지 주소 및 포트
  • PID/Program name: 프로세스 및 프로그램 이름
  • State: 포트의 상태 값
  • LISTEN: 대기 포트. 포트가 열려 있음.
  • CLOSED: 완전히 연결이 종료된 상태
  • CLOSE_WAIT: 원격의 연결 요청을 받고 연결 종료 대기 상태
  • CLOSING:
  • ESTABLISHED: 서로 연결된 상태(연결 완료)
  • TIME_WAIT: 이미 해당 사이트와 연결이 종료되었거나 다음 연결을 위한 대기 상태
  • FIN_WAIT1:
  • FIN_WAIT2:
  •  LAST_ACK: 연결 종료 및 승인을 기다리는 상태
  • UNKNOWN:
~]# netstat -nap | grep ㅣLITEN
# 대기중(LISTEN)인 포트 보기 / 열려 있는 모든 포트(-n)를 네트워크(-a)와 프로세스와 프로그램(-p)과 함께 보기
etstat -nap | grep LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1103/sshd: /usr/sbi 
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      6391/mariadbd       
tcp6       0      0 :::22                   :::*                    LISTEN      1103/sshd: /usr/sbi 
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::80                   :::*                    LISTEN      10875/httpd         
tcp6       0      0 :::3306                 :::*                    LISTEN      6391/mariadbd       

~]# netstat -nap | grep 22
# 22 포트 보기
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1103/sshd: /usr/sbi 
tcp        0      0 10.0.0.99:22            122.43.208.254:50041    ESTABLISHED 1604/sshd: rocky [p 
tcp        0     52 10.0.0.99:22            122.43.208.254:49976    ESTABLISHED 1519/sshd: rocky [p 
tcp6       0      0 :::22                   :::*                    LISTEN      1103/sshd: /usr/sbi 
unix  2      [ ]         DGRAM      CONNECTED     22579    972/chronyd          /run/chrony/chronyd.sock
unix  2      [ ACC ]     STREAM     LISTENING     22866    1004/gssproxy        /run/gssproxy.sock

~]# netstat -nat
# TCP 프로토콜 네트워크 연결 상태 확인 / 열려 있는 모든 포트(-n)를 네트워크(-a)를 TCP 프로토콜과 보기(-t)
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN     
### 생략 ###
tcp       32      0 10.0.0.99:32998         140.204.30.137:443      CLOSE_WAIT 
tcp        0      0 10.0.0.99:22            122.43.208.254:50041    ESTABLISHED
tcp        0      0 10.0.0.99:22            122.43.208.254:50057    ESTABLISHED
~]# netstat -nat | grep 80
tcp        1      0 10.0.0.99:33448         169.254.169.254:80      CLOSE_WAIT 
### 생략 ###
tcp        1      0 10.0.0.99:33090         169.254.169.254:80      CLOSE_WAIT 
tcp6       0      0 :::80                   :::*                    LISTEN     

✅ ifconfig 명령어

config 명령어는 리눅스 운영체제에서 네트워크 인터페이스의 설정 및 관리를 위한 명령어입니다. 이를 통해 현재 네트워크 구성 정보를 확인하고, IP 주소, 넷마스크, 브로드캐스트 주소 설정, 별칭 생성, 하드웨어 주소 설정, 인터페이스를 활성화 또는 비활성화할 수 있습니다.

리눅스 ifconfig 명령어

주로 커맨드 라인에서 네트워크 설정을 수행하는 데 사용됩니다.

~]# ifconfig -a
# 모든 네트워크 정보 표시 #         
ifconfig -a

eth0      Link encap:Ethernet  HWaddr 00:0B:CE:1D:19:5A
          inet addr:172.31.0.23  Bcast:172.16.25.63  Mask:255.255.255.224
          inet6 addr: fe80::20b:cdff:fe1c:185a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2344927 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2220777 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:293839516 (280.2 MiB)  TX bytes:1043721606 (995.3 MiB)
          Interrupt:185 Memory:f7fe0000-f7ff0000

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:16436  Metric:1
          RX packets:5022927 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5022927 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2175739488 (2.0 GiB)  TX bytes:2176012488 (2.0 GiB)

sit0      Link encap:IPv6-in-IPv4
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.1.1.1  P-t-P:10.1.1.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
~]# ifconfig eth0
#특정 네트워크 설정 보기
eth0      Link encap:Ethernet  HWaddr 00:0B:CE:1D:19:5A
          inet addr:172.31.0.23  Bcast:172.16.25.63  Mask:255.255.255.224
          inet6 addr: fe80::20b:cdff:fe1c:185a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2344927 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2220777 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:293839516 (280.2 MiB)  TX bytes:1043721606 (995.3 MiB)
          Interrupt:185 Memory:f7fe0000-f7ff0000
### 명령어 옵션 ###
 네트워크 인터페이스 비활성화
~]# ifconfig eth0 down
~]# ifdown eth0
 네트워크 인터페이스에 IP 주소를 할당
~]# ifconfig eth0 172.31.0.23
 네트워크 인터페이스에 넷마스크를 할당
~]# ifconfig eth0 netmask 255.255.255.224
 네트워크 인터페이스에 브로드캐스트를 할당
~]# ifconfig eth0 broadcast 172.31.0.23
 네트워크 인터페이스에 IP, 넷마스크  브로드캐스트를 할당
~]# ifconfig eth0 172.31.0.23 netmask 255.255.255.224 broadcast 172.31.0.23
 네트워크 인터페이스의 MTU 변경
~]# ifconfig eth0 mtu 1000
 네트워크 인터페이스의 MAC 주소
~]#ifconfig eth0 hw ether AC:BE:1C:32:AE:OF

Similar Posts