Я хотел бы использовать аутентификацию на основе ключей для входа на один из моих компьютеров. У него sshd работает на порте, который по умолчанию не равен 22.
Я хочу использовать ssh-copy-id
чтобы добавить мой ключ в список авторизованных ключей. Я попытался указать порт, используя -p
, как и для самой команды ssh. Однако тогда я получаю действительно странные сообщения об ошибках.
Например
user@box:~$ ssh-copy-id -p 57777 -i ~/.ssh/id_rsa.pub user@192.168.1.111
Bad port 'umask 077; test -d ~/.ssh || mkdir ~/.ssh ; cat >> ~/.ssh/authorized_keys'
user@box:~$ ssh-copy-id '-p 57777' -i ~/.ssh/id_rsa.pub user@192.168.1.111
Pseudo-terminal will not be allocated because stdin is not a terminal.
ssh: Could not resolve hostname umask 077; test -d ~/.ssh || mkdir ~/.ssh ; cat >> ~/.ssh/authorized_keys: Name or service not known
Как я могу заставить это работать? (Я знаю, что могу вручную добавить ключ в файл author_keys на сервере. Но мне лень и определенно любопытно, как убедить ssh-copy-id сделать свою работу :))