1. 首页
  2. 技术知识

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

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到此这篇关于Nginx禁止ip加端口访问的文章就介绍到这了,更多相关Nginx禁止ip端口访问内容请搜索共生网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持共生网络!

原创文章,作者:starterknow,如若转载,请注明出处:https://www.starterknow.com/105687.html

联系我们