Здравствуйте!
Хочу на домашнем ПК поднять пару сайтов.
Имеем домашний ПК(сервер), который используется в качестве шлюза. В нем две сетевухи одна смотрит наружу другая в локальную сеть.
На сервере поднять proxmox. Поднял виртуалку(web-сервер) с линуксом на котором развернул сайт.
Сервер - 192.168.1.1
Web-сервер - 192.168.1.186
По ip=192.168.1.186 внутри локальной сети сайт открывается. Как прокинуть порт, чтоб по глобальному ip открывался сайт с вирутальной машины.
На сервере имеем следующий конфиг iptables
IPTABLES=/sbin/iptables
INT_IP=192.168.1.1 #сервер шлюз
INT_IT=vmbr0
EXT_IP=111.111.11.11 #ip глобальный
EXT_IT=eth1
date
echo 0 > /proc/sys/net/ipv4/ip_forward
$IPTABLES -F
$IPTABLES -t filter -A FORWARD -s 192.168.1.0/24 -d 87.240.128.0/18 -p tcp --dport 443 -j REJECT
$IPTABLES -t filter -A FORWARD -s 192.168.1.0/24 -d 87.240.131.0/18 -p tcp --dport 443 -j REJECT
$IPTABLES -t filter -A FORWARD -j TCPMSS -p tcp --tcp-flags SYN,RST SYN --clamp-mss-to-pmtu
$IPTABLES -t filter -A INPUT -j ACCEPT -m state --state RELATED,ESTABLISHED
$IPTABLES -t filter -A INPUT -j ACCEPT -s 127.0.0.1 -d 127.0.0.1
$IPTABLES -t filter -A INPUT -j ACCEPT -i $INT_IT -p udp -m multiport --dport 53,67,68
$IPTABLES -t filter -A INPUT -j ACCEPT -i $INT_IT -p tcp -m multiport --dport 80,81,445,5038,5060,3306,3128
$IPTABLES -t filter -A INPUT -j ACCEPT -i $INT_IT -p tcp --dport 22
$IPTABLES -t filter -A INPUT -j ACCEPT -i $INT_IT -p tcp -m multiport --dport 8006
$IPTABLES -t filter -A INPUT -j ACCEPT -i $INT_IT -p icmp
$IPTABLES -t filter -A INPUT -j ACCEPT -i $INT_IT -p igmp
$IPTABLES -t filter -A INPUT -j ACCEPT -i $INT_IT -p ospf
$IPTABLES -t filter -A INPUT -j REJECT -i $INT_IT
$IPTABLES -t filter -A FORWARD -j TCPMSS -p tcp --tcp-flags SYN,RST SYN --clamp-mss-to-pmtu
$IPTABLES -t filter -A INPUT -j ACCEPT -m state --state RELATED,ESTABLISHED
$IPTABLES -t filter -A INPUT -j ACCEPT -s 127.0.0.1 -d 127.0.0.1
$IPTABLES -t filter -A INPUT -j ACCEPT -i $EXT_IT -p tcp --dport 22
$IPTABLES -t filter -A INPUT -j ACCEPT -i $EXT_IT -p tcp -m multiport --dport 8006,10050
$IPTABLES -t filter -A INPUT -j ACCEPT -i $EXT_IT -p tcp -m multiport --dport 80,81
$IPTABLES -t filter -A INPUT -j ACCEPT -i $EXT_IT -p icmp
$IPTABLES -t filter -A INPUT -j ACCEPT -i $EXT_IT -p igmp
$IPTABLES -t filter -A INPUT -j ACCEPT -i $EXT_IT -p ospf
$IPTABLES -t filter -A INPUT -j ACCEPT -i $EXT_IT -p gre
$IPTABLES -t filter -A INPUT -j DROP -i $EXT_IT
$IPTABLES -t mangle -F
$IPTABLES -t mangle -A FORWARD -j TCPMSS -p tcp --tcp-flags SYN,RST SYN --clamp-mss-to-pmtu
$IPTABLES -t mangle -A OUTPUT -j TOS -o $INT_IT -p udp --set-tos 0x10
$IPTABLES -t mangle -A INPUT -j TOS -i $INT_IT -p udp --set-tos 0x10
$IPTABLES -t nat -F
$IPTABLES -t nat -A PREROUTING -j DNAT -i $EXT_IT -p tcp --dport 80 --to-destination 192.168.1.186:80
$IPTABLES -t nat -A POSTROUTING -p tcp -m tcp -s 192.168.1.186 --sport 80 -o $EXT_IT -j SNAT --to-source 111.111.11.11:80
$IPTABLES -t nat -A PREROUTING -s 192.168.1.0/16 ! -d 192.168.1.0/16 -p tcp --dport 80 -j REDIRECT --to-ports 3128 #redirect HTTP to proxy
$IPTABLES -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT -o $EXT_INT --to-source $EXT_IP #internet access
echo 1 > /proc/sys/net/ipv4/ip_forward
При таком конфиге при открытие страница по глобальному ip извне получаю страницу с 192.168.1.1 (на нем тоже поднят апаче),не происходит перенаправление на виртуальную машину.