Есть ли способ ограничить порты FTPS как на стороне сервера, так и на стороне клиента?
Я уже читал этот ответ и у меня установлен vsftpd, чтобы ограничить использование пассивного порта узким диапазоном на стороне сервера. Я убедился, что это ограничение действительно работает - для сервера. Однако, если клиент находится за самим брандмауэром и тщательно ограничивает доступ с этой стороны, соединение не будет установлено. При проверке с помощью tcpdump выясняется, что используются произвольные высокие порты на стороне клиента.
SFTP не вариант. (Поверьте, я бы этого хотел.)
Теоретически да, но мне неизвестно какое-либо программное обеспечение FTP-клиента, которое позволило бы вам указать исходный порт, и, честно говоря, это, вероятно, вызовет больше проблем, чем решит, если вы начнете возиться с исходными портами на клиентском устройстве. На самом деле настраивается только порт назначения, я никогда не видел брандмауэра, который блокировал порты внутри или снаружи на основе исходного порта, это всегда пункт назначения
Еще одна причина, по которой не следует слишком экспериментировать с исходным портом, заключается в том, что он, скорее всего, будет изменен, когда попадет на маршрутизатор / брандмауэр исходного клиента. Большинство офисов / домов имеют только 1 внешний IP-адрес, поэтому для отслеживания подключений внутренние IP-адреса и исходные порты изменяются брандмауэром динамически, что обычно называется преобразованием адресов порта (PAT), даже если вы указали исходный порт на клиенте нет гарантии, что он будет таким же, когда он попадет на сервер.
Однако, если клиент находится за самим брандмауэром и тщательно ограничивает доступ с этой стороны, соединение не будет установлено.
Клиент (или его ИТ-отдел) должен разрешить эти порты на своем брандмауэре. Вы ничего не можете сделать, кроме как указать им, какие порты должны быть открытыми для исходящих.
Эти высокие порты на клиенте, вероятно, просто временные порты на хосте, пытающиеся установить соединение, это исходящий порт назначения (те, которые вы настроили на стороне сервера), которые, скорее всего, заблокированы на их брандмауэре для исходящего использования.