![无法在 CentOS 7 启动 AWS 时打开自定义端口](https://linux22.com/image/729536/%E6%97%A0%E6%B3%95%E5%9C%A8%20CentOS%207%20%E5%90%AF%E5%8A%A8%20AWS%20%E6%97%B6%E6%89%93%E5%BC%80%E8%87%AA%E5%AE%9A%E4%B9%89%E7%AB%AF%E5%8F%A3.png)
我已经期待这问题并注意到,当他运行 netstat -ltpn 时,他确实有 8080 端口条目,但在我的例子中,所需的端口 8069 未输入在此列表中。
这是我到目前为止的步骤
sudo yum install firewalld -y
sudo systemctl start firewalld
sudo systemctl enable firewalld
sudo systemctl status firewalld
状态的输出是:
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2018-11-11 09:02:38 UTC; 6min ago
Docs: man:firewalld(1)
Main PID: 27702 (firewalld)
CGroup: /system.slice/firewalld.service
└─27702 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
Nov 11 09:02:37 ip-172-31-29-154.us-west-2.compute.internal systemd[1]: Start...
Nov 11 09:02:38 ip-172-31-29-154.us-west-2.compute.internal systemd[1]: Start...
Hint: Some lines were ellipsized, use -l to show in full
然后我尝试打开端口 8069:
sudo firewall-cmd --zone=public --add-port=8069/tcp --permanent
sudo systemctl stop firewalld
我还在 aws 安全组中添加了入站端口 8069 图像
以下是输出netstat -ltpn
[root@ip-172-31-29-154 ~]# netstat -ltpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 471/rpcbind
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1088/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 954/master
tcp6 0 0 :::111 :::* LISTEN 471/rpcbind
tcp6 0 0 :::22 :::* LISTEN 1088/sshd
tcp6 0 0 ::1:25 :::* LISTEN 954/master
当我尝试在窗口命令提示符中运行命令时
telnet "host public IP" 8069
然后它说
Connecting To "host public IP"...Could not open connection to the host, on port 80: Connect failed
答案1
您没有配置任何在端口 8069 上响应的服务。
netstat 仅显示正在监听(等待请求)服务的端口。telnet 也一样,您不能连接到任何端口并期待响应。
您必须了解如何配置您希望在该端口上监听的服务以便实际在该端口上监听。
和:如果您启用了防火墙,则必须绝对确保您的 SSH 端口(22)被允许,否则您可能会将自己拒之门外!