濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > 詳解Linux服務(wù)器最多能開放多少個(gè)端口

詳解Linux服務(wù)器最多能開放多少個(gè)端口

熱門標(biāo)簽:威海人工外呼系統(tǒng)供應(yīng)商 寧夏房產(chǎn)智能外呼系統(tǒng)要多少錢 在百度地圖標(biāo)注車輛 藍(lán)點(diǎn)外呼系統(tǒng) 做外呼系統(tǒng)的公司違法嗎 撫順移動(dòng)400電話申請(qǐng) 400電話申請(qǐng)方案 貴陽教育行業(yè)電話外呼系統(tǒng) 烏海智能電話機(jī)器人

端口相關(guān)的概念:

在網(wǎng)絡(luò)技術(shù)中,端口(Port)包括邏輯端口和物理端口兩種類型。物理端口指的是物理存在的端口,如ADSL Modem、集線器、交換機(jī)、路由器上用 于連接其他網(wǎng)絡(luò)設(shè)備的接口,如RJ-45端口、SC端口等等。邏輯端口是指邏輯意義上用于區(qū)分服務(wù)的端口,如TCP/IP協(xié)議中的服務(wù)端口,端口號(hào)的范圍從0到65535,比如用于瀏覽網(wǎng)頁服務(wù)的80端口,用于FTP服務(wù)的21端口等。由于物理端口和邏輯端口數(shù)量較多,為了對(duì)端口進(jìn)行區(qū)分,將每個(gè)端口進(jìn)行了編號(hào),這就是端口號(hào)

端口按端口號(hào)可以分為3大類:

1:公認(rèn)端口(Well Known Port)

公認(rèn)端口號(hào)從0到1023,它們緊密綁定與一些常見服務(wù),例如FTP服務(wù)使用端口21,你在 /etc/services 里面可以看到這種映射關(guān)系。

2:注冊(cè)端口(Registered Ports):

從1024到49151。它們松散地綁定于一些服務(wù)。也就是說有許多服務(wù)綁定于這些端口,這些端口同樣用于許多其它目的.

3: 動(dòng)態(tài)或私有端口(Dynamic and/or Private Ports)

動(dòng)態(tài)端口,即私人端口號(hào)(private port numbers),是可用于任意軟件與任何其他的軟件通信的端口數(shù),使用因特網(wǎng)的傳輸控制協(xié)議,或用戶傳輸協(xié)議。動(dòng)態(tài)端口一般從49152到65535

Linux中有限定端口的使用范圍,如果我要為我的程序預(yù)留某些端口,那么我需要控制這個(gè)端口范圍。/proc/sys/net/ipv4/ip_local_port_range定義了本地TCP/UDP的端口范圍,你可以在/etc/sysctl.conf里面定義net.ipv4.ip_local_port_range = 1024 65000

[root@localhost ~]# cat /proc/sys/net/ipv4/ip_local_port_range
32768 61000
[root@localhost ~]# echo 1024 65535 > /proc/sys/net/ipv4/ip_local_port_range

關(guān)于端口和服務(wù),我曾經(jīng)拿公共廁所打比方,公共廁所里的每一個(gè)廁所就好比系統(tǒng)的每一個(gè)端口,為人解決方便就是所謂的服務(wù),你提供了這些服務(wù),那么就必須開放端口(廁所),當(dāng)有人上廁所時(shí),就是在這些端口建立了鏈接。如果那個(gè)廁所被人占用了,就表示端口號(hào)被服務(wù)占用了,如果有一天這里不提供公共廁所服務(wù)了,這個(gè)公共廁所被拆除了,自然也就沒有了端口號(hào)了。其實(shí)更形象的例子,就好比銀行大堂,端口號(hào)是那些柜臺(tái),而那些取號(hào)辦理業(yè)務(wù)的人就好比鏈接到服務(wù)器的各種客戶端。他們通過端口重定向技術(shù)與柜臺(tái)發(fā)送業(yè)務(wù)聯(lián)系。再舉一個(gè)通俗易懂的例子,端口號(hào),好比高鐵線上的每個(gè)站點(diǎn),例如,長沙、岳陽等分別代表一個(gè)端口號(hào),旅客通過火車票到各自的站點(diǎn),就好比各個(gè)應(yīng)用程序發(fā)往服務(wù)器端口的IP包。

