Домашний сервер на Ubuntu

Настройка порт-маппинга

Port-mapping - технология предоставления доступа из интернета к портам компьютера, расположенного внутри сети, к которому не имеющего прямого доступа извне.



Рассматривается на примере TCP 548 порта, используемого протоколом AFP.

1. В таблицу iptables вносятся следующие записи:
  • -A FORWARD -i eth0 -p tcp --dport 548 -j ACCEPT
  • -A PREROUTING -p tcp -d внешний_ип --dport 548 -j DNAT --to-destination 192.168.1.2:548 {в таблице NAT}
  • -A POSTROUTING -p tcp -d 192.168.1.2 --dport 548 -j SNAT --to-source внешний_ип {в таблице NAT}

2. Способ раз - через файл /etc/network/interfaces. Команда pre-up в данном файле выполняется ДО инициализации интерфейса, а post-up - после.
Команды:
  • post-up iptables -A FORWARD -i eth0 -p tcp --dport 548 -j ACCEPT
  • post-up iptables -t nat -A PREROUTING -p tcp -d внешний_ип --dport 548 -j DNAT --to-destination 192.168.1.2:548
  • post-up iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.2 --dport 548 -j SNAT --to-source внешний_ип

3. Способ два - через файл /etc/iptables.up.rules (см. п. 2
тут). Вписываются команды из п. 6.1.