摘要:网络端口是计算机网络中一个非常重要的概念,它用于标识特定的应用程序或服务。
号主:老杨丨11年资深网络工程师,更多网工提升干货,
下午好,我的网工朋友。
网络端口是计算机网络中一个非常重要的概念,它用于标识特定的应用程序或服务。
作为网工,端口也是平时工作中经常接触的部分,了解网络端口的基本知识对于确保网络的正常运行和安全性十分重要。
今天就来讲讲那些网工必知的端口知识,从网络端口的基础知识、常见服务及其端口号、端口扫描与安全、端口转发与NAT到实际应用案例,统统理清。
今日文章阅读福利:《全网最全-网络端口号汇总(27页)》
私信发送暗号“端口”,即可限时获取资料哈。
如果想从0到1系统学习,也欢迎私信我,告知学习意向,我会为你推荐最适合你的方式。
网络端口是用于标识特定应用程序或服务的逻辑地址,通常与IP地址一起使用。每个端口都有一个唯一的编号,范围从0到65535。
端口用于区分同一台主机上的不同服务,确保数据包能够正确地发送到指定的应用程序。
例如,当用户访问一个网站时,浏览器会通过HTTP协议连接到服务器的80端口;当用户通过SSH进行远程登录时,客户端会连接到服务器的22端口。
01 类型:
熟知端口(0-1023):这些端口由IANA(互联网号码分配机构)分配,用于常见的服务。例如,HTTP使用80端口,HTTPS使用443端口。注册端口(1024-49151):这些端口可以由用户或组织注册,用于特定的服务。这些端口通常用于非标准服务或自定义应用。动态/私有端口(49152-65535):这些端口主要用于临时连接,通常由操作系统动态分配。例如,客户端在发起连接时可能会使用这些端口。01 Web服务
HTTP (80):超文本传输协议,用于未加密的Web浏览。
HTTPS (443):安全的超文本传输协议,使用SSL/TLS加密,提供更安全的Web浏览。
02 邮件服务
SMTP (25):简单邮件传输协议,用于发送电子邮件。
POP3 (110):邮局协议版本3,用于从邮件服务器接收电子邮件。
IMAP (143):互联网消息访问协议,用于从邮件服务器接收电子邮件,并支持离线和在线模式。
03 文件传输
FTP (21):文件传输协议,用于上传和下载文件。
SFTP (22):通过SSH进行安全文件传输,基于SSH协议。
SCP (22):安全复制协议,用于在主机之间安全地复制文件,基于SSH协议。
04 远程管理
SSH (22):安全Shell协议,用于远程登录和管理。
Telnet (23):不安全的远程登录协议,通常建议使用SSH替代。
RDP (3389):远程桌面协议,用于Windows远程桌面连接。
05 数据库服务
MySQL (3306):MySQL数据库服务,默认端口。
PostgreSQL (5432):PostgreSQL数据库服务,默认端口。
MongoDB (27017):MongoDB数据库服务,默认端口。
Oracle (1521):Oracle数据库服务,默认端口。
06 其他常用服务
DNS (53):域名系统,用于解析域名。
NTP (123):网络时间协议,用于同步时间。
SNMP (161/162):简单网络管理协议,用于网络设备监控。
DHCP (67/68):动态主机配置协议,用于自动分配IP地址。
TFTP (69):简单文件传输协议,用于无盘工作站启动等场景。
VNC (5900):虚拟网络计算,用于远程桌面控制。
07 示例:
HTTP (80):Web浏览器访问网站时使用的端口。例如,当你在浏览器中输入http://example.com时,浏览器会连接到该网站的80端口。
HTTPS (443):安全的Web浏览,使用SSL/TLS加密。例如,当你访问https://example.com时,浏览器会连接到该网站的443端口。
FTP (21):文件传输协议,用于上传和下载文件。例如,使用FTP客户端连接到服务器时,会连接到21端口。
SSH (22):安全Shell协议,用于远程登录和管理。例如,使用SSH客户端连接到远程服务器时,会连接到22端口。
攻击者可以利用端口扫描来发现目标系统上的漏洞和服务,从而进行进一步的攻击。常见的端口扫描方法包括全连接扫描、半连接扫描(SYN扫描)、UDP扫描等。
01 工具:
nmap:
nmap是一款功能强大的端口扫描和网络探测工具,支持多种扫描技术,如TCP SYN扫描、UDP扫描、操作系统检测等。nmap可以生成详细的报告,帮助用户了解目标系统的开放端口和服务。
示例:
使用nmap进行基本的端口扫描。
nmap 192.168.1.1高级用法:
使用nmap进行特定端口范围的扫描,并输出详细信息。
nmap -p 1-1024 -sV 192.168.1.1netcat (nc):
netcat是一个多功能的网络工具,可以用于端口扫描、数据传输、端口监听等多种用途。netcat简单易用,适合快速测试和调试。
示例:
使用netcat进行端口扫描。
nc -zv 192.168.1.1 1-102402 安全措施:
防火墙:
配置防火墙规则,限制不必要的端口访问。例如,在Linux系统中,可以使用iptables命令来配置防火墙规则。
示例:
允许SSH访问(22端口),拒绝其他所有入站流量。
iptables -A INPUT -p TCP --dport 22 -j ACCEPTiptables -A INPUT -j DROP入侵检测系统 (IDS):
监控网络流量,检测异常行为。IDS可以实时分析网络流量,识别潜在的攻击并发出警报。
示例:
使用Snort作为入侵检测系统。
snort -c /etc/snort/snort.conf -i eth0定期审计:
定期检查开放端口和服务,关闭不必要的端口。可以使用脚本或工具自动化这一过程。
示例:
编写一个简单的Bash脚本来检查开放的端口。
#!/bin/bashfor port in {1..1024}; do if netstat -tuln | grep -q ":$port "; then echo "Port $port is open" fidone端口转发是一种网络技术,用于将一个端口上的请求转发到另一个端口或另一台主机。这种技术常用于家庭和企业网络中,使得外部用户能够访问内部网络中的服务。
端口转发通常在路由器上配置,通过将外部IP地址和端口映射到内部IP地址和端口来实现。
NAT是一种将内部网络的私有IP地址转换为公共IP地址的技术,从而允许内部网络设备通过单个公共IP地址访问互联网。NAT可以分为几种类型:
静态NAT:将内部私有IP地址一对一地映射到外部公共IP地址。动态NAT:从内部私有IP地址池中动态分配外部公共IP地址。PAT (端口地址转换):也称为NAT重载,允许多个内部私有IP地址共享一个外部公共IP地址,通过端口号进行区分。01 应用场景:
家庭网络:
在家庭网络中,通常只有一个公共IP地址。通过端口转发,可以将外部对特定端口的请求转发到内部网络中的特定设备。例如,将外部对80端口的请求转发到运行Web服务器的内部计算机。
示例:
在家庭路由器上配置端口转发,将外部对80端口的请求转发到内部IP地址192.168.1.100的80端口。登录路由器管理界面。进入“端口转发”或“虚拟服务器”设置。添加新的端口转发规则:外部端口:80内部IP地址:192.168.1.100内部端口:80协议:TCP保存设置并重启路由器(如果需要)。企业网络:
在企业网络中,NAT被广泛用于多个内部设备共享一个或几个公共IP地址。通过NAT,企业可以节省公共IP地址资源,并提高网络安全性。
示例:
在企业网络中配置NAT,使得所有内部设备的流量通过一个公共IP地址访问互联网。在企业路由器或防火墙上启用NAT功能。配置内部网络的私有IP地址范围。配置外部公共IP地址。设置NAT规则,将内部私有IP地址转换为外部公共IP地址。保存设置并测试连接。来源:网络工程师俱乐部一点号