搜尋

首頁  >  問答  >  主體

區域網路 - Linux下怎麼讓nginx能被其他裝置存取?

怎麼讓運行在 linux 下的 nginx 伺服器能夠被區域網路甚至外網中的其他裝置存取呢?

網路上查到跟 iptables 有關,但是這個東西要怎麼調整呢?

天蓬老师天蓬老师2791 天前758

全部回覆(1)我來回復

  • ringa_lee

    ringa_lee2017-05-16 17:23:56

    Ubuntu上這樣開關防火牆ufw:

    # 开启防火墙(开放80端口):
    sudo ufw enable && sudo ufw default deny && sudo ufw allow 80/tcp && sudo ufw status
    # 关闭防火墙:
    sudo ufw disable && sudo ufw default allow
    sudo iptables -F && sudo iptables -X && sudo iptables -Z && sudo iptables -L

    如果不想使用Ubuntu提供的ufw,也可以直接使用iptables:

    sudo ufw disable && sudo ufw default allow #用于确保INPUT/FORWARD/OUTPUT几条链都是ACCEPT状态,否则网络访问中断,包括ssh.
    sudo iptables -F && sudo iptables -X && sudo iptables -Z && sudo iptables -L
    sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    sudo iptables -A INPUT -i lo -j ACCEPT
    sudo iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT
    sudo iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT
    sudo iptables -A INPUT -j DROP
    iptables-save > /etc/iptables.up.rules #切换到root用户执行,sudo会提示无权限
    sudo nano /etc/network/interfaces #在末尾添加一行,在网络启动时应用防火墙规则: 
    pre-up iptables-restore < /etc/iptables.up.rules
    #查看设置的规则:
    sudo iptables -nvL --line-numbers
    #插入一条规则到INPUT链第6的位置:
    sudo iptables -I INPUT 6 -j DROP
    #修改INPUT链的第6条规则:
    sudo iptables -R INPUT 6 -j ACCEPT
    #删除INPUT链第6条规则:
    sudo iptables -D INPUT 6

    回覆
    0
  • 取消回覆