Я хочу получить удаленный доступ к серверу Linux в моей частной локальной сети через HTTPS и SSH.
Сервер не подключен к моему маршрутизатору DSL (немецкий Fritz!Box). Поскольку я не могу получить прямой доступ к своему серверу из-за этого, я настроил переадресацию порта NAT на порты 443 и 22.
Что я не учел, так это недостатки переадресации портов NAT: на моем локальном сервере я могу видеть только IP-адрес моего маршрутизатора как отправителя каждого пакета.
Я управляю небольшим виртуальным сервером Linux, где я использовал fail2ban и некоторые правила iptables, чтобы предотвратить некоторые атаки (например, ограничить разрешенные IP-адреса для подключений к моей стране), и fail2ban автоматически блокирует IP-адреса, на которых было слишком много неудачных попыток входа в систему.
Из-за NAT я не могу сделать то же самое с моим локальным сервером (или я могу?). Так что мне делать?
Я подумал об использовании моего виртуального сервера в качестве ретранслятора: открыв SSH-соединение от моего локального сервера до моего публичного сервера и создав два обратных SSH-туннеля. Виртуальный сервер может затем применить некоторые правила брандмауэра.
Это разумный подход? У вас есть какие-нибудь намеки, что еще может иметь смысл?