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