站点运行在nginx服务,然而我并不想使用root来跑这个服务,因此也没法使用80端口。于是想着是否可以使用iptables进行端口转发,将80端口的数据转发到nginx服务的端口8888。

在搜了一堆资料后,有了如下方法

#!/bin/bash
# nat表,PREROUTING链增加转发规则
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8888
# mangle表,PREROUTING链给发向8888的包做个标记
iptables -t mangle -A PREROUTING -p tcp -m tcp --dport 8888 -j MARK --set-mark 1
# filter表,INPUT链,首先允许所有本地接口的数据包
iptables -t filter -I INPUT -i lo -j ACCEPT
# 然后拒绝所有被标记了1的包
iptables -t filter -A INPUT -m mark --mark 1 -j REJECT

我很老了,记事也不清楚了
我现在记得的,只剩下这个故事
这故事,是你们都没有听说过的
孩子啊,应该听听我讲的这个故事
很美好,也很悲伤
它会教会你很多道理
也会指引你找到自己的梦想

在那神奇而古老的东方啊
曾经有一个没有多少人知晓的文明
勤劳又聪明的人们
在那片土地上孕育着无限的希望

人们共同守护着一块圣石
这块石头虽然看着普通
却有着异乎寻常的魔力
每逢灾难,必能化险为夷
它保护了农田躲过洪水来袭
它保护了民宅不被地震摧垮
它保护了人们免受瘟疫蔓延

- 阅读剩余部分 -