Я планировал сделать один из моих домашних компьютеров почтовым сервером, на который я мог бы получать почту от других людей. У меня есть доменное имя, и я знаю, что мне нужен компьютер со статическим внешним IP-адресом, поэтому у меня есть экземпляр DigitalOcean с внешним статическим IP-адресом, но у моего будущего почтового сервера его нет - это типичная машина за роутером за роутером и тд. Я планирую сделать этот экземпляр DO сервером VPN, подключить к нему домен и подключить к нему мой почтовый сервер через VPN, а затем настроить переадресацию портов так, чтобы на почтовом сервере были доступны необходимые порты. Что мне не хватает? Есть ли обстоятельства, которые я не принимаю во внимание? Какими будут правила iptables в данном случае?
1 ответ
Нет ничего действительно сложного в том, что вы планируете, просто какая-то работа.
Вы не указали, какой тип VPN вы планируете использовать, поэтому я могу дать вам только общую рекомендацию: вы должны быть уверены, что ваш почтовый сервер будет всегда получать один и тот же (частный) IP-адрес на другом конце туннеля. (или мост, это зависит ...), поэтому вы должны убедиться, что знаете, как настроить статические IP-адреса для VPN-клиентов.
Что касается почтового сервера, я настоятельно рекомендую вам использовать IRedMail, полностью комплексное решение для почтовых серверов в мире Linux, которое может позаботиться обо всем за вас и которое сделает вашу жизнь как установщиком, так и администратором, намного проще
Теперь возникает мой вопрос: если вы уже прошли через учетную запись DO, почему бы не поставить на нее свой почтовый сервер вместо того, чтобы держать его дома? Преимущество этого состоит в том, что IRedMail поставляется с предварительно настроенным межсетевым экраном и fail2ban
, и они обеспечивают вам довольно хорошую безопасность. Если вместо этого вы поместите почтовый сервер в другое место, вам придется отдельно установить брандмауэр и fail2ban на машине DO.
Если вы решили оставить почтовый сервер дома, вам придется перенаправить некоторые порты из DO на почтовый сервер. Предполагая, что почтовый сервер имеет IP-адрес, в VPN 10.0.0.2 вам необходимы следующие правила:
iptables -t nat -A PREROUTING -p tcp -i etho --dport 110 -j DNAT --to-destination 10.0.0.2:110
iptables -A FORWARD -p tcp -d 10.0.0.2 --dport 110 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Это работает для порта 110 (порт прослушивания dovecot), TCP-соединения и предполагает, что внешний интерфейс вашего DO называется eth0
. Вам нужно будет определить, какие порты вы хотите оставить открытыми для мира.