端口與服務(wù)的關(guān)系

端口有什么用呢?我們知道,一臺(tái)擁有IP地址的主機(jī)可以提供許多服務(wù),比如Web服務(wù)、FTP服務(wù)、SMTP服務(wù)等,這些服務(wù)完全可以通過1個(gè)IP地址來實(shí)現(xiàn)。那么,主機(jī)是怎樣區(qū)分不同的網(wǎng)絡(luò)服務(wù)呢?顯然不能只靠IP地址,因?yàn)镮P 地址與網(wǎng)絡(luò)服務(wù)的關(guān)系是一對(duì)多的關(guān)系。實(shí)際上是通過“IP地址+端口號(hào)”來區(qū)分不同的服務(wù)的。

端口號(hào)與相應(yīng)服務(wù)的對(duì)應(yīng)關(guān)系存放在/etc/services文件中,這個(gè)文件中可以找到大部分端口。

如何檢查端口是否開放,其實(shí)不整理,還不知道有這么多方法!

1:nmap工具檢測(cè)開放端口

nmap是一款網(wǎng)絡(luò)掃描和主機(jī)檢測(cè)的工具。nmap的安裝非常簡單,如下所示rpm安裝所示。

[root@DB-Server Server]# rpm -ivh nmap-4.11-1.1.x86_64.rpm 
warning: nmap-4.11-1.1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:nmap                   ########################################### [100%]
[root@DB-Server Server]# rpm -ivh nmap-frontend-4.11-1.1.x86_64.rpm 
warning: nmap-frontend-4.11-1.1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:nmap-frontend          ########################################### [100%]

關(guān)于nmap的使用,都可以長篇大寫特寫,這里不做展開。如下所示,nmap 127.0.0.1 查看本機(jī)開放的端口,會(huì)掃描所有端口。 當(dāng)然也可以掃描其它服務(wù)器端口。

[root@DB-Server Server]# nmap 127.0.0.1
 
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2016-06-22 15:46 CST
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
25/tcp   open  smtp
111/tcp  open  rpcbind
631/tcp  open  ipp
1011/tcp open  unknown
3306/tcp open  mysql
 
Nmap finished: 1 IP address (1 host up) scanned in 0.089 seconds
You have new mail in /var/spool/mail/root
[root@DB-Server Server]# 

2:netstat 工具檢測(cè)開放端口

[root@DB-Server Server]# netstat -anlp | grep 3306
tcp        0      0 :::3306                     :::*                        LISTEN      7358/mysqld         
[root@DB-Server Server]# netstat -anlp | grep 22
tcp        0      0 :::22                       :::*                        LISTEN      4020/sshd           
tcp        0     52 ::ffff:192.168.42.128:22    ::ffff:192.168.42.1:43561   ESTABLISHED 6198/2              
[root@DB-Server Server]# 

如上所示,這個(gè)工具感覺沒有nmap簡潔明了。當(dāng)然也確實(shí)沒有nmap功能強(qiáng)大。

3:lsof 工具檢測(cè)開放端口

[root@DB-Server Server]# service mysql start
Starting MySQL......[  OK  ]
[root@DB-Server Server]# lsof -i:3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE NODE NAME
mysqld  7860 mysql   15u  IPv6  44714       TCP *:mysql (LISTEN)
[root@DB-Server Server]# service mysql stop
Shutting down MySQL..[  OK  ]
[root@DB-Server Server]# lsof -i:3306
[root@DB-Server Server]# 
[root@DB-Server Server]# lsof -i TCP| fgrep LISTEN
cupsd     3153    root    4u  IPv4   9115       TCP localhost.localdomain:ipp (LISTEN)
portmap   3761     rpc    4u  IPv4  10284       TCP *:sunrpc (LISTEN)
rpc.statd 3797 rpcuser    7u  IPv4  10489       TCP *:1011 (LISTEN)
sshd      4020    root    3u  IPv6  12791       TCP *:ssh (LISTEN)
sendmail  4042    root    4u  IPv4  12876       TCP localhost.localdomain:smtp (LISTEN)

