Я должен настроить передачу файлов, для которой я получил следующую информацию о доступе, Но я не уверен, как соединиться, едва используя SSH прежде. Инструкции, которые я получил:
Во-первых: ssh user1@domain1.com, пароль: password1
затем: ssh user2@domain2.com, пароль: password2
Я нахожусь на Mac. Какой клиент и настройки я должен использовать?
Хорошо, по-видимому, Вы сказали, что первый сервер является просто реле, поэтому давайте использовать Туннель SSH. Вот то, что можно сделать в Терминале:
ssh -N -t -x -L 45454:domain2.com:22 user1@domain1.net
После ввода пароля Вы не будете видеть, что что-либо происходит. (Кроме того: удалите -N
на самом деле видеть командную строку domain1.net
.) И затем в Передаче, Вы просите соединяться с:
Пользователь: user2
Домен (сервер): localhost
Порт: 45454
Протокол: SFTP (SSH)
Это должно обычно позволять Вам использовать Передачу для соединения со вторым сервером через реле первого.
При выполнении остановите Передачу, и затем в Терминальном Ctrl-C хита для остановки ssh
также. (Или, если Вы запустили ssh
без -N
параметр, затем введите exit
вместо того, чтобы использовать Ctrl-C.)
Причина, что будет два логина, состоит в том, что domain2.com будет скрыт позади domain1.com и только доступный из. Это часто делается из соображений безопасности, или просто потому что domain2.com находится на другой части сети, не доступной с внешней стороны.
Это зависит от того, что необходимо сделать на этих машинах. Ususally, лучший способ состоит в том, чтобы использовать командную строку. Чтобы сделать это, Вы просто открываете Terminal (/Applications/Utilities/Terminal.app), где Вы сможете ввести эти команды.
Если единственная вещь, которую необходимо сделать, скопировать файлы, то можно использовать Киберутку или Передачу. Это - клиент FTP, но можно использовать режим SFTP, который будет своего рода FTP по SSH :). (Все серверы не могли бы никакая поддержка этот режим, в этом случае необходимо будет использовать команду scp),
С точки зрения чисто командной строки Вы сделали бы что-то вроде этого:
В окне терминала № 1:
$ ssh -L 2122:domain2.com:22 user1@domain1.com
введите пароль при выяснении (password1). В окне терминала № 2:
$ scp -P 2122 -o HostKeyAlias=domain2.com user2@localhost:/path/to/remote/file /local/file
ввод пароля при выяснении (password2).
Номер порта 2122 может быть чем-либо, что Вы хотели бы (выше 1024 и ниже того, что макс. номер порта). Номер порта 22 не должен быть изменен.
HostKeyAlias установлен так, чтобы имя хоста могло искаться правильно в known_hosts файле.
Откройте Terminal (в Вашей папке Applications/Utilities) и введите команды, как дали. OS X идет с программой SSH.
Существует GUI ssh программы, но материал командной строки кажется, что это будет более подходящим для этого, так как они уже дают Вам командные строки.
Только если необходимо получить доступ к файлам довольно часто, и только рекомендуемый после того, как процедуры с помощью Киберутки или Передачи были успешны (для обеспечения учетных данных, и все в порядке):
Смонтируйтесь domain2.com
ресурсы локально с помощью SSHFS с FUSE для OS X (раньше упакованный в MacFUSE, но это не поддерживает 10.6 и).
ssh-L-N 45454:domain2.com:22 user1@domain1.com
проект-oport=45454 sshfs user2@localhost:/~/, follow_symlinks, volname=Project
Вторая строка может также быть сделана через GUI, с помощью Macfusion, но затем, несомненно, сможет прочитать примечания SSHFS об этом.