Использование FTP-клиента через VPS (двойной прыжок)

0

Можно ли войти на сервер с помощью клиента FTP (например, Cyberduck) через VPS, то есть сделать двойной переход для доступа к серверу?

Вот что я пытаюсь сделать: мой домашний компьютер - Mac, а мой обычный клиент S / FTP - Cyberduck. У меня есть Ubuntu VPS через DigitalOcean. Сервер, к которому я хочу подключиться, разрешает соединения только с IP (IPv6) моего VPS. Поэтому я хочу подключиться к серверу с помощью Cyberduck (или другого FTP-клиента Mac на основе графического интерфейса) через VPS. У меня есть открытые ключи, настроенные для подключения без пароля к VPS, и мне нужно использовать пароль для подключения к серверу с VPS.

Я хочу установить туннель? Или прокси? Или что?

Ответ, предоставленный в SFTP через двойной серверный прыжок, дает ответы только для командной строки или Windows. Я ищу решение с графическим интерфейсом на Mac.

thugsb
источник
sftpи ftpэто две очень разные вещи. Пожалуйста, убедитесь, что вы хотите. Я полагаю, что это возможно сделать с помощью инструмента netcatи ForceCommandопции ssh_config.
Jakuje
Я могу получить доступ к VPS и серверу только через SSH, но не через FTP. Cyberduck может использовать FTP или SFTP для просмотра папок и загрузки / редактирования файлов.
thugsb
1
возможный дубликат SFTP через двойной серверный прыжок
Jakuje
Можно ли использовать SSH вместо FTP?
harrymc

Ответы:

1

Звучит так, будто вы хотите подключиться к вашему VPS через туннель SSH, а затем оттуда использовать cyberduck для подключения к вашему другому серверу через этот туннель.

РЕДАКТИРОВАТЬ: Я понятия не имею, будет ли это работать для IPv6, но кто-то более знающий в этой области должен быть в состоянии помочь.

Итак, GUI для mac для туннелей ssh: http://projects.tynsoe.org/en/stm/ Менеджер туннелей SSH - отличный маленький инструмент, который поможет вам сэкономить при использовании командной строки для настройки туннеля.

Вот основы

Host: сервер, к которому вы хотите подключиться по SSH в качестве первого прыжка. В этом случае ваш VPS. Порт: это будет стандартный порт SSH (22)

Локальные перенаправления. Это туннелирование портов локального хоста (127.0.0.1:xxxxx) к соединению, установленному хостом, с другим компьютером и конкретным портом.

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

Удаленный хост: это адрес компьютера, к которому вы хотите подключить туннель на другом конце. то есть. Ваш конечный пункт назначения.

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

Вы можете увидеть на скриншоте команду, которая запускается в терминале от вашего имени.

Закройте окно настроек, а затем подключите туннель.
Туннели SSH

Следующим шагом является настройка вашего клиента FTP / SFTP.

Установите для хоста Cyberduck значение 127.0.0.1:222 (если вы выбрали 222 в левом столбце, как в примере с моим снимком экрана). Введите данные для аутентификации и нажмите «Подключиться».

Теоретически, звезды должны совпадать, и вы должны быть подключены к вашему второму серверу.

JackC
источник
0

Исходя из того, что я понимаю из ваших потребностей, я вижу 2 возможных решения:

  1. Используйте режим сервера s SOCKS ssh (опция «-D») и настройте Cyberduck на открытие вашего ftp-соединения с использованием этого сервера SOCKS (сервер = localhost, порт = локальный порт, указанный в опции -D ssh)

  2. Посмотрите и попробуйте " sshuttle ", программу с открытым исходным кодом, о которой я недавно слышал (но никогда не тестировал)

Удачи ! И скажите нам, сработало ли это для вас.

CuriousFab
источник
0

Как сказал @Jakuje в комментариях, просто напишите примерно так:

Match group users
    ChrootDirectory %h
    X11Forwarding no
    AllowTCPForwarding no
    ForceCommand internal-sftp

в конце /etc/ssh/sshd_configфайла в вашем Ubuntu VPS, который позволит всем пользователям в usersгруппе иметь sftpдоступ к своему домашнему каталогу. затем используйте ваш Mac-клиент (например, Cyberduck) для подключения к этому пользователю с правильной конфигурацией. тогда вы сделали;)

Можно также перейти group usersв любую группу, которую вы хотите, или просто использовать, Match user USERNAMEчтобы включить эту функцию только для одного пользователя.

Shahinism
источник
0

В конце я использовал инструкции здесь: http://backdrift.org/transparent-proxy-with-ssh

Затем я использовал способность TextWrangler «Открыть с SFTP-сервера», и это сработало. Кажется, что конкретное соединение, над которым я работал, каким-то образом блокировало кибер-утку, но это позволило TextWrangler.

thugsb
источник