4:ss 工具檢測(cè)開放端口

[root@localhost ~]# ss -ntl
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN     0      50           *:3306                     *:*                  
LISTEN     0      128          *:111                      *:*                  
LISTEN     0      128          *:22                       *:*                  
LISTEN     0      32           *:8808                     *:*                  
LISTEN     0      128       [::]:111                   [::]:*                  
LISTEN     0      128       [::]:22                    [::]:*                  
[root@localhost ~]# 

5: 使用telnet檢測(cè)端口是否開放

服務(wù)器端口即使處于監(jiān)聽狀態(tài),但是防火墻iptables屏蔽了該端口,是無法通過該方法檢測(cè)端口是否開放的。

6:netcat工具檢測(cè)端口是否開放

[root@DB-Server ~]# nc -vv 192.168.42.128 1521
Connection to 192.168.42.128 1521 port [tcp/ncube-lm] succeeded!
[root@DB-Server ~]# nc -z 192.168.42.128 1521; echo $?
Connection to 192.168.42.128 1521 port [tcp/ncube-lm] succeeded!
0
[root@DB-Server ~]#  nc -vv 192.168.42.128 1433
nc: connect to 192.168.42.128 port 1433 (tcp) failed: No route to host

關(guān)閉端口和開放端口

關(guān)閉端口和開放端口應(yīng)該是兩種不同的概念,每個(gè)端口都有對(duì)應(yīng)的服務(wù),因此要關(guān)閉端口,只要關(guān)閉相應(yīng)的服務(wù)就可以了。像下面例子,開啟了MySQL服務(wù),端口3306處于監(jiān)聽狀態(tài),關(guān)閉MySQL服務(wù)后,端口3306自然被關(guān)閉了

[root@DB-Server Server]# service mysql start
Starting MySQL......[  OK  ]
[root@DB-Server Server]# lsof -i:3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE NODE NAME
mysqld  7860 mysql   15u  IPv6  44714       TCP *:mysql (LISTEN)
[root@DB-Server Server]# service mysql stop
Shutting down MySQL..[  OK  ]
[root@DB-Server Server]# lsof -i:3306
[root@DB-Server Server]# 

所以,系統(tǒng)里面有些不必要的端口和服務(wù),從安全考慮或資源節(jié)省角度,都應(yīng)該關(guān)閉那些不必要的服務(wù)。關(guān)閉對(duì)應(yīng)的端口。另外,即使服務(wù)開啟,但是防火墻對(duì)對(duì)應(yīng)的端口進(jìn)行了限制,這樣端口也不能被訪問,但端口本身并沒有關(guān)閉,只是端口被屏蔽了。

到此這篇關(guān)于詳解Linux服務(wù)器最多能開放多少個(gè)端口的文章就介紹到這了,更多相關(guān)Linux服務(wù)器開放端口內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

標(biāo)簽:那曲 朝陽 周口 蕪湖 銅川 慶陽 泰州 松原

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《詳解Linux服務(wù)器最多能開放多少個(gè)端口》,本文關(guān)鍵詞  詳解,Linux,服務(wù)器,最,多能,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《詳解Linux服務(wù)器最多能開放多少個(gè)端口》相關(guān)的同類信息!
  • 本頁收集關(guān)于詳解Linux服務(wù)器最多能開放多少個(gè)端口的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    雅江县| 濉溪县| 澄城县| 友谊县| 响水县| 肇州县| 姚安县| 湄潭县| 宁德市| 新沂市| 临洮县| 全南县| 曲麻莱县| 中江县| 龙井市| 兴宁市| 思南县| 托克托县| 颍上县| 哈尔滨市| 水富县| 社会| 容城县| 方城县| 闵行区| 金湖县| 澎湖县| 竹北市| 托克逊县| 邮箱| 岑巩县| 桑植县| 如皋市| 唐海县| 监利县| 永年县| 鹤峰县| 搜索| 福安市| 宜昌市| 琼海市|