端口(Port),逻辑意义上用于区分服务,端口号的范围从0到65535。
端口分类:
公认端口,从0到1023,绑定与一些常见服务,FTP服务->端口21,在/etc/services中存储映射关系。
注册端口,从1024到49151,离散的绑定服务;
动态/私有端口,用于任意软件与任何其他的软件通信的端口,使用因特网传输控制协议,或用户传输协议,从49152到65535。
本地TCP/UDP端口范围:
/proc/sys/net/ipv4/ip_local_port_range,可在此中,为程序选择端口。
概念:
指定机器上的端口开发,以便提供服务,需要服务的程序发送数据包到指定机器(ip)的端口。
一个ip可以提供不同的服务,如Web,Ftp...这些不同服务,通过ip地址+端口号来区分;
查看本地开放端口:
#1.nmap检测开放端口
yum install nmap
nmap localhost
#2.netstat检测开放端口
netstat -anlp | grep 端口号
#3.lsof检测开放端口
yum install lsof
lsof -i:端口号
#4.telnet检测端口开放
#Telnet是基于TCP的,默认端口是23。
#服务器端口即使处于监听状态,但是如果防火墙iptables屏蔽了23端口,是无法通过该方法检测端口是否开放。
telnet ip地址 端口号
#5.netcat检测端口开放
nc ip地址 端口号
关闭端口:
只需关闭端口对应的服务即可;
即使服务开启,但是防火墙对对应的端口进行了限制,这样端口也不能被访问,但端口本身并没有关闭,只是端口被屏蔽了。
开启端口(有防火墙):
1.添加/etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
2.重启服务:
/etc/init.d/iptables restart
3.3.查看端口是否开放:
/sbin/iptables -L -n