linux命令行netstat總結


1、所謂的監聽就是某個服務程序會一直常駐在內存中,所以該程序啟動的Port就會一直存在。

2、在小於1023的端口,都是需要以root身份才能夠啟動的。

3、大於1024以上的Port主要是作為client端的軟件啟動的Port。

4、DNS是非可靠的聯機服務,使用UDP服務。

5、查看port    

# cat /etc/services  

 


 
6、常用來觀察port的服務有兩個命令 
 
   netstat:  在本機上以自己的程序監測自己的Port 
   nmap: 通過網絡的偵測軟件輔助,可偵測非本機其他網絡主機

7、列出網絡服務   Local Address (列出所有的開放的端口)
  

# netstat -tunl  
   tcp        0      0 0.0.0.0:44845               0.0.0.0:*                   LISTEN      
   tcp        0      0 0.0.0.0:60622               0.0.0.0:*                   LISTEN      
   tcp        0      0 0.0.0.0:36367               0.0.0.0:*                   LISTEN      

 

8、列出本機與其他主機連接的端口
  

#netstat -tun
   tcp        0      0 17.0.100.1:1025             17.0.105.95:54492           ESTABLISHED 
   tcp        0      0 17.0.100.1:1024             17.0.105.31:54505           ESTABLISHED 
   tcp        0      0 17.0.100.1:1025             17.0.102.63:55152           ESTABLISHED 

 

9、查找出已經建立連接的端口和進程號
  

#netstat -tunp  
   tcp        0      0 17.0.100.1:1025             17.0.105.95:54492           ESTABLISHED 24041/mpirtm3d      
   tcp        0      0 17.0.100.1:1024             17.0.105.31:54505           ESTABLISHED 24040/mpirtm3d      
   tcp        0      0 17.0.100.1:1025             17.0.102.63:55152           ESTABLISHED 24041/mpirtm3d 

 

   如要殺死進程mpirtm3d, kill -9 24041

10、使用預設參數掃描本機所啟動的port
   
   

 #nmap localhost (在預設情況下,nmap只會掃描tcp)
    PORT     STATE SERVICE
    21/tcp   open  ftp
    22/tcp   open  ssh
    111/tcp  open  rpcbind
    512/tcp  open  exec
    513/tcp  open  login
    514/tcp  open  shell
    631/tcp  open  ipp
    1024/tcp open  kdm
    1025/tcp open  NFS-or-IIS
    1099/tcp open  rmiregistry
    5001/tcp open  commplex-link
    5989/tcp open  wbem-https
    7200/tcp open  fodms
    7201/tcp open  dlip
    8008/tcp open  http
    9090/tcp open  zeus-admin

 

11、查看所有的port(TCP, UDP)
    

#nmap -sTU localhost  (查看TCP和UDP的Port)
    PORT     STATE         SERVICE
    21/tcp   open          ftp
    22/tcp   open          ssh
    111/tcp  open          rpcbind
    512/tcp  open          exec
    513/tcp  open          login
    111/udp  open          rpcbind
    123/udp  open          ntp
    631/udp  open|filtered ipp

 


   

12、查看幾部主機在你的網絡中
    #nmap -sP 192.168.0.0/24


13、查看出該主機已經建立的端口和Port
    
   

#netstat -tnlp
    tcp        0      0 :::111                      :::*                        LISTEN      3689/rpcbind        
    tcp        0      0 :::80                       :::*                        LISTEN      4654/httpd          
    tcp        0      0 :::51123                    :::*                        LISTEN      3931/rpc.statd      

 

14、查看是哪個服務啟動的端口(如要查看80端口的httpd服務),可以查看到httpd的啟動/etc/rc.d/init.d/httpd
    
   

 #locate httpd | grep '/httpd$'

    /etc/httpd
    /etc/logrotate.d/httpd
    /etc/rc.d/init.d/httpd
    /etc/sysconfig/httpd
    /usr/include/httpd
    /usr/lib64/httpd
    /usr/sbin/httpd
    /var/lock/subsys/httpd
    /var/log/httpd
    /var/run/httpd

 

15、查看telnet是否安裝
   

 #rpm -qa |grep telnet-server

 

