мета-данные страницы
Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| soft:openssh [2025/03/17 16:40] – создано radi0dev | soft:openssh [2025/11/09 12:07] (текущий) – внешнее изменение A User Not Logged in | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | ====== openssh ====== | ||
| + | |||
| https:// | https:// | ||
| - | [[SSH|Подробнее о протоколе SSH]] | ||
| - | ___ | + | ===== ssh-keygen |
| - | ## ssh-keygen | + | |
| Программа-генератор RSA/DSA ключей | Программа-генератор RSA/DSA ключей | ||
| - | #### Синтаксис | + | ==== Синтаксис |
| - | ```shell | + | |
| + | <code bash> | ||
| ssh-keygen [-q] [-b < | ssh-keygen [-q] [-b < | ||
| ssh-keygen -p [-P < | ssh-keygen -p [-P < | ||
| - | ``` | + | </ |
| + | |||
| + | ==== Опции ==== | ||
| - | #### Опции | + | - '' |
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| - | - `-f < | + | ===== sshd ===== |
| - | - `-t < | + | |
| - | - `-b < | + | |
| - | - `-N < | + | |
| - | - `-P < | + | |
| - | - `-p` - запрашивает изменение ключевой фразы приватного ключа вместо создания нового приватного ключа. Предложит указать имя файла содержащего приватный ключ, старую ключевую фразу и, дважды, | + | |
| - | - `-C < | + | |
| - | - `-D < | + | |
| - | ___ | + | |
| - | ## sshd | + | '' |
| - | **sshd** | + | |
| Синтаксис команды: | Синтаксис команды: | ||
| - | ```shell | + | <code bash> |
| sshd [-deiqtDL46] [-b < | sshd [-deiqtDL46] [-b < | ||
| - | ``` | + | </ |
| - | #### Опции | + | ==== Опции |
| - | - `-b < | + | |
| - | - `-d` - Режим отладки. Сервер посылает отладочную информацию в файл регистрации событий системы и не переходит в фоновый режим работы. Также сервер не создает дочерних процессов и обрабатывает только одно соединение. Этот параметр предназначен только для настройки сервера. Несколько параметров -d, указанных один за другим, | + | |
| - | - `-е` - Если указан этот параметр, | + | |
| - | - `-f < | + | |
| - | - `-g < | + | |
| - | - `-h < | + | |
| - | - `-i` - Определяет, | + | |
| - | - `-k < | + | |
| - | - `-p < | + | |
| - | - `-q` - Режим молчания. В системный журнал регистрации событий не будет занесено никакой информации. | + | |
| - | - `-t` - Режим тестирования. Только проверяет соответствие файла конфигурации и безопасность ключей. | + | |
| - | - `-u < | + | |
| - | - `-D` - Когда указан этот параметр, | + | |
| - | - `-V < | + | |
| - | - `-4` - Принуждает sshd использовать только IPv4 адреса. | + | |
| - | - `-6` - Принуждает sshd использовать только IPv6 адреса. | + | |
| - | #### Конфиг | + | - '' |
| - | `sshd` настраивается через | + | - '' |
| - | Для применения настроек нужно дёрнуть службу | + | - '' |
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | |||
| + | ==== Конфиг | ||
| + | |||
| + | '' | ||
| + | Для применения настроек нужно дёрнуть службу | ||
| Пример: | Пример: | ||
| - | ``` | + | < |
| # слушать 22ой порт | # слушать 22ой порт | ||
| Port 22 | Port 22 | ||
| Строка 71: | Строка 75: | ||
| # резрешить запуск X11 приложений | # резрешить запуск X11 приложений | ||
| X11Forwarding yes | X11Forwarding yes | ||
| - | ``` | + | </ |
| Интересный факт: приветствие, | Интересный факт: приветствие, | ||
| - | ___ | + | ===== ssh ===== |
| - | ## ssh | + | |
| Мощный инструмент, | Мощный инструмент, | ||
| - | Синтаксис команды выглядит так: | + | Синтаксис команды выглядит так:\\ |
| - | `ssh [опции] [имя пользователя@]< | + | '' |
| Tip: | Tip: | ||
| - | В `.ssh/config` можно задать псевдонимы в следующем формате: | + | В '' |
| - | ``` | + | < |
| Host radi0ss | Host radi0ss | ||
| HostName 188.227.87.62 | HostName 188.227.87.62 | ||
| Строка 90: | Строка 94: | ||
| Port 22 | Port 22 | ||
| ProxyCommand ssh -W %h:%p root@188.227.87.62 | ProxyCommand ssh -W %h:%p root@188.227.87.62 | ||
| - | ``` | + | </ |
| - | #### Опции | + | |
| - | Общие параметры | + | ==== Опции |
| - | - `-f` - перевести ssh в фоновый режим; | + | |
| - | - `-g` - разрешить удалённым машинам обращаться к локальным портам; | + | Общие параметры |
| - | - `-l < | + | - '' |
| - | - `-n` - перенаправить стандартный вывод в / | + | - '' |
| - | - `-N` - указывает, | + | - '' |
| - | - `-p <n>` - указать порт для подключения на удалённой машине; | + | - '' |
| - | - `-q` - не показывать сообщения об ошибках; | + | - '' |
| - | - `-v` - режим отладки, | + | - '' |
| + | - '' | ||
| + | - '' | ||
| | | ||
| - | Перенаправление X11 | + | Перенаправление X11 |
| - | - `-X` - включить перенаправление X11; | + | - '' |
| - | - `-x` - отключить перенаправление X11; | + | - '' |
| | | ||
| - | Перенаправление портов и туннелирование | + | Перенаправление портов и туннелирование\\ |
| - | - `-L [локальный_адрес: | + | - '' |
| - | - `-R [удаленный_адрес: | + | - '' |
| - | - `-D [bind_address: | + | - '' |
| - | - `-w local_tun[: | + | - '' |
| | | ||
| - | Аутентификация и ключи | + | Аутентификация и ключи |
| - | - `-i < | + | - '' |
| - | - `-A` - включить переадресацию агента | + | - '' |
| | | ||
| - | Протоколы и адреса | + | Протоколы и адреса |
| - | - `-4` - принудительное использование только IPv4 адресов; | + | - '' |
| - | - `-6` - принудительное использование только IPv6 адресов; | + | - '' |
| - | - `-1` - принудительное использование SSH протокола только версии 1; | + | - '' |
| - | - `-2` - принудительное использование SSH протокола только версии 2; | + | - '' |
| | | ||
| - | Дополнительные параметры | + | Дополнительные параметры |
| - | - `-C` - включить сжатие данных; | + | - '' |
| - | - `-t` - переназначить псевдо-терминал для выполнения программ; | + | - '' |
| - | - `-T` - послать на выполнение команду, | + | - '' |
| Примеры: | Примеры: | ||
| - | ```shell | + | <code bash> |
| # выполнить команду, | # выполнить команду, | ||
| ssh user@host ls | ssh user@host ls | ||
| Строка 145: | Строка 151: | ||
| # создание ssh туналя (проброс порта с удалённой машины на локальную) | # создание ssh туналя (проброс порта с удалённой машины на локальную) | ||
| ssh -L локальный_порт: | ssh -L локальный_порт: | ||
| - | ``` | + | </ |
| + | |||
| + | ===== scp ===== | ||
| - | ___ | ||
| - | ## scp | ||
| Утилита для копирования файлов на удаленный сервер. | Утилита для копирования файлов на удаленный сервер. | ||
| - | ```shell | + | <code bash> |
| scp / | scp / | ||
| - | ``` | + | </ |
| Примеры использования: | Примеры использования: | ||
| - | ```shell | + | <code bash> |
| scp ~/test.txt user@host: | scp ~/test.txt user@host: | ||
| Строка 165: | Строка 171: | ||
| # Пойдем еще дальше, | # Пойдем еще дальше, | ||
| tar czf - / | tar czf - / | ||
| - | ``` | + | </ |
| - | ___ | + | ===== ssh-agent |
| - | ## ssh-agent | + | |
| - | По простому: | + | По простому: |
| - | \- это " | + | '' |
| - | Подробнее: | + | Подробнее: |
| - | \- это менеджер ключей для SSH, работающий независимо от последнего, | + | '' |
| - | Вот как проверяется ключ пользователя во время SSH-соединения, | + | Вот как проверяется ключ пользователя во время SSH-соединения, |
| - | - Клиент предоставляет серверу публичный ключ. | + | - Клиент предоставляет серверу публичный ключ.\\ |
| - | - Сервер генерирует и отправляет короткое случайное сообщение, | + | - Сервер генерирует и отправляет короткое случайное сообщение, |
| - | - Клиент просит **агента** SSH подписать сообщение и пересылает результат обратно на сервер. | + | - Клиент просит **агента** SSH подписать сообщение и пересылает результат обратно на сервер.\\ |
| - | - Сервер проверяет подпись, | + | - Сервер проверяет подпись, |
| - | - Теперь у сервера есть доказательство того, что клиент владеет приватным ключом. | + | - Теперь у сервера есть доказательство того, что клиент владеет приватным ключом.\\ |
| - | Позже в процессе соединения генерируется набор новых, эфемерных и симметричных ключей, | + | Позже в процессе соединения генерируется набор новых, эфемерных и симметричных ключей, |
| - | #### ssh-add | + | ==== ssh-add |
| - | команда ssh-agent для добавления ключей к " | + | |
| - | - `~/ | + | |
| - | - `~/ | + | |
| - | - `~/ | + | |
| - | - `~/ | + | |
| - | #### переадресация агента | + | команда ssh-agent для добавления ключей к " |
| - | Когда для соединения включена переадресация агента (обычно с использованием | + | - '' |
| - | Для ssh нет разницы между локальным и удаленным ssh-agent, так как ssh смотрит лишь на `$SSH_AUTH_SOCK`. При подключении к удаленному хосту с включенной переадресацией агента SSHD создаст удаленный доменный сокет Unix, связанный с каналом переадресации агента, | + | - '' |
| + | - '' | ||
| + | - '' | ||
| + | |||
| + | ==== переадресация агента | ||
| + | |||
| + | Когда для соединения включена переадресация агента (обычно с использованием | ||
| + | Для ssh нет разницы между локальным и удаленным ssh-agent, так как ssh смотрит лишь на '' | ||
| > [!warning] | > [!warning] | ||
| - | > Когда вы переадресовываете доменный сокет | + | > Когда вы переадресовываете доменный сокет |
| > | > | ||
| > Совет: | > Совет: | ||
| - | > | + | > Заблокируйте свой ssh-агент, |