Терминал не разрешит SSH для Linux

Терминал не разрешит SSH для Linux

У меня есть VPS, к которому я раньше обращался через Терминал. Когда я открываю Терминал, я получаю

Последний вход: Вт авг 29 04:02:48 на ttys002 Mac-mini:~ administator$

Все статьи, которые мне удалось найти в Google, говорят об использовании

сш[email protected]

Это возвращает сообщение об отказе в доступе, когда я ввожу пароль (я на 100% уверен, что пароль и имя пользователя верны). Я знаю, что причина в том, что Terminal не выходит за пределы Mac. В прошлом я нашел команду, которую нужно ввести, прежде чем вы сможете ввести "ssh[email protected]". Это как если бы мне пришлось ввести команду для выхода из локального хоста Mac, а затем ввести информацию о сервере SSH.

Мой вопрос: кто-нибудь знает, что это за команда? Я обыскал весь Google и не смог найти информацию, которую нашел раньше, а моя страница с закладками была удалена.

Спасибо!!

решение1

Если предположить, что VPS размещен на AWS, то недостающая команда, о которой вы говорите, будет путем к файлу access-file (.PEM). Например:
ssh -i path/to/AccessKey.pem [email protected]

Подробная информация здесь:https://99robots.com/how-to-ssh-to-ec2-instance-on-aws/

решение2

Если вы используете ssh из терминала Mac, вам нужно будет подключиться к удаленному серверу, на котором запущен sshd (демон ssh).

Чтобы это произошло, должны быть соблюдены некоторые условия:

  • вы должны быть в сети (у вас есть IP-адрес и маршрутизатор, DNS полезен)
  • удаленный сервер должен быть в сети
  • Эти сети должны быть соединены между собой таким образом, чтобы был возможен трафик. netstat -nrпокажет таблицу маршрутизации на OSX, Linux и Windows (при условии, что netstat разрешен) tracerouteи pingможет помочь, но в Интернете они обычно блокируются.
  • если вы работаете в компании, то использование ssh может быть запрещено.
  • удаленный сервер может не разрешить это
  • любая сеть между ними может не допустить этого

Если все вышеперечисленное в порядке, то вы можете попробовать telnet server 22предположить, что он работает на стандартном порту, и что Sierra — это последняя версия OSX. Это покажет наличие tcp-подключения.

Теперь ssh. Обе стороны должны договориться обо всех деталях.

  • Вероятно, аутентификация по паролю отключена, или пароль может храниться на сервере каталогов.
  • вам не следует подключаться как пользователь root
  • следует использовать альтернативный механизм аутентификации, пара ключей очень распространена, но возможны токены, сертификаты, одноразовые пароли, kerberos. Мы не знаем, но ваш хостинг-партнер знает. Пары ключей используются по умолчанию. У AWS и GCE свои способы, у каждого есть страницы с инструкциями.
  • Вам должен быть разрешен доступ к ssh и его файлам на вашем Mac, и эти файлы должны иметь ограничительные права доступа.
  • вы должны иметь возможность добавить IP-адрес в ~/.ssh/known_hosts
  • если ключи ssh на вашем Mac находятся в (скрытом) каталоге .ssh в вашем домашнем каталоге. Используйте ssh-keygenдля создания пары и отправки файла pub администратору.
  • если вы локальный администратор, то вам следует добавить файл pub в файл authorized_keys для пользователя linux, в который нужно войти. Консольный сеанс необходим, если никто не может использовать ssh. Его местоположение файла указано в файле sshd_config, обычно $HOME/.ssh/authorized_keys.

Существуют и более загадочные случаи, такие как несовместимые шифры и несовпадающие версии, но если оба конца обновлены, вышеизложенное должно помочь вам найти проблему. Если нет, вам нужна помощь изнутри, то есть root на вашем сервере sshd может tail -f /var/log/secure.

Связанный контент