访问不到云服务器中的项目

  • 项目未部署成功

  • 防火墙端口没开放

    三种解决方案:关闭防火墙,防火墙开放访问的指定端口,配置iptables

  • 安全组端口没添加

1. 确定本地是否可以访问

curl http://127.0.0.1:3000

output:

hello<网页的内容>

说明是正常的

2. 检查是否开启3000端口

netstat -an | grep 3000

output

tcp        0      0 0.0.0.0:8890            0.0.0.0:*               LISTEN

3. 检查防火墙是否关闭

ubuntu:

output:

centos:

防火墙相关的操作(ubuntu)

关闭防火墙

开启防火墙

打开3000端口

防火墙重启

启动ufw防火墙

启动默认防御(阻止外部联接,放行对外联接)

允许其它主机访问本机53端口,协议包含tcp和udp

允许其它主机使用tcp协议访问本机25端口

ufw也可以检查 /etc/services文件,明白服务的名字及对应的端口和协议

ufw同时支持出入口过滤。用户可以使用in或out来指定向内还是向外。如果未指定,默认是inufw allow in http # 许可访问本机http端口

禁止访问外部smtp端口,不告知“被防火墙阻止”

禁止本机192.168.1.1对外访问,告知“被防火墙阻止”

要删除规则,只要在命令中加入delete就行了

实例

4. 检查iptables规则

查看所有规则

清楚所有规则

如果开启的防火墙,那就把添加的端口加到iptables规则里面

关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放。

下面是命令实现:

再用命令

查看 是否设置好, 好看到全部 DROP 了

这样的设置好了,我们只是临时的, 重启服务器还是会恢复原来没有设置的状态 还要使用 service iptables save 进行保存

service iptables save 看到信息 firewall rules 防火墙的规则 其实就是保存在 /etc/sysconfig/iptables

可以打开文件查看 vi /etc/sysconfig/iptables

下面我只打开3000端口,看我是如何操作的,就是下面2个语句

再查看下 iptables -L -n 是否添加上去, 看到添加了

现在Linux服务器只打开了22端口,用putty.exe测试一下是否可以链接上去。 可以链接上去了,说明没有问题。

最后别忘记了保存 对防火墙的设置 通过命令:service iptables save 进行保存

针对这2条命令进行一些讲解吧

-A 参数就看成是添加一条 INPUT 的规则

-p 指定是什么协议 我们常用的tcp 协议,当然也有udp 例如53端口的DNS

到时我们要配置DNS用到53端口,大家就会发现使用udp协议的,而 --dport 就是目标端口,当数据从外部进入服务器为目标端口,反之,数据从服务器出去,则为数据源端口 使用 --sport,-j 就是指定是 ACCEPT 接收 或者 DROP 不接收

删除iptables规则

5. 查看阿里云的安全网组的设置,将需要开放的端口加到安全组

阿里云安全组规则.jsonarrow-up-right

最后更新于