Как использовать ssh-copy-id на нестандартном порту

Я бы хотел использовать аутентификацию на основе ключа для входа на один из моих компьютеров. У него 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 

Как я могу заставить его работать? (Я знаю, что могу вручную добавить ключ к файлу authorized_keys на сервере. Но мне лениво и определенно интересно, как убедить ssh-copy-id выполнять свою работу :))

  • Передача агента SSH с использованием разных имен пользователей и разных ключей
  • PubkeyAcceptedKeyTypes и тип ключа ssh-dsa
  • Откройте SSH порт плохую идею на малиновой пи?
  • SSH доступ к офисному хосту за NAT-маршрутизатором
  • Экран Windows PowerShell эквивалентен экрану
  • Неизвестный процесс linux со случайной командой
  • SSH-туннель через 2 сервера
  • Как перенести файл на мой сервер с помощью PuTTY?
  • 2 Solutions collect form web for “Как использовать ssh-copy-id на нестандартном порту”

    Цитата уже была хорошей идеей, но, скорее, так:

     ssh-copy-id -i /home/user/.ssh/id_rsa.pub '-p 57777 user@192.168.1.111' 

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

    (По-видимому, это известная проблема. См. Этот отчет об ошибке и этот )

    Для тех, кто хочет заменить сценарий, здесь мой ssh-copy-id.sh

     #!/bin/bash ssh $* 'mkdir -p ~/.ssh;echo '`cat ~/.ssh/id_rsa.pub`' >> ~/.ssh/authorized_keys;chmod 700 ~/.ssh;chmod 600 ~/.ssh/authorized_keys' 

    Теперь вы можете просто ssh-copy-id.sh blah@stuff.com -p123456

    Очевидно, что он не такой фантастический, как настоящий, но, по крайней мере, он работает для зарегистрированного пользователя.

    Interesting Posts

    Использовать Media Player Classic для повторной синхронизации субтитров?

    Как заблокировать рекламу в Internet Explorer?

    Определите, перекрываются ли два диапазона дат

    SSH-туннель через 2 сервера

    Как делиться процессором или оперативной памятью?

    Как правильно отобразить системный раздел truecrypt?

    Отклонить приглашение на небольшое дисковое пространство (Suspend, Power Off, Continue)

    Как я могу сделать курсор в Windows с настройкой нескольких мониторов, так как он перемещается между всеми мониторами с одинаковым разрешением?

    Как заблокировать определенный сайт с помощью файла hosts, даже если я подключен к VPN?

    Пересылка определенных портов через реверсовые туннели SSH

    Как отключить липкие углы в Windows 8?

    Как настроить Linux на работу как сервер RFCOMM SPP?

    Подключите внешний USB-накопитель в однопользовательском режиме

    CMD MOVE не может заменить каталоги в WIN 7

    Как открыть XPS-файлы в Firefox

    Давайте будем гением компьютера.