教你如何解决Nginx禁止ip加端口访问的问题

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/

Nginx禁止IP加端口访问

使用iptables 限制对应端口,再利用Nginx将80端口转发到对应端口

CentOS7默认的防火墙是 firewalle,先看看服务器中有没有安装 iptables

[root@VM-0-3-centos ~]# service iptables status

Redirecting to /bin/systemctl status iptables.service

Unit iptables.service could not be found.

安装 iptables

yum install -y iptables

关闭自带的防火墙 firewalld

# 停止firewalld服务 systemctl stop firewalld # 禁用firewalld服务 systemctl mask firewalld

服务命令

# 启动iptables systemctl start iptables.service # 停止iptables systemctl stop iptables.service # 重启iptables systemctl restart iptables.service

禁止外部访问8080端口

iptables -I INPUT -p tcp –dport 8080 -j DROP

允许本机访问8080端口

iptables -I INPUT -s 127.0.0.1 -p tcp –dport 8080 -j ACCEPT

放行80端口

iptables -A INPUT -p tcp –dport 80 -j ACCEPT iptables -A OUTPUT -p tcp –sport 80 -j ACCEPT

到此,就可以使用域名直接访问8080端口了,并且IP + 端口的方式,也已经无法访问

iptables常用命令

# 查看iptables现有规则 iptables -L -n # 允许所有访问 iptables -P INPUT ACCEPT # 清空所有默认规则 iptables -F # 清空所有自定义规则 iptables -X # 所有计数器归0 iptables -Z # 允许来自于lo接口的数据包(本地访问) iptables -A INPUT -i lo -j ACCEPT # 开放22端口 iptables -A INPUT -p tcp –dport 22 -j ACCEPT # 开放21端口(FTP) iptables -A INPUT -p tcp –dport 21 -j ACCEPT # 开放80端口(HTTP) iptables -A INPUT -p tcp –dport 80 -j ACCEPT # 开放443端口(HTTPS) iptables -A INPUT -p tcp –dport 443 -j ACCEPT # 允许ping iptables -A INPUT -p icmp –icmp-type 8 -j ACCEPT # 允许接受本机请求之后的返回数据 RELATED,是为FTP设置的 iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT # 其他入站一律丢弃 iptables -P INPUT DROP # 所有出站一律绿灯 iptables -P OUTPUT ACCEPT # 所有转发一律丢弃 iptables -P FORWARD DROP
免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞14 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容