Я пишу немного сценария удара для обновления файлов на веб-сервере от любого авторизованного компьютера. В конце я хочу использовать команду scp, чтобы сделать работу.
scp -i ~/.ssh/id_rsa $localpath $user@gpu.srv.ualberta.ca:$webpath
Веб-сервер находится на AFS, таким образом бросая открытый ключ в ~/.ssh/authenticated_keys не сокращает его, поскольку Вам нужен маркер для доступа к этому. Одно обходное решение, как описано в [1], "должно поместить закрытые ключи в ~/.ssh-private и поместить открытые ключи в ~/.ssh/authorized_keys. Доступ к ~/.ssh-private закрывается всем, но пользователь, в то время как доступ к ~/.ssh открыт до неаутентифицируемых пользователей".
Я хотел бы сделать это, но я не сетевой администратор. Я могу ssh 'вручную' путем предоставления пароля. Существует ли способ для меня выяснить, как он был расположен? Как это обычно делается?
Я нашел патч Kerberos/AFS для ssh, но не хотят погружаться в него, пока я не получаю некоторую обратную связь. (Я, вероятно, просто повредил бы свой OSX ssh команда!)
[1] cs.unc.edu/cgi-bin/howto?howto=ssh-keys (Извините за ссылку - мне только разрешают сделать одно активное.)
Почему необходимо было бы быть корнем для размещения файлов в ~
(например, через scp
)?
Для запутанного всегда существует ssh-copy-id
. Для установки открытого ключа от локальной машины, Вы были бы
# ssh-copy-id $user@gpu.srv.ualberta.ca
Это автоволшебно предположит Ваш который ключ установить. Поскольку все остальное взглянуло на страницу справочника.