Я только начинаю работать с SSH, и мне нужен кто-то, кто разбирается в SSH в Ubuntu / Linux, чтобы дать мне полную картину работы с SSH.
В настоящее время я знаю, что SSH используется для безопасного подключения к компьютеру по сети, а затем для выполнения команд на этом компьютере с терминала вашей рабочей станции.
При настройке по умолчанию на чистой настольной установке Ubuntu 14.04 я пытаюсь подключиться к серверу Ubuntu (также чистая установка, без дополнительных пакетов) с помощью команды ssh и IP-адреса сервера:
ssh larryserver@192.168.0.3
С этим я получить сообщение «соединение отказано».
Прочитав https://help.ubuntu.com/community/SSH , я понимаю, что только ssh-клиент (в частности, openssh-клиент) поставляется с Ubuntu, а ssh-сервер - нет.
Затем я устанавливаю пакет openssh-server на сервер и повторяю указанную выше команду, которая затем позволяет мне ввести пароль для пользователя larryserver на сервере. Я в деле.
Что я хотел бы знать о ssh, помимо того, чему меня может научить страница справки ubuntu, так это то, где находятся ВСЕ важные файлы, имеющие отношение к ssh в Ubuntu, и для чего они используются.
/usr/bin/ssh
Файл выше, это двоичный файл, который выполняется, когда я ввожу команду ssh в терминал правильно?
Если openssh является клиентом и сервером для ssh, то что сообщает команде ssh, что эта конфигурация клиент / сервер используется ? Если я установил пакет клиента и сервера, который не является openssh, как команда ssh использует их вместо этого? Или команда ssh использует только openssh?
Спасибо!
То, что я хотел бы знать о ssh помимо того, что страница справки человечности может преподавать мне, - то, где ВСЕ важные файлы расположены, которые имеют отношение к ssh на Ubuntu и для чего они используются.
См. страницу руководства для ssh(1)
и sshd(8)
. Существует названная глава FILES
, где Вы видите все файлы, связанные с ssh
и sshd
(ssh сервер).
Файл выше, это - двоичный файл, который выполняется, когда я ввожу команду ssh в корректный терминал?
Да
Если openssh является клиентом и сервером для ssh затем, что говорит, что ssh управляют, чтобы эта клиент-серверная конфигурация использовалась?
Когда Вы работаете ssh
в режиме отладки (ssh -vvv remote_host
), Вы получите намного больше информации о том, что идет под капотом, включая используемые конфигурационные файлы.
Если Вы имеете в виду вызов ssh
, это основное *, ОТКЛОНЯЮТ материал, и это обрабатывается $PATH
переменная среды.
Если я установил пакет клиента и сервера, который не является openssh, как ssh управляет, используют их вместо этого? Или ssh управляет только использованием openssh?
У Вас есть некоторый пример "другого клиента и сервера" для ssh? В прошлый раз я помню, openssh имеет приблизительно 80%-ю "долю рынка".
Но я не вижу проблемы с другим двоичным файлом обеспечения пакета, помещенным в тот же путь вместо openssh
. Это - просто C код, скомпилированный в двоичный формат, помещенный в /usr/bin/
папка.
я только начинаю с SSH, и мне нужен кто-то, кто хорошо осведомлен относительно SSH на Ubuntu/Linux, чтобы дать мне целое изображение работы с SSH.
SSH является Безопасной Оболочкой - сетевой протокол реализованный различными программами, который позволяет машинам связываться. openSSH является реализацией (другие могут быть найдены здесь ) - один из самых популярных все же.
то, Что я хотел бы знать о ssh помимо того, что страница справки человечности может преподавать мне, - то, где ВСЕ важные файлы расположены, которые имеют отношение к ssh на Ubuntu и для чего они используются.
Вы видите некоторые 'важные' файлы путем рассмотрения список файлов для пакета (n.b., Вы можете проверять пакет непосредственно , Вы не должны использовать списки файлов онлайн) - большинство других файлов, важных для пакета, включено в пакеты зависимости, перечисленные здесь (например, для libssl).
Большая часть материала компилируется (таким образом, Вы не можете действительно видеть то, что это делает рассмотрение файла), если Вы хотите знать то, что это делает, Вы можете получать некоторое представление о том, что это делает от исходного кода |1 | |2 |
/usr/bin/ssh
файл выше, это - двоичный файл, который выполняется, когда я ввожу команду ssh в корректный терминал?
Обычно да. Зависит от $PATH
|1 | |2 | . Если ssh
исполняемый файл находится позже в пути, который может быть выполнен вместо этого
С вышеупомянутыми двумя точками, можно узнать больше о пакете и т.д. путем исследования:
Стандарт Иерархии Файловой системы - существует место почти для всего - bin
для исполняемых двоичных файлов, /etc
для конфигурации и т.д.
модель |1 Client Server | |2 | (где сервер ожидает вещей от клиента и обрабатывает их)
читавший https://help.ubuntu.com/community/SSH, я понимаю, что только ssh клиент (openssh клиент конкретно) приезжает установленный с Ubuntu, и ssh сервер не делает.
Thats, потому что не все хотят что-то (который имеет открытый порт, который может быть соединен также) работа их машины, которая позволяет другим получать доступ к нему удаленно - как Windows, выполняющий брандмауэр :) (существует также принцип, что больше точек доступа более трудно защитить). Клиент SSH полезен, как это может быть полезно, не будучи большой частью боли иначе.
N.B. я знаю часть этого материала, не стесняйтесь критиковать :D