16、在RedHat系統中,run level啟動的數據都是放置在/etc/rc.d/rc[0-6].d里。

17、查看一個服務是否開機自啟 (如查看sshd服務)
    
   

 # chkconfig --list | grep sshd
    sshd            0:off 1:off 2:on 3:on 4:on 5:on 6:off

 

18、如果有啟動,可以用 chkconfig --level 35 portmap off 設置開機時不要自啟動

19、可以通過/etc/init.d/portmap stop 來立刻關閉服務
   
20、chkconfig的用法,chkconfig命令主要用來更新(啟動和停止)和查詢系統服務的運行級信息。
    

    chkconfig --list  #列出所有的系統服務
    chkconfig --add httpd  #增加httpd服務
    chkconfig --del httpd  #刪除httpd服務
    chkconfig --level 2345 ripd on #設置httpd在運行級別2345
    chkconfig --level 35 mysqld on #設定mysqld在級別3和等級5執行

 


   

21、yum server設定
   

    /etc/yum.conf
    /etc/yum.repos.d/***.repo
    /etc/yum.repos.d/yum.repo

 

22、路由表
   
    每一部主機都有自己的路由表,透過自己的路由表傳遞你主機的封包到下一個路由器上。查看路由表
    路由表的排列是由小網域到大網域,你主機上有幾個網絡接口存在,該網絡接口就會存在一個路由才對。   

   

    #route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
    169.254.0.0     0.0.0.0         255.255.0.0     U     1004   0        0 ib0
    169.254.0.0     0.0.0.0         255.255.0.0     U     1005   0        0 ib1
    169.254.0.0     0.0.0.0         255.255.0.0     U     1006   0        0 br0

 

23、 加入我現在的IP地址為192.168.1.11,我要連接到192.168.100.254這個路由器時,可以使用如下命令添加路由
  
     #route add -net 192.168.100.0 netmask 255.255.255.0 gateway 192.168.100.254
   
     #G作為外部的裝置作為gateway的意思。
    
     假設本機你有兩張網絡卡,假設:
    
     eth0: 192.168.0.100
     eth1: 192.168.0.200

     那么路由表的規則是:如果兩個地址都在同一個網段的時候,都是透過eth傳出數據。

24、啟動封包傳遞
    #echo “1” > /proc/sys/net/ipv4/ip_forward
    可以將上述的指令寫入/etc/rc.d/rc.local中,以使linux可以再開機的時候就啟動封包轉遞的功能。

25、sysctl配置與顯示在/proc/sys目錄中的內核參數,可以用sysctl來設置或重新設置聯網功能,如ip轉發、ip碎片去除以及源路由的檢查等,用戶只需要編    輯/etc/sysctl.conf.
   
    啟動ip路由轉發功能:
     1) #echo 1 > /proc/sys/net/ipv4/ip_forward
     2)  sysctl -w net.ipv4.ip_forward=1

26、NAT(Network Address Translation,網絡地址轉譯)
    NAT本身就是一個路由器,但NAT比路由器多了一個IP轉換的功能。
    Linux的NAT主機可以透過修改封包的IP表頭數據之來源或目標IP,讓來自私有的IP的封包可以轉換為NAT主機的公共IP。

27、可以使用tcpdump的指令來監聽封包數據

28、只要是具有路由器功能的設備都會具有兩個以上的接口,分別用來溝通不同的網域,同時該路由器都會具有一個預設路由,同時還可以加上一些防火牆的軟件在Linux             Router上。

29、第一張網絡卡的第一個虛擬接口為eth0:0

30、路由是雙向的,所以由網絡封包發送處發送到目標的路由規划,必須要考慮到回程時是否具有相對的路由。

31、網絡封包進入本機的流程順序
   
    1)、封包過濾防火牆:IP Filetering
      
         要進入Linux本機的封包都會先通過Linux核心的預設防火牆,這是iptables這個軟件提供的防火牆功能。
   
    2)、TCP wrappers
         網絡封包開始接受super deamons和TCP_wrapper的檢驗。
        

32、iptables 其實就是一種防火牆機制,只要能夠分析與過濾進出我們管理的網絡的封包數據,就可以稱為防火牆。
    防火牆最大的功能就是限制某種服務的存取來源。

 

    
    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM