翼度科技»论坛 云主机 LINUX 查看内容

云服务器开启端口

5

主题

5

帖子

15

积分

新手上路

Rank: 1

积分
15
目录

云服务器开启端口

CentOS开启端口


  • 防火墙添加端口
firewall-cmd --zone=public --add-port=端口/tcp --permanent
命令含义:
–zone #作用域
–add-port=1935/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

  • 重新载入,添加端口后重新载入才能起作用
firewall-cmd --reload

  • 查看端口是否开启
firewall-cmd --zone=public --query-port=端口/tcp

  • 阿里云服务器还需在控制台配置:
阿里云:https://ecs-buy.aliyun.com/wizard
1.进入 云服务器 ECS 找到 安全组
2.进入配置规则
3.在访问规则 入方向中添加需要开发的端口即可
至此Linux外网访问端口已开启
注:Linux打开端口命令每一个打开的端口,都需要有相应的监听程序才可以
查看端口监听程序
netstat -ntlp
-n/-numeric 以数值地址形式进行展示
-t/-tcp 显示 TCP 协议的连接情况
-l/-listening 仅显示监听中的套接字
-p/-program 显示套接字关联的程序名称和 PID
5.测试(Linux中有一个级强大的网络工具netcat,在默认情况下面都是没有安装的)

  • 安装nc
    切换到root用户:
yum install -y nc

  • 监听端口(当客户端链接之后关闭)
nc -lp 端口 &
-l 开启 监听模式,用于指定nc将处于监听模式。通常这样代表着为一个服务等待客户端来链接指定的端口。
-p 设置本地主机使用的通信端口。
本地使用 telnat 访问
telnat 服务器ip地址 端口
附:
  1. 查看防火墙状态: systemctl status firewalld
  2. 停止防火墙: systemctl disable firewalld
  3. 重启防火墙:systemctl restart firewalld
  4. 禁用防火墙: systemctl stop firewalld
  5. 查看开启了哪些端口:firewall-cmd --list-ports
  6. 关闭端口(需要重新载入):firewall-cmd --zone=public --remove-port=端口/tcp --permanent
复制代码
Ubuntu开启端口


  • 打开端口
    登录阿里云服务器,进入控制台,添加要打开的服务器端口到安全组
    下载ufw(这个工具用来操作防火墙,比如指定对外开放哪个端口), sudo apt-get install ufw
    打开防火墙, sudo ufw enable
    防火墙打开需要对外开放的端口, sudo ufw allow 端口号(注意,控制台做了另外一层防护,所以必须先在阿里云安全组打开端口, 就是本文的第一步的操作)
    查看防火墙状态, sudo ufw status, 可以查看上面的对外开放端口操作是否成功
  • 检测端口开放是否成功
    使用端口, nc -lp 端口号
    注意,这里相当于打开一个程序,使用对应端口, 这个程序占用目前这个端口。如果后面有程序要使用,就先关闭这个进程
    在另外一台机器使用telnet + ip + 端口号,如telnet xxx.xxx.xxx.xxx 9944, 如果可以连接,说明开放端口已经成功
  • 说明
    阿里云服务器千万不要随便使用sudo ufw default deny命令, 会拒绝一切远程连接,包括在控制台也不能重新进入服务器,只能发工单解决
    禁用端口命令sudo ufw deny 端口号
    删除防火墙的某条规则sudo ufw delete allow smtp(这里是删除allow smtp规则)
    关闭防火墙sudo ufw disable
  • 一些很有用的操作
    netstat -tnlp | grep :9945 查看9945端口占用的进程
    kill -9 进程id, 杀掉进程

来源:https://www.cnblogs.com/AJun816/p/17301515.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具