netstat -ntpl (TCP类型的端口)
a 表示所有
n 表示不查询dns
t 表示tcp协议
u 表示udp协议
p 表示查询占用的程序
l 表示查询正在监听的程序
在ubuntu下面开放端口好像主要有两种方法,一种是ubuntu自带的防火墙,一种是iptables,这里我们主要使用iptables
一般情况下,ubuntu安装好的时候,iptables会被安装上,没有安装上也没啥,一条命令就可以安装了。
安装好了之后就可以添加规则了: 开放端口
然后就可以保存了
如果服务器重启,保存的信息就掉了,所以我们需要持久化一下端口信息,这里我们使用 iptables-persistent
在/etc/services中添加端口以及对应进程名及协议(tcp/udp),如果开启防火墙的要在防火墙设置/etc/sysconfig/iptables增加对应的端口例增加80端口防火墙添加如下:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
查询端口是否有进程守护用如下命令grep对应端口
例:netstat -nalp|grep 80
当Linux打开防火墙后,你会发现,从本机登录23端口是没有问题的,但是如果从另一台pc登录该linux系统后,你会发现提示这样的错误:不能打开到主机的连接, 在端口 23: 连接失败
因为linux防火墙默认是关闭23端口的,如果允许远程登录,可以关掉防火墙,也可以开防火墙开放23端口,具体如下:
即时生效,重启后失效
开启: service iptables start
关闭: service iptables stop
重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off
在开启了防火墙时,做如下设置,开启相关端口
修改/etc/sysconfig/iptables 文件,添加以下内容:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT
查看防火墙 iptables -L
------------------
netstat -nupl (UDP类型的端口)
netstat -ntpl (TCP类型的端口)
你可以使用 lsof 命令来查看某一端口是否开放。查看端口可以这样来使用,我就以80端口为例:
lsof -i:80
如果有显示说明已经开放了,如果没有显示说明没有开放。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)