Настройка Proftpd с Google Compute Engine с использованием пассивных портов? - PullRequest
0 голосов
/ 05 июня 2019

Так что я немного запутался.У нас есть несколько станций по увлажнению почвы, которые передают данные на наш сервер через ftp.Мы не можем изменить это на sftp или ftps, старый добрый обычный ftp: /

Я установил новую версию Ubuntu 18.04.Я также установил proftpd и могу успешно подключиться к серверу через FileZilla как в пассивном, так и в активном режимах.Я включил порт 21 и диапазон для пассивных портов (49152-65534), которые установлены в конфигурации proftpd, а также включил их в правилах брандмауэра Google VPC.

Все выглядит хорошо ... принимайте, когдастанция пытается подключиться к серверу.Я получаю записку, в которой говорится, что станция подключена, но при попытке запустить ее в пассивном режиме происходит сбой.Примечание об ошибке: «Имя хоста не найдено»

Я пытался отключить UseReverseDNS, но это, похоже, ничего не делает.

Я должен также отметить, что у нас есть установка Proftpd иработает над более старой настройкой VPS вне GCP.Это работает без проблем, с той же конфигурацией.

Вот полный журнал станции, которая пытается подключиться

Re-using existing connection! (#0) with host xx.xx.xx.xx
Connected to xx.xx.xx.xx (xx.xx.xx.xx) port 21 (#0)
Request has same path as previous transfer
PASV^M
Connect data stream passively
ftp_perform ends with SECONDARY: 0
227 Entering Passive Mode (10,152,0,20,232,150).^M
Hostname was NOT found in DNS cache
  Trying 10.152.0.20...
Connecting to 10.152.0.20 (xx.xx.xx.xx) port 59542

А затем журналы с сервера, на котором работает proftpd

[05/Jun/2019:06:07:17 +0000] "PASS (hidden)" 230 -
[05/Jun/2019:06:07:17 +0000] "PWD" 257 -
[05/Jun/2019:06:07:17 +0000] "CWD incoming" 250 -
[05/Jun/2019:06:07:17 +0000] "PASV" 227 -

Вы можете видеть, что он подключается и может перейти в правильный каталог, но в этом случае происходит сбой.

Кто-нибудь сталкивался с этим или с чем-то похожим на это раньше?Мне интересно, связано ли это с тем, как Google задает имя хоста.

Редактировать: Заметьте, другие vps, диапазоны портов

Ответы [ 2 ]

2 голосов
/ 06 июня 2019

Хорошо, так что ответьте на этот вопрос, если кто-нибудь сталкивался с ним.

В proftpd.conf я раскомментировал MasqueradeAddress и установил IP-адрес в соответствии со статическим IP-адресом сервера;IE MasqueradeAddress xx.xx.xx.xx, где xx.xx.xx.xx - статический IP-адрес данного сервера.

Я также создал свою собственную конфигурацию и поместил ее в conf.d со следующим

UseReverseDNS off
IdentLookups off

Без отключенияUseReverseDNS и IndentLookups истекло время ожидания соединения и станции, на которых невозможно загрузить.

Дополнительная информация, если вы заинтересованы

0 голосов
/ 05 июня 2019

Во время установления соединения в пассивном режиме клиент будет использовать порт 21 для инициации соединения. После этого клиент будет использовать случайный порт из диапазона и будет использоваться сервером для отправки ответа. На самом деле вы можете увидеть в журнале клиента, который пытается подключиться к порту 59542, и он, вероятно, сбрасывается сервером. Я предлагаю проверить, есть ли у вас конкретное правило брандмауэра в GCP, чтобы открыть диапазон портов в зависимости от конфигурации клиента. Вы можете проверить эту информацию здесь: https://slacksite.com/other/ftp.html Также предлагаю проверить правила внутреннего брандмауэра системы.

...