SSH Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:ssh [2012/01/08 12:41]
добавлен раздел sshfs
wiki:ssh [2018/04/09 23:58] (текущий)
[SSH aliases]
Строка 1: Строка 1:
-====== SSH в Ubuntu ​======+====== SSH ======
  
 <​note>​ <​note>​
Строка 5: Строка 5:
 </​note>​ </​note>​
  
-===== Краткое описание руководства ===== +Данная статья посвящена клиенту и серверу защищенного терминала (secure shell) в Ubuntu, их настройке и использованию. SSH — это специальный сетевой протокол,​ позволяющий получать удаленный доступ к компьютеру с большой степенью безопасности соединения. Более подробно про протокол ssh можно прочитать [[wpru>ssh|тут]].
- +
-Данная статья посвящена клиенту и серверу защищенного терминала (secure shell) в Ubuntu, их настройке и использованию. SSH — это специальный сетевой протокол,​ позволяющий получать удаленный доступ к компьютеру с большой степенью безопасности соединения. Более подробно про протокол ssh можно прочитать [[http://​ru.wikipedia.org/​wiki/​ssh|тут]].+
  
 ===== Описание принципов работы и используемых приложений ===== ===== Описание принципов работы и используемых приложений =====
    
-В основном, ​ssh реализован в виде двух приложений — ssh сервера и ssh клиента ((Но на самом деле существует много дополнительных утилит для работы с ssh.)) В Ubuntu используется свободная реализация клиента и сервера ​ssh — [[http://​www.openssh.org/​|OpenSSH]]. При подключении клиент проходит процедуру авторизации у сервера и между ними устанавливается зашифрованное соединение. OpenSSH сервер может работать как с протоколом ssh1, так и с протоколом ssh2. В настоящее время протокол ssh1 считается небезопасным,​ поэтому его использование крайне не рекомендуется. Я намеренно опускаю различные технические подробности работы протокола,​ т. к. основной целью данного руководства является описание его настройки и использования. Про сам протокол,​ принципы его работы,​ алгоритмы шифрования и т. д. существует множество статей в интернете,​ например подробно про это можно почитать ​ [[http://​www.bog.pp.ru/​work/​ssh.html|здесь]].+В основном, ​SSH реализован в виде двух приложений — SSH-сервера и SSH-клиента((На самом деле существует много дополнительных утилит для работы с ssh.)) В Ubuntu используется свободная реализация клиента и сервера ​SSH — [[http://​www.openssh.org/​|OpenSSH]]. При подключении клиент проходит процедуру авторизации у сервера и между ними устанавливается зашифрованное соединение. OpenSSH сервер может работать как с протоколом ssh1, так и с протоколом ssh2. В настоящее время протокол ssh1 считается небезопасным,​ поэтому его использование крайне не рекомендуется. Я намеренно опускаю различные технические подробности работы протокола,​ т. к. основной целью данного руководства является описание его настройки и использования. Про сам протокол,​ принципы его работы,​ алгоритмы шифрования и т. д. существует множество статей в интернете,​ например подробно про это можно почитать ​ [[http://​www.bog.pp.ru/​work/​ssh.html|здесь]].
  
 ===== Установка ===== ===== Установка =====
    
-При установке с alternate/​server дисков пользователю предлагается ​на выбор установить несколько стандартных приложений, OpenSSH есть в их числе, и вы можете отметить его для установки. Если же у вас есть готовая система, то установить OpenSSH можно так+Установить //OpenSSH// можно из [[терминал|терминала]] командой
-<​code>​ +<code=bash
-sudo aptitude ​install ssh+sudo apt-get ​install ssh
 </​code>​ </​code>​
-Метапакет ssh содержит ​в себе и клиент и сервер,​ при этом скорее всего будет установлен только сервер,​ т. к. клиент ​часто бывает установлен ​в Ubuntu по умолчанию.+В метапакете ''​ssh'' ​содержится как ​клиент, так ​и сервер, ​но при этомскорее всегобудет установлен только сервер,​ т. к. клиент ​уже ​есть в Ubuntu по умолчанию.
  
 ===== Настройка сервера ===== ===== Настройка сервера =====
  
-SSH сервер автоматически прописывается в автозагрузку ​при установке. Управлять его запуском/остановкой или перезапуском можно ​при ​помощи команд:​ +При установке ​SSH-сервер автоматически прописывается в автозагрузку. Управлять его запускомостановкой или перезапуском можно ​с помощью команд:​ 
-<​code>​+<code=bash>
 sudo service ssh stop|start|restart ​ sudo service ssh stop|start|restart ​
 </​code>​ </​code>​
-Основным файлом конфигурации ​ssh-сервера ​является ​файл ''/​etc/​ssh/​sshd_config'', ​который +Основной файл конфигурации ​SSH-сервера ​— файл ''/​etc/​ssh/​sshd_config'',​ доступный для чтения ​или ​редактирования только [[суперпользователь_в_ubuntu|суперпользователю]]. 
-должен быть ​доступным для чтения/редактирования только [[суперпользователь_в_ubuntu|суперпользователю]]. +После каждого изменения этого файла необходимо перезапустить ssh-сервер для применения ​таких ​изменений. ​ 
-После каждого изменения этого файла необходимо перезапустить ssh-сервер для применения изменений. ​Вот пример конфигурации ​ssh-сервера по умолчанию ​в Ubuntu((Переведено с оригинального man sshd_config в Ubuntu 9.10. Добавлены дополнительные коментарии.)):​+ 
 +Пример конфигурации ​SSH-сервера ​в Ubuntu ​по умолчанию((Переведено с оригинального man sshd_config в Ubuntu 9.10. Добавлены дополнительные коментарии.)):​
 <​file>​ <​file>​
 #     ​Пример конфигурации open-ssh сервера с русскими ​     # #     ​Пример конфигурации open-ssh сервера с русскими ​     #
 #                      комментариями. ​                     # #                      комментариями. ​                     #
- 
 #           ​Написан для http://​help.ubuntu.ru ​             # #           ​Написан для http://​help.ubuntu.ru ​             #
- 
-#                     ​Кодировка - utf8.                    # 
- 
 #                   by MadKox, 01.2010. ​                   # #                   by MadKox, 01.2010. ​                   #
- 
 #                                                          # #                                                          #
 #                                                          # #                                                          #
 # Условные обозначения: ​                                   # # Условные обозначения: ​                                   #
- 
 # Под "по умолчанию"​ - подразумевается поведение sshd при ​ # # Под "по умолчанию"​ - подразумевается поведение sshd при ​ #
 # неуказанной явно директиве. Стоит заметить,​ что в Ubuntu #  # неуказанной явно директиве. Стоит заметить,​ что в Ubuntu # 
 # файл sshd_config уже содержит ряд настроек,​ которые ​     # # файл sshd_config уже содержит ряд настроек,​ которые ​     #
 # являются настройками по умолчанию для именно для Ubuntu. # # являются настройками по умолчанию для именно для Ubuntu. #
- 
 # Такие настройки указаны в этом файле. ​                   # # Такие настройки указаны в этом файле. ​                   #
- 
 #                                                          # #                                                          #
 ############################################################​ ############################################################​
- 
 ################​ Настройки адресов/​портов и т.д. ########### ################​ Настройки адресов/​портов и т.д. ###########
- 
 ############################################################​ ############################################################​
- 
 #                                                          # #                                                          #
 ## Port ####################################################​ ## Port ####################################################​
- 
 #                                                          # #                                                          #
- 
 # Используемый порт. Можно указывать несколько,​ например: ​ # # Используемый порт. Можно указывать несколько,​ например: ​ #
- 
 # Port 22                                                  # # Port 22                                                  #
- 
 # Port 23                                                  # # Port 23                                                  #
- 
 # Port 24                                                  # # Port 24                                                  #
- 
 # Рекомендуется использовать нестандартный порт, т.к. ​     # # Рекомендуется использовать нестандартный порт, т.к. ​     #
 # стандартный часто сканируется ботами на предмет ​         # # стандартный часто сканируется ботами на предмет ​         #
 # потенциальных "​дырок"​. Может быть опущен,​ если задан ​    # # потенциальных "​дырок"​. Может быть опущен,​ если задан ​    #
 # через адрес. См. также параметр ListenAddress. ​          # # через адрес. См. также параметр ListenAddress. ​          #
 +#                                                          #
 Port 22 Port 22
- 
 #                                                          # #                                                          #
 ## ListenAddress ###########################################​ ## ListenAddress ###########################################​
- 
 #                                                          # #                                                          #
- 
 # Сетевой адрес, на котором "​слушает"​ сервер. Адрес можно ​ # # Сетевой адрес, на котором "​слушает"​ сервер. Адрес можно ​ #
 # записывать так: ​                                         # # записывать так: ​                                         #
- 
 # ListenAddress host|IPv4_addr|IPv6_addr ​                  # # ListenAddress host|IPv4_addr|IPv6_addr ​                  #
- 
 # ListenAddress host|IPv4_addr:​port ​                       # # ListenAddress host|IPv4_addr:​port ​                       #
- 
 # ListenAddress [host|IPv6_addr]:​port ​                     # # ListenAddress [host|IPv6_addr]:​port ​                     #
- 
 # Если порт не задан, sshd будет слушать на этом адресе и  # # Если порт не задан, sshd будет слушать на этом адресе и  #
 # на порту, указанному в опции Port. Если вы будете ​       #  # на порту, указанному в опции Port. Если вы будете ​       # 
Строка 98: Строка 73:
 # указывать,​ то по умолчанию слушает на всех локальных ​    # # указывать,​ то по умолчанию слушает на всех локальных ​    #
 # адресах. Можно указывать несколько адресов. ​             # # адресах. Можно указывать несколько адресов. ​             #
- 
- 
 #                                                          # #                                                          #
 ## AddressFamily ###########################################​ ## AddressFamily ###########################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ какое семейство IP адресов должно быть ​       # # Указывает,​ какое семейство IP адресов должно быть ​       #
 # использовано sshd. Возможные варианты: ​                  # # использовано sshd. Возможные варианты: ​                  #
- 
 # “any” - любые ​                                           # # “any” - любые ​                                           #
- 
 # “inet” (только IPv4)                                     # # “inet” (только IPv4)                                     #
- 
 # “inet6” (только IPv6)                                    # # “inet6” (только IPv6)                                    #
- 
 # По умолчанию - “any”. ​                                   # # По умолчанию - “any”. ​                                   #
- 
 AddressFamily inet AddressFamily inet
- 
 #                                                          # #                                                          #
 ## UseDNS ##################################################​ ## UseDNS ##################################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ должен ли sshd проверять имя хоста и          # # Указывает,​ должен ли sshd проверять имя хоста и          #
 # используя это имя сверять IP адрес переданный клиентом с # # используя это имя сверять IP адрес переданный клиентом с #
 # полученным от DNS.                                       # # полученным от DNS.                                       #
- 
 # Значение по умолчанию - “yes”. ​                          # # Значение по умолчанию - “yes”. ​                          #
- 
 #                                                          # #                                                          #
 ############################################################​ ############################################################​
Строка 136: Строка 97:
 # Пустить/​не пустить пользователя определяется директивами # # Пустить/​не пустить пользователя определяется директивами #
 # DenyUsers, AllowUsers, DenyGroups, и AllowGroups. ​       # # DenyUsers, AllowUsers, DenyGroups, и AllowGroups. ​       #
- 
 # при этом, проверка проходит сверху - вниз по цепочке: ​   # # при этом, проверка проходит сверху - вниз по цепочке: ​   #
- 
 #                   ## DenyUsers ##                        # #                   ## DenyUsers ##                        #
- 
 #                          ||                              # #                          ||                              #
 #                   ## AllowUsers ##                       # #                   ## AllowUsers ##                       #
 #                          ||                              # #                          ||                              #
- 
 #                   ## DenyGroups ##                       # #                   ## DenyGroups ##                       #
 #                          ||                              # #                          ||                              #
- 
 #                   ## AllowGroups ##                      # #                   ## AllowGroups ##                      #
- 
 # Принимаются только имена пользователей и групп, числовые # # Принимаются только имена пользователей и групп, числовые #
 # идентификаторы (UserID) - не распознаются. Корректная ​   # # идентификаторы (UserID) - не распознаются. Корректная ​   #
Строка 161: Строка 116:
 # группы. См. PATTERNS в man ssh_config для дополнительной # # группы. См. PATTERNS в man ssh_config для дополнительной #
 # информации о формах записи имен пользователей и групп. ​  # # информации о формах записи имен пользователей и групп. ​  #
- 
 #                                                          # #                                                          #
 ## DenyUsers ###############################################​ ## DenyUsers ###############################################​
- 
 #                                                          # #                                                          #
- 
 # Список ПОЛЬЗОВАТЕЛЕЙ,​ которым НЕЛЬЗЯ пользоваться sshd.  # # Список ПОЛЬЗОВАТЕЛЕЙ,​ которым НЕЛЬЗЯ пользоваться sshd.  #
- 
 # По умолчанию - не указан = не запрещен никто. Т.е. если ​ # # По умолчанию - не указан = не запрещен никто. Т.е. если ​ #
 # тут указан пользователь,​ то ему будет отказано в доступе # # тут указан пользователь,​ то ему будет отказано в доступе #
 # к ssh серверу. ​                                          # # к ssh серверу. ​                                          #
- 
 #                                                          # #                                                          #
- 
 ## AllowUsers ##############################################​ ## AllowUsers ##############################################​
 #                                                          # #                                                          #
 # Список ПОЛЬЗОВАТЕЛЕЙ,​ которым МОЖНО пользоваться sshd,   # ​ # Список ПОЛЬЗОВАТЕЛЕЙ,​ которым МОЖНО пользоваться sshd,   # ​
- 
 # По умолчанию - не указан = разрешено всем. Т.е. если ​    # ​ # По умолчанию - не указан = разрешено всем. Т.е. если ​    # ​
 # указан хотя бы один пользователь,​ ssh доступ к серверу ​  # # указан хотя бы один пользователь,​ ssh доступ к серверу ​  #
- 
 # доступен только для него. ​                               # # доступен только для него. ​                               #
 #                                                          # #                                                          #
- 
- 
 ## DenyGroups ##############################################​ ## DenyGroups ##############################################​
 #                                                          # #                                                          #
 # Список ГРУПП, которым НЕЛЬЗЯ пользоваться sshd.          # # Список ГРУПП, которым НЕЛЬЗЯ пользоваться sshd.          #
- 
 # По умолчанию - не указан = не запрещена ни одна группа. ​ # # По умолчанию - не указан = не запрещена ни одна группа. ​ #
- 
 # Т.е. если указана хотя бы одна группа,​ то пользователям,​ # # Т.е. если указана хотя бы одна группа,​ то пользователям,​ #
- 
 # входящим в эту группу будет отказано в доступе к ssh     # # входящим в эту группу будет отказано в доступе к ssh     #
 # серверу. ​                                                # # серверу. ​                                                #
- 
 #                                                          # #                                                          #
- 
- 
 ## AllowGroups #############################################​ ## AllowGroups #############################################​
 #                                                          # #                                                          #
- 
 # Список ГРУПП, которым МОЖНО пользоваться sshd.           # # Список ГРУПП, которым МОЖНО пользоваться sshd.           #
- 
 # По умолчанию - не указан = разрешено всем. Т.е. если ​    # # По умолчанию - не указан = разрешено всем. Т.е. если ​    #
 # указана хотя бы одна группа,​ то только тем пользователям,#​ # указана хотя бы одна группа,​ то только тем пользователям,#​
 # которые в нее входят будет разрешен доступ к ssh серверу.#​ # которые в нее входят будет разрешен доступ к ssh серверу.#​
- 
 #                                                          # #                                                          #
- 
 ############################################################​ ############################################################​
 ######### Опции определения состояния соединения ########### ######### Опции определения состояния соединения ###########
Строка 217: Строка 152:
 ## TCPKeepAlive ############################################​ ## TCPKeepAlive ############################################​
 #                                                          # #                                                          #
- 
 # Указывает,​ нужно системе посылать TCP сообщения клиенту ​ # # Указывает,​ нужно системе посылать TCP сообщения клиенту ​ #
 # с целью поддержания соединения. Если посылать эти пакеты,#​ # с целью поддержания соединения. Если посылать эти пакеты,#​
Строка 235: Строка 169:
 TCPKeepAlive yes TCPKeepAlive yes
 #                                                          # #                                                          #
- 
 ## ClientAliveCountMax #####################################​ ## ClientAliveCountMax #####################################​
 #                                                          # #                                                          #
- 
 # Задает количество сообщений к клиентам,​ которые sshd     # # Задает количество сообщений к клиентам,​ которые sshd     #
- 
 # посылает подряд,​ не получая какого либо ответа от        # # посылает подряд,​ не получая какого либо ответа от        #
 # клиента. Если пороговое значение будет достигнуто,​ а     # # клиента. Если пороговое значение будет достигнуто,​ а     #
Строка 246: Строка 177:
 # ssh сессию. Стоит отметить,​ что использование таких ​     # # ssh сессию. Стоит отметить,​ что использование таких ​     #
 # сообщений в корне отличается от директивы TCPKeepAlive. ​ # # сообщений в корне отличается от директивы TCPKeepAlive. ​ #
- 
 # Сообщения к/от клиентов посылаются по зашифрованному ​    # # Сообщения к/от клиентов посылаются по зашифрованному ​    #
 # каналу и поэтому не подвержены спуфингу. Сообщения же    # # каналу и поэтому не подвержены спуфингу. Сообщения же    #
Строка 257: Строка 187:
 # через 45 секунд. Эта директива работает только для ​      # # через 45 секунд. Эта директива работает только для ​      #
 # протокола ssh2.                                          # # протокола ssh2.                                          #
- 
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## ClientAliveInterval #####################################​ ## ClientAliveInterval #####################################​
 #                                                          # #                                                          #
- 
 # Задает временной интервал в секундах. Если в течении ​    # # Задает временной интервал в секундах. Если в течении ​    #
 # этого интервала не было обмена данными с клиентом,​ sshd  # # этого интервала не было обмена данными с клиентом,​ sshd  #
Строка 271: Строка 197:
 # только для протокола ssh2.                               # # только для протокола ssh2.                               #
 #                                                          # #                                                          #
- 
- 
 ############################################################​ ############################################################​
 ################​ Общие опции аутентификации ################​ ################​ Общие опции аутентификации ################​
Строка 278: Строка 202:
 #                                                          # #                                                          #
 ## AuthorizedKeysFile ######################################​ ## AuthorizedKeysFile ######################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает файл, в котором содержатся публичные ключи, ​   # # Указывает файл, в котором содержатся публичные ключи, ​   #
 # используемые для аутентификации пользователей. Директива # # используемые для аутентификации пользователей. Директива #
 # может содержать маркеры вида %М, которые подставляются в # # может содержать маркеры вида %М, которые подставляются в #
- 
 # процессе установки соединения. ​                          # # процессе установки соединения. ​                          #
 # Определены следующие маркеры: ​                           # # Определены следующие маркеры: ​                           #
- 
 # %% - заменяется литералом '​%' ​                           # # %% - заменяется литералом '​%' ​                           #
- 
 # %h - заменяется домашней директорией ​                    # # %h - заменяется домашней директорией ​                    #
 # аутентифицируещегося пользователя ​                       # # аутентифицируещегося пользователя ​                       #
- 
 # %u - заменяется именем аутентифицируещегося пользователя # # %u - заменяется именем аутентифицируещегося пользователя #
- 
 # Таким образом,​ файл с ключами может быть задан как ​      # # Таким образом,​ файл с ключами может быть задан как ​      #
 # абсолютным путем (т.е. один общий файл с ключами),​ так и # # абсолютным путем (т.е. один общий файл с ключами),​ так и #
Строка 300: Строка 217:
 # файлу на каждого пользователя). ​                         # # файлу на каждого пользователя). ​                         #
 # По умолчанию - “.ssh/​authorized_keys”. ​                  # # По умолчанию - “.ssh/​authorized_keys”. ​                  #
- 
 # Пример для файла ключа в домашней папке пользователя: ​   #  # Пример для файла ключа в домашней папке пользователя: ​   # 
- 
 # AuthorizedKeysFile %h/​.ssh/​authorized_key ​               # # AuthorizedKeysFile %h/​.ssh/​authorized_key ​               #
- 
 # Пример для общего файла: ​                                # # Пример для общего файла: ​                                #
- 
 # AuthorizedKeysFile /​etc/​ssh/​authorized_keys ​             # # AuthorizedKeysFile /​etc/​ssh/​authorized_keys ​             #
- 
 # См. описание файла authorized_keys для большей ​          # # См. описание файла authorized_keys для большей ​          #
 # информации. ​                                             # # информации. ​                                             #
- 
 #                                                          # #                                                          #
- 
- 
-#                                                          # 
- 
 ## ChallengeResponseAuthentication #########################​ ## ChallengeResponseAuthentication #########################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешить ли аутентификацию вида вопрос-ответ # # Указывает,​ разрешить ли аутентификацию вида вопрос-ответ #
- 
 # (challenge-response authentication). Поддерживаются все ​ # # (challenge-response authentication). Поддерживаются все ​ #
 # виды аутентификации из login.conf По умолчанию - “yes”, ​ # # виды аутентификации из login.conf По умолчанию - “yes”, ​ #
 # т.е. разрешить. ​                                         # # т.е. разрешить. ​                                         #
- 
 # В Ubuntu - выключена по соображениям безопасности. ​      # # В Ubuntu - выключена по соображениям безопасности. ​      #
 #                                                          # #                                                          #
 ChallengeResponseAuthentication no ChallengeResponseAuthentication no
- 
 #                                                          # #                                                          #
 ## HostbasedUsesNameFromPacketOnly #########################​ ## HostbasedUsesNameFromPacketOnly #########################​
 #                                                          # #                                                          #
- 
 # Указывает,​ как сервер должен получать имя хоста клиента ​ # # Указывает,​ как сервер должен получать имя хоста клиента ​ #
 # при схеме аутентификации,​ основанной на проверке хоста. ​ # # при схеме аутентификации,​ основанной на проверке хоста. ​ #
- 
 # Если задать "​yes"​ - при проверке соответствия в файлах ​  # # Если задать "​yes"​ - при проверке соответствия в файлах ​  #
- 
 # ~/.shosts, ~/.rhosts или /​etc/​hosts.equiv sshd будет ​    # # ~/.shosts, ~/.rhosts или /​etc/​hosts.equiv sshd будет ​    #
 # использовать имя хоста, предоставленное клиентом. ​       # # использовать имя хоста, предоставленное клиентом. ​       #
- 
 # (выполняя реверсивное DNS распознование) Если задать "​no"#​ # (выполняя реверсивное DNS распознование) Если задать "​no"#​
 # - sshd будет ресолвить имя из самого TCP соединения. ​    # ​ # - sshd будет ресолвить имя из самого TCP соединения. ​    # ​
- 
 # По умолчанию - "​no"​. ​                                    # # По умолчанию - "​no"​. ​                                    #
- 
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## IgnoreRhosts ############################################​ ## IgnoreRhosts ############################################​
- 
 #                                                          # #                                                          #
- 
 # Запрещает использование файлов .rhosts и .shosts ​        # # Запрещает использование файлов .rhosts и .shosts ​        #
 # в процессе аутентификации,​ основанной на проверке хоста. # # в процессе аутентификации,​ основанной на проверке хоста. #
 # (RhostsRSAAuthentication или HostbasedAuthentication). ​  # # (RhostsRSAAuthentication или HostbasedAuthentication). ​  #
- 
 # Файлы /​etc/​hosts.equiv и /​etc/​ssh/​shosts.equiv все еще ​  # # Файлы /​etc/​hosts.equiv и /​etc/​ssh/​shosts.equiv все еще ​  #
- 
 # используются. ​                                           # # используются. ​                                           #
- 
 # По умолчанию - “yes”. ​                                   # # По умолчанию - “yes”. ​                                   #
- 
 #                                                          # #                                                          #
 IgnoreRhosts yes IgnoreRhosts yes
 #                                                          # #                                                          #
- 
 ## IgnoreUserKnownHosts ####################################​ ## IgnoreUserKnownHosts ####################################​
- 
 #                                                          # #                                                          #
 # Указывает должен ли sshd игнорировать пользовательские ​  # ​ # Указывает должен ли sshd игнорировать пользовательские ​  # ​
- 
 # "​известные хосты"​ - файл ~/​.ssh/​known_hosts в процессе ​  # # "​известные хосты"​ - файл ~/​.ssh/​known_hosts в процессе ​  #
- 
 # аутентификации,​ основанной на проверке хоста ​            # ​ # аутентификации,​ основанной на проверке хоста ​            # ​
- 
 # (RhostsRSAAuthentication или HostbasedAuthentication). ​  # # (RhostsRSAAuthentication или HostbasedAuthentication). ​  #
- 
 # По умолчанию - “no”. ​                                    # # По умолчанию - “no”. ​                                    #
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## PermitBlacklistedKeys ###################################​ ## PermitBlacklistedKeys ###################################​
 #                                                          # #                                                          #
Строка 392: Строка 271:
 # попытки аутентификации с такими ключами будут занесены в # # попытки аутентификации с такими ключами будут занесены в #
 # журнал и приняты,​ если значение “no” - попытки ​          # # журнал и приняты,​ если значение “no” - попытки ​          #
- 
 # аутентификации будут отвергнуты. ​                        # # аутентификации будут отвергнуты. ​                        #
- 
 # По умолчанию - “no”. ​                                    # # По умолчанию - “no”. ​                                    #
- 
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## PermitEmptyPasswords ####################################​ ## PermitEmptyPasswords ####################################​
- 
 #                                                          # #                                                          #
- 
 # В случае разрешенной аутентификации с помощью пароля, ​   # # В случае разрешенной аутентификации с помощью пароля, ​   #
- 
 # указывает,​ возможен ли вход с пустым паролем. ​           # # указывает,​ возможен ли вход с пустым паролем. ​           #
- 
 # По умолчанию - “no”. ​                                    # # По умолчанию - “no”. ​                                    #
- 
 #                                                          # #                                                          #
- 
 PermitEmptyPasswords no PermitEmptyPasswords no
 #                                                          # #                                                          #
- 
 ## PermitRootLogin #########################################​ ## PermitRootLogin #########################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ возможен ли ssh-вход под суперпользователем ​  # # Указывает,​ возможен ли ssh-вход под суперпользователем ​  #
 # (root). Может принимать значения: ​                       # # (root). Может принимать значения: ​                       #
- 
 # “yes” - суперпользователь может зайти. Применяется ​      # # “yes” - суперпользователь может зайти. Применяется ​      #
 # текущая глобальная схема аутентификации. ​                # # текущая глобальная схема аутентификации. ​                #
 #                                                          # #                                                          #
- 
 # “without-password” - суперпользователь может зайти. ​     # # “without-password” - суперпользователь может зайти. ​     #
 # Парольная аутентификация для него будет отключена. ​      # # Парольная аутентификация для него будет отключена. ​      #
 #                                                          # #                                                          #
- 
 # “forced-commands-only” - суперпользователь сможет зайти, # # “forced-commands-only” - суперпользователь сможет зайти, #
- 
 # пользуясь аутентификацией на основе публичного ключа и   # # пользуясь аутентификацией на основе публичного ключа и   #
- 
 # только если передаст необходимую к исполнению комнаду. ​  # # только если передаст необходимую к исполнению комнаду. ​  #
- 
 # Это удобно для осуществления резервного копирования, ​    # # Это удобно для осуществления резервного копирования, ​    #
 # даже в том случае,​ когда нормальный (т.е. не через ssh)  # # даже в том случае,​ когда нормальный (т.е. не через ssh)  #
 # вход суперпользователя запрещен. Все остальные методы ​   # # вход суперпользователя запрещен. Все остальные методы ​   #
 # аутентификации для суперпользователя будут заблокированы.#​ # аутентификации для суперпользователя будут заблокированы.#​
- 
 #                                                          # #                                                          #
- 
 # “no” - суперпользователь не может использовать ssh для ​  # # “no” - суперпользователь не может использовать ssh для ​  #
 # входа в систему. ​                                        # # входа в систему. ​                                        #
- 
 #                                                          # #                                                          #
- 
 # Значение по умолчанию - “yes”. ​                          # # Значение по умолчанию - “yes”. ​                          #
 #                                                          # #                                                          #
 PermitRootLogin yes PermitRootLogin yes
 #                                                          # #                                                          #
- 
 ## Protocol ################################################​ ## Protocol ################################################​
- 
 #                                                          # #                                                          #
 # Указывает,​ какой протокол должен использовать sshd.      # # Указывает,​ какой протокол должен использовать sshd.      #
- 
 # Возможные значения ‘1’ и ‘2’ - ssh1 и ssh2               # # Возможные значения ‘1’ и ‘2’ - ssh1 и ssh2               #
 # соответственно. Возможна одновременная запись,​ при ​      # # соответственно. Возможна одновременная запись,​ при ​      #
 # которой значения следует разделять запятыми. ​            # # которой значения следует разделять запятыми. ​            #
- 
 # По умолчанию - “2,​1”. ​                                   # # По умолчанию - “2,​1”. ​                                   #
- 
 # Стоит отметить,​ что порядок следования протоколов в      # # Стоит отметить,​ что порядок следования протоколов в      #
 # записи не задает приоритет,​ т.к. клиент выбирает какой ​  # # записи не задает приоритет,​ т.к. клиент выбирает какой ​  #
Строка 482: Строка 331:
 # PasswordAuthentication) Т.к. аутентификация ​             # # PasswordAuthentication) Т.к. аутентификация ​             #
 # запросов-ответов в PAM обычно выполняет ту же роль, ​     # # запросов-ответов в PAM обычно выполняет ту же роль, ​     #
- 
 # что и парольная аутентификация,​ вам следует отключить ​   # # что и парольная аутентификация,​ вам следует отключить ​   #
 # либо PasswordAuthentication,​ либо ​                       # # либо PasswordAuthentication,​ либо ​                       #
 # ChallengeResponseAuthentication. Стоит отметить,​ что ​    # # ChallengeResponseAuthentication. Стоит отметить,​ что ​    #
 # если директива UsePAM включена - вы не сможете запустить # # если директива UsePAM включена - вы не сможете запустить #
- 
 # sshd от имени пользователя,​ отличного от root.           # # sshd от имени пользователя,​ отличного от root.           #
- 
 # Значение по умолчанию - “no”. ​                           # # Значение по умолчанию - “no”. ​                           #
 #                                                          # #                                                          #
Строка 495: Строка 341:
 #                                                          # #                                                          #
 ## PasswordAuthentication ##################################​ ## PasswordAuthentication ##################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешена ли аутентификация с использованием ​ # # Указывает,​ разрешена ли аутентификация с использованием ​ #
- 
 # пароля. ​                                                 # # пароля. ​                                                 #
- 
 # По умолчанию - “yes”. ​                                   # # По умолчанию - “yes”. ​                                   #
- 
- 
 #                                                          # #                                                          #
 ## HostKey #################################################​ ## HostKey #################################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает файл, содержащий закрытый хост-ключ, ​          # # Указывает файл, содержащий закрытый хост-ключ, ​          #
 # используемый SSH. По умолчанию - /​etc/​ssh/​ssh_host_key ​  # # используемый SSH. По умолчанию - /​etc/​ssh/​ssh_host_key ​  #
Строка 519: Строка 357:
 # для протокола ssh1 и “dsa”/​“rsa” для протокола ssh2.     # # для протокола ssh1 и “dsa”/​“rsa” для протокола ssh2.     #
 #                                                          # #                                                          #
- 
 HostKey /​etc/​ssh/​ssh_host_rsa_key HostKey /​etc/​ssh/​ssh_host_rsa_key
 HostKey /​etc/​ssh/​ssh_host_dsa_key HostKey /​etc/​ssh/​ssh_host_dsa_key
 +#                                                          #
 ############################################################​ ############################################################​
 ########## Опции протокола SSH версии 1 (ssh1) #############​ ########## Опции протокола SSH версии 1 (ssh1) #############​
Строка 531: Строка 369:
 ## KeyRegenerationInterval #################################​ ## KeyRegenerationInterval #################################​
 #                                                          # #                                                          #
- 
 # Для протокола ssh1 - раз в определенное время ​           # # Для протокола ssh1 - раз в определенное время ​           #
 # автоматически генерируется новый временный ключ сервера ​ # # автоматически генерируется новый временный ключ сервера ​ #
Строка 542: Строка 379:
 # сгенерирован заново. Если значение задать равным 0 -     # # сгенерирован заново. Если значение задать равным 0 -     #
 # ключ не будет генерироваться заново. ​                    # # ключ не будет генерироваться заново. ​                    #
- 
 # По умолчанию значение - 3600 (секунд). ​                  # # По умолчанию значение - 3600 (секунд). ​                  #
- 
 #                                                          # #                                                          #
 KeyRegenerationInterval 3600 KeyRegenerationInterval 3600
 #                                                          # #                                                          #
 ## RhostsRSAAuthentication #################################​ ## RhostsRSAAuthentication #################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ нужна ли аутентификация на основе файлов ​     # # Указывает,​ нужна ли аутентификация на основе файлов ​     #
 # rhosts или /​etc/​hosts.equiv совместно с успешной ​        # # rhosts или /​etc/​hosts.equiv совместно с успешной ​        #
Строка 557: Строка 390:
 # Актуально только для протокола ssh1.                     # # Актуально только для протокола ssh1.                     #
 # По умолчанию - “no”. ​                                    # # По умолчанию - “no”. ​                                    #
- 
 #                                                          # #                                                          #
- 
 RhostsRSAAuthentication no RhostsRSAAuthentication no
 #                                                          # #                                                          #
- 
 ## RSAAuthentication #######################################​ ## RSAAuthentication #######################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешена ли "​чистая"​ RSA-аутентификация. ​    # # Указывает,​ разрешена ли "​чистая"​ RSA-аутентификация. ​    #
- 
 # Актуально только для протокола ssh1.                     # # Актуально только для протокола ssh1.                     #
 # По умолчанию - “yes”. ​                                   # # По умолчанию - “yes”. ​                                   #
- 
 #                                                          # #                                                          #
- 
 RSAAuthentication yes RSAAuthentication yes
 #                                                          # #                                                          #
- 
 ## ServerKeyBits ###########################################​ ## ServerKeyBits ###########################################​
 #                                                          # #                                                          #
- 
 # Определяет число бит во временном ключе сервера для ​     # # Определяет число бит во временном ключе сервера для ​     #
 # протокола ssh1. Минимальное значение 512.                # # протокола ssh1. Минимальное значение 512.                #
- 
 # Значение по умолчанию - 1024.                            # # Значение по умолчанию - 1024.                            #
- 
 ServerKeyBits 768 ServerKeyBits 768
 +#                                                          #
 ############################################################​ ############################################################​
 ########### Опции протокола SSH версии 2 (ssh2) ############​ ########### Опции протокола SSH версии 2 (ssh2) ############​
Строка 592: Строка 413:
 #                                                          # #                                                          #
 ## Ciphers #################################################​ ## Ciphers #################################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает алгоритмы шифрования,​ разрешенные для ​         # # Указывает алгоритмы шифрования,​ разрешенные для ​         #
 # протокола ssh2. Несколько алгоритмов должны быть ​        # # протокола ssh2. Несколько алгоритмов должны быть ​        #
 # разделены запятыми. Поддерживаемые алгоритмы: ​           # # разделены запятыми. Поддерживаемые алгоритмы: ​           #
- 
 # “3des-cbc”,​ “aes128-cbc”,​ “aes192-cbc”,​ “aes256-cbc”, ​   # # “3des-cbc”,​ “aes128-cbc”,​ “aes192-cbc”,​ “aes256-cbc”, ​   #
- 
 # “aes128-ctr”,​ “aes192-ctr”,​ “aes256-ctr”,​ “arcfour128”, ​ # # “aes128-ctr”,​ “aes192-ctr”,​ “aes256-ctr”,​ “arcfour128”, ​ #
- 
 # “arcfour256”,​ “arcfour”,​ “blowfish-cbc”,​ “cast128-cbc”. ​ # # “arcfour256”,​ “arcfour”,​ “blowfish-cbc”,​ “cast128-cbc”. ​ #
- 
 # По умолчанию используются: ​                              # # По умолчанию используются: ​                              #
- 
 # aes128-cbc,​3des-cbc,​blowfish-cbc,​cast128-cbc,​arcfour128,​ # # aes128-cbc,​3des-cbc,​blowfish-cbc,​cast128-cbc,​arcfour128,​ #
- 
 # arcfour256,​arcfour,​aes192-cbc,​aes256-cbc,​aes128-ctr, ​    # # arcfour256,​arcfour,​aes192-cbc,​aes256-cbc,​aes128-ctr, ​    #
- 
 # aes192-ctr,​aes256-ctr ​                                   # # aes192-ctr,​aes256-ctr ​                                   #
- 
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## HostbasedAuthentication #################################​ ## HostbasedAuthentication #################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешена ли аутентификация,​ основанная на    # # Указывает,​ разрешена ли аутентификация,​ основанная на    #
 # проверке хоста. Проверяется rhosts или /​etc/​hosts.equiv,​ # # проверке хоста. Проверяется rhosts или /​etc/​hosts.equiv,​ #
Строка 626: Строка 433:
 # одинакова с директивой RhostsRSAAuthentication и         # # одинакова с директивой RhostsRSAAuthentication и         #
 # подходит только для протокола ssh2.                      # # подходит только для протокола ssh2.                      #
- 
 # По умолчанию - "​no"​. ​                                    # # По умолчанию - "​no"​. ​                                    #
 #                                                          # #                                                          #
 HostbasedAuthentication no HostbasedAuthentication no
- 
 #                                                          # #                                                          #
 ## MACs ####################################################​ ## MACs ####################################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает допустимый алгоритм MAC (message ​              # # Указывает допустимый алгоритм MAC (message ​              #
 # authentication code). Алгоритм MAC используется ​         # # authentication code). Алгоритм MAC используется ​         #
Строка 641: Строка 444:
 # алгоритмов должны быть разделены запятыми. ​              # # алгоритмов должны быть разделены запятыми. ​              #
 # По умолчанию используются: ​                              # # По умолчанию используются: ​                              #
- 
 # hmac-md5,​hmac-sha1,​umac-64@openssh.com,​hmac-ripemd160, ​  # # hmac-md5,​hmac-sha1,​umac-64@openssh.com,​hmac-ripemd160, ​  #
 # hmac-sha1-96,​hmac-md5-96 ​                                # # hmac-sha1-96,​hmac-md5-96 ​                                #
- 
-#                                                          # 
- 
- 
 #                                                          # #                                                          #
 ## PubkeyAuthentication ####################################​ ## PubkeyAuthentication ####################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешена ли аутентификация на основе ​        # # Указывает,​ разрешена ли аутентификация на основе ​        #
 # публичного ключа. Актуально только для протокола ssh2.   # # публичного ключа. Актуально только для протокола ssh2.   #
- 
 # По умолчанию - “yes”. ​                                   # # По умолчанию - “yes”. ​                                   #
- 
 #                                                          # #                                                          #
 PubkeyAuthentication yes PubkeyAuthentication yes
Строка 666: Строка 460:
 ############​ Применимо только для протокола ssh2 ########### ############​ Применимо только для протокола ssh2 ###########
 #                                                          # #                                                          #
- 
 ## GSSAPIAuthentication ####################################​ ## GSSAPIAuthentication ####################################​
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешена ли аутентификация пользователя на   # # Указывает,​ разрешена ли аутентификация пользователя на   #
 # основе GSSAPI. По умолчанию - "​no",​ т.е. запрещена. ​     # # основе GSSAPI. По умолчанию - "​no",​ т.е. запрещена. ​     #
- 
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## GSSAPIKeyExchange #######################################​ ## GSSAPIKeyExchange #######################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешен ли обмен ключами,​ основанный на      # # Указывает,​ разрешен ли обмен ключами,​ основанный на      #
 # GSSAPI. Обмен ключам при помощи GSSAPI не полагается на  # # GSSAPI. Обмен ключам при помощи GSSAPI не полагается на  #
 # ssh ключи при верификации идентичности хоста. ​           # # ssh ключи при верификации идентичности хоста. ​           #
- 
 # По умолчанию - "​no"​ - т.е. обмен запрещен. ​              # # По умолчанию - "​no"​ - т.е. обмен запрещен. ​              #
- 
 #                                                          # #                                                          #
- 
- 
-#                                                          # 
- 
 ## GSSAPICleanupCredentials ################################​ ## GSSAPICleanupCredentials ################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ нужно ли автоматически уничтожать ​            # # Указывает,​ нужно ли автоматически уничтожать ​            #
 # пользовательский кеш аутентификационных полномочий при ​  # # пользовательский кеш аутентификационных полномочий при ​  #
 # завершении сеанса. ​                                      # # завершении сеанса. ​                                      #
- 
 # По умолчанию - "​yes"​ - т.е. нужно уничтожать. ​           # # По умолчанию - "​yes"​ - т.е. нужно уничтожать. ​           #
- 
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## GSSAPIStrictAcceptorCheck ###############################​ ## GSSAPIStrictAcceptorCheck ###############################​
 #                                                          # #                                                          #
- 
 # Указывает,​ насколько строгой должна быть проверка ​       # # Указывает,​ насколько строгой должна быть проверка ​       #
 # идентичности клиента при аутентификации через GSSAPI. ​   # # идентичности клиента при аутентификации через GSSAPI. ​   #
- 
 # Значение "​yes"​ заставляет клиента аутентифицироваться в  # # Значение "​yes"​ заставляет клиента аутентифицироваться в  #
 # принимающей хост-службе на текущем хосте. Значение "​no" ​ # # принимающей хост-службе на текущем хосте. Значение "​no" ​ #
 # позволяет клиенту аутентифицироваться при помощи любого ​ # # позволяет клиенту аутентифицироваться при помощи любого ​ #
- 
 # ключа служб. ​                                            # # ключа служб. ​                                            #
- 
 # Значение по умолчанию - "​yes"​. ​                          # # Значение по умолчанию - "​yes"​. ​                          #
- 
 # Стоит заметить,​ что задание значения "​no"​ может ​         # # Стоит заметить,​ что задание значения "​no"​ может ​         #
 # сработать только с редкими библиотеками Kerberos GSSAPI. # # сработать только с редкими библиотеками Kerberos GSSAPI. #
 #                                                          # #                                                          #
- 
 ############################################################​ ############################################################​
- 
 ###################​ Опции Kerberos #########################​ ###################​ Опции Kerberos #########################​
- 
 ############################################################​ ############################################################​
- 
 #                                                          # #                                                          #
- 
 ## KerberosAuthentication ##################################​ ## KerberosAuthentication ##################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ требует ли пароль,​ предоставленный ​           # # Указывает,​ требует ли пароль,​ предоставленный ​           #
 # пользователем для аутентификации ​                        # # пользователем для аутентификации ​                        #
Строка 744: Строка 505:
 # KDC’s identity) ​                                         # # KDC’s identity) ​                                         #
 # По умолчанию - “no”. ​                                    # # По умолчанию - “no”. ​                                    #
- 
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## KerberosGetAFSToken #####################################​ ## KerberosGetAFSToken #####################################​
- 
 #                                                          # #                                                          #
- 
 # Если активен AFS и пользователь получил Kerberos 5 TGT,  # # Если активен AFS и пользователь получил Kerberos 5 TGT,  #
- 
 # пытаться ли получить AFS токен до того, как пользователь # # пытаться ли получить AFS токен до того, как пользователь #
- 
 # получит доступ к своей домашней папке. ​                  # # получит доступ к своей домашней папке. ​                  #
- 
 # По умолчанию - “no”. ​                                    # # По умолчанию - “no”. ​                                    #
- 
- 
 #                                                          # #                                                          #
 ## KerberosOrLocalPasswd ###################################​ ## KerberosOrLocalPasswd ###################################​
 #                                                          # #                                                          #
- 
 # Указывает,​ как поступать в случае,​ если аутентификация ​  # # Указывает,​ как поступать в случае,​ если аутентификация ​  #
 # через Kerberos завершилась неудачей. Если ​               # # через Kerberos завершилась неудачей. Если ​               #
 # значение = "​yes"​ - пароль будет проверен при помощи ​     # # значение = "​yes"​ - пароль будет проверен при помощи ​     #
 # любого дополнительного локального механизма авторизации,​ # # любого дополнительного локального механизма авторизации,​ #
- 
 # например - /​etc/​passwd. ​                                 # # например - /​etc/​passwd. ​                                 #
- 
 # По умолчанию - “yes”. ​                                   # # По умолчанию - “yes”. ​                                   #
- 
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## KerberosTicketCleanup ###################################​ ## KerberosTicketCleanup ###################################​
 #                                                          # #                                                          #
- 
 # Указывает,​ нужно ли автоматически уничтожать файл с      # # Указывает,​ нужно ли автоматически уничтожать файл с      #
 # кешем тикета пользователя по завершению сеанса. ​         # # кешем тикета пользователя по завершению сеанса. ​         #
- 
 # По умолчанию - “yes”. ​                                   # # По умолчанию - “yes”. ​                                   #
 +#                                                          #
 ############################################################​ ############################################################​
 #################​ Опции перенаправления ####################​ #################​ Опции перенаправления ####################​
Строка 792: Строка 534:
 ## AllowAgentForwarding ####################################​ ## AllowAgentForwarding ####################################​
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешить или запретить перенаправление ​      # # Указывает,​ разрешить или запретить перенаправление ​      #
 # ssh-agent'​а. По умолчанию - “yes”, т.е. разрешить. ​      # # ssh-agent'​а. По умолчанию - “yes”, т.е. разрешить. ​      #
Строка 799: Строка 540:
 # запрещен shell доступ,​ т.к. они всегда смогут установить # # запрещен shell доступ,​ т.к. они всегда смогут установить #
 # свои собственные аналоги агента. ​                        # # свои собственные аналоги агента. ​                        #
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## AllowTcpForwarding ######################################​ ## AllowTcpForwarding ######################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешить или запретить перенаправление TCP.  # # Указывает,​ разрешить или запретить перенаправление TCP.  #
- 
 # По умолчанию - “yes”, т.е. разрешить. Стоит заметить, ​   # # По умолчанию - “yes”, т.е. разрешить. Стоит заметить, ​   #
 # что как и в случае с AllowAgentForwarding отключение ​    # # что как и в случае с AllowAgentForwarding отключение ​    #
Строка 814: Строка 550:
 # установить свои аналоги. ​                                # # установить свои аналоги. ​                                #
 #                                                          # #                                                          #
- 
 #                                                          # #                                                          #
 ## GatewayPorts ############################################​ ## GatewayPorts ############################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешать ли удаленным хостам доступ к        # # Указывает,​ разрешать ли удаленным хостам доступ к        #
 # перенаправленным портам. По умолчанию,​ sshd слушает ​     # # перенаправленным портам. По умолчанию,​ sshd слушает ​     #
Строка 827: Строка 560:
 # использовать GatewayPorts,​ чтобы разрешить sshd это ​     # # использовать GatewayPorts,​ чтобы разрешить sshd это ​     #
 # делать. Директива может принимать 3 значения: ​           # # делать. Директива может принимать 3 значения: ​           #
- 
 # "​no"​ - только loopback. ​                                 # # "​no"​ - только loopback. ​                                 #
- 
 # "​yes"​- любые адреса. ​                                    # # "​yes"​- любые адреса. ​                                    #
- 
 # "​clientspecified"​ - адреса указанные клиентом. ​          # # "​clientspecified"​ - адреса указанные клиентом. ​          #
- 
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## PermitOpen ##############################################​ ## PermitOpen ##############################################​
 #                                                          # #                                                          #
 # Указывает куда разрешено перенаправление TCP портов. ​    # # Указывает куда разрешено перенаправление TCP портов. ​    #
- 
 # Указание перенаправления должно принимать одну из        # # Указание перенаправления должно принимать одну из        #
 # следующих форм: ​                                         # # следующих форм: ​                                         #
- 
 # PermitOpen host:​port ​                                    # # PermitOpen host:​port ​                                    #
- 
 # PermitOpen IPv4_addr:​port ​                               # # PermitOpen IPv4_addr:​port ​                               #
- 
 # PermitOpen [IPv6_addr]:​port ​                             # # PermitOpen [IPv6_addr]:​port ​                             #
- 
 # Несколько записей можно задать,​ разделяя их пробелами. ​  # # Несколько записей можно задать,​ разделяя их пробелами. ​  #
- 
 # Аргумент “any” можно использовать для снятия всех ​       # # Аргумент “any” можно использовать для снятия всех ​       #
- 
 # запретов на перенаправление портов. По умолчанию любое ​  # # запретов на перенаправление портов. По умолчанию любое ​  #
 # перенаправление разрешено. ​                              # # перенаправление разрешено. ​                              #
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## PermitTunnel ############################################​ ## PermitTunnel ############################################​
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешено ли перенаправление tun-устройств. ​  # # Указывает,​ разрешено ли перенаправление tun-устройств. ​  #
- 
 # Может принимать значения: ​                               # # Может принимать значения: ​                               #
- 
 # “yes” ​                                                   # # “yes” ​                                                   #
- 
 # “point-to-point” (3-й сетевой уровень) ​                  # # “point-to-point” (3-й сетевой уровень) ​                  #
- 
 # “ethernet” (2-й сетевой уровень) ​                        # # “ethernet” (2-й сетевой уровень) ​                        #
- 
 # “no” ​                                                    # # “no” ​                                                    #
- 
 # Значение “yes” разрешает одновременно и “point-to-point” # # Значение “yes” разрешает одновременно и “point-to-point” #
- 
 # и “ethernet”. По умолчанию - “no”. ​                      # # и “ethernet”. По умолчанию - “no”. ​                      #
 #                                                          # #                                                          #
- 
 ############################################################​ ############################################################​
 ##################​ Опции журналирования ####################​ ##################​ Опции журналирования ####################​
Строка 884: Строка 593:
 #                                                          # #                                                          #
 ## SyslogFacility ##########################################​ ## SyslogFacility ##########################################​
- 
 #                                                          # #                                                          #
- 
 # Задает код объекта журнала для записи сообщений в        # # Задает код объекта журнала для записи сообщений в        #
 # системный журнал от sshd. Возможные значения: ​           # # системный журнал от sshd. Возможные значения: ​           #
- 
 # DAEMON ​                                                  # # DAEMON ​                                                  #
- 
 # USER                                                     # # USER                                                     #
- 
 # AUTH                                                     # # AUTH                                                     #
- 
 # LOCAL0 ​                                                  # # LOCAL0 ​                                                  #
- 
 # LOCAL1 ​                                                  #  ​ # LOCAL1 ​                                                  #  ​
- 
 # LOCAL2 ​                                                  # # LOCAL2 ​                                                  #
- 
 # LOCAL3 ​                                                  # # LOCAL3 ​                                                  #
- 
 # LOCAL4 ​                                                  # # LOCAL4 ​                                                  #
- 
 # LOCAL5 ​                                                  # # LOCAL5 ​                                                  #
- 
 # LOCAL6 ​                                                  # # LOCAL6 ​                                                  #
- 
 # LOCAL7 ​                                                  # # LOCAL7 ​                                                  #
- 
 # По умолчанию используется AUTH.                          # # По умолчанию используется AUTH.                          #
- 
 #                                                          # #                                                          #
 SyslogFacility AUTH SyslogFacility AUTH
 #                                                          # #                                                          #
- 
 ## LogLevel ################################################​ ## LogLevel ################################################​
- 
 #                                                          # #                                                          #
- 
 # Задает уровень детальности журнала sshd.                 # # Задает уровень детальности журнала sshd.                 #
- 
 # Возможные варианты: ​                                     # # Возможные варианты: ​                                     #
- 
 # SILENT ​                                                  # # SILENT ​                                                  #
- 
 # QUIET                                                    # # QUIET                                                    #
- 
 # FATAL                                                    # # FATAL                                                    #
- 
 # ERROR                                                    # # ERROR                                                    #
- 
 # INFO                                                     # # INFO                                                     #
- 
 # VERBOSE ​                                                 # # VERBOSE ​                                                 #
- 
 # DEBUG                                                    # # DEBUG                                                    #
- 
 # DEBUG1 ​                                                  # # DEBUG1 ​                                                  #
- 
 # DEBUG2 ​                                                  # # DEBUG2 ​                                                  #
- 
 # DEBUG3 ​                                                  # ​ # DEBUG3 ​                                                  # ​
- 
 # По умолчанию - INFO.                                     # ​ # По умолчанию - INFO.                                     # ​
- 
 # DEBUG и DEBUG1 эквивалентны друг другу. ​                 # # DEBUG и DEBUG1 эквивалентны друг другу. ​                 #
- 
 # DEBUG2 и DEBUG3 задают самые высокие уровни отладочного ​ # # DEBUG2 и DEBUG3 задают самые высокие уровни отладочного ​ #
 # вывода. Запись логов с уровнем DEBUG угрожает ​           # # вывода. Запись логов с уровнем DEBUG угрожает ​           #
 # приватности пользователей и не рекомендована. ​           # # приватности пользователей и не рекомендована. ​           #
- 
 #                                                          # #                                                          #
 LogLevel INFO LogLevel INFO
Строка 962: Строка 638:
 #                                                          # #                                                          #
 ## X11Forwarding ###########################################​ ## X11Forwarding ###########################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешено ли перенаправление графической ​     # # Указывает,​ разрешено ли перенаправление графической ​     #
 # подсистемы X11. Может принимать значения “yes” или “no”. # # подсистемы X11. Может принимать значения “yes” или “no”. #
- 
 # По умолчанию - “no”. ​                                    # ​ # По умолчанию - “no”. ​                                    # ​
- 
 # Внимание - включение простого перенаправления Х11 -      # # Внимание - включение простого перенаправления Х11 -      #
 # большой риск как для сервера,​ так и для клиентов,​ т.к. в # # большой риск как для сервера,​ так и для клиентов,​ т.к. в #
Строка 982: Строка 654:
 # автоматически отключено,​ если будет задействована ​       # # автоматически отключено,​ если будет задействована ​       #
 # директива UseLogin. ​                                     # # директива UseLogin. ​                                     #
- 
 #                                                          # #                                                          #
 X11Forwarding yes X11Forwarding yes
 #                                                          # #                                                          #
- 
 ## X11UseLocalhost #########################################​ ## X11UseLocalhost #########################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ должен ли sshd ограничить область ​            # # Указывает,​ должен ли sshd ограничить область ​            #
 # перенаправления Х11 локальным loopback адресом,​ или ​     # # перенаправления Х11 локальным loopback адресом,​ или ​     #
 # должен разрешить любые адреса. По умолчанию - sshd       # # должен разрешить любые адреса. По умолчанию - sshd       #
 # "​сажает"​ сервер перенаправления Х11 на локальный адрес ​  # # "​сажает"​ сервер перенаправления Х11 на локальный адрес ​  #
- 
 # и задает часть переменной окружения DISPLAY, отвечающую ​ # # и задает часть переменной окружения DISPLAY, отвечающую ​ #
 # за имя хоста как “localhost”. Стоит заметить,​ что ​       # # за имя хоста как “localhost”. Стоит заметить,​ что ​       #
Строка 1003: Строка 670:
 # ограничения. ​                                            # # ограничения. ​                                            #
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## XAuthLocation ###########################################​ ## XAuthLocation ###########################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает полный путь к программе xauth. ​                # # Указывает полный путь к программе xauth. ​                #
- 
 # По умолчанию - /​usr/​bin/​X11/​xauth. ​                      # # По умолчанию - /​usr/​bin/​X11/​xauth. ​                      #
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## X11DisplayOffset ########################################​ ## X11DisplayOffset ########################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает номер первого дисплея,​ доступного sshd в       # # Указывает номер первого дисплея,​ доступного sshd в       #
 # качестве перенаправления X11. Это сделано для того, ​     # # качестве перенаправления X11. Это сделано для того, ​     #
 # чтобы перенаправленные "​иксы"​ не пересекались с          #  # чтобы перенаправленные "​иксы"​ не пересекались с          # 
- 
 # реальными. По умолчанию - 10.                            # # реальными. По умолчанию - 10.                            #
 #                                                          # #                                                          #
- 
 X11DisplayOffset 10 X11DisplayOffset 10
 +#                                                          #
 ############################################################​ ############################################################​
 ###################​ Различные опции ########################​ ###################​ Различные опции ########################​
Строка 1034: Строка 689:
 #                                                          # #                                                          #
 ## LoginGraceTime ##########################################​ ## LoginGraceTime ##########################################​
- 
 #                                                          # #                                                          #
- 
 # Время, по прошествии которого сервер отключает ​          # # Время, по прошествии которого сервер отключает ​          #
 # пользователя,​ если тот не смог удовлетворительно ​        # # пользователя,​ если тот не смог удовлетворительно ​        #
Строка 1045: Строка 698:
 #                                                          # #                                                          #
 ## MaxAuthTries ############################################​ ## MaxAuthTries ############################################​
- 
 #                                                          # #                                                          #
 # Указывает максимальное число попыток аутентификации, ​    # # Указывает максимальное число попыток аутентификации, ​    #
- 
 # разрешенное для одного соединения. ​                      # # разрешенное для одного соединения. ​                      #
- 
 # Как только число неудачных попыток превысит половину ​    # # Как только число неудачных попыток превысит половину ​    #
- 
 # заданного значения,​ все последующие попытки будут ​       # # заданного значения,​ все последующие попытки будут ​       #
- 
 # заноситься в журнал. Значение по умолчанию - 6.          # # заноситься в журнал. Значение по умолчанию - 6.          #
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## MaxSessions #############################################​ ## MaxSessions #############################################​
- 
 #                                                          # #                                                          #
 # Указывает максимальное число одновременных подключений ​  # # Указывает максимальное число одновременных подключений ​  #
- 
 # для каждого сетевого соединения. По умолчанию - 10.      # # для каждого сетевого соединения. По умолчанию - 10.      #
 #                                                          # #                                                          #
- 
-#                                                          # 
- 
 ## MaxStartups #############################################​ ## MaxStartups #############################################​
 #                                                          # #                                                          #
Строка 1079: Строка 719:
 # либо истечением периода времени указанного в директиве ​  # # либо истечением периода времени указанного в директиве ​  #
 # LoginGraceTime. Значение по умолчанию - 10.              # # LoginGraceTime. Значение по умолчанию - 10.              #
- 
 # Дополнительно,​ можно задать ранний сброс соединений, ​    # # Дополнительно,​ можно задать ранний сброс соединений, ​    #
- 
 # указав в качестве параметра три значения,​ разделенные ​   # # указав в качестве параметра три значения,​ разделенные ​   #
 # двоеточием “start:​rate:​full” (например:​ "​10:​30:​60"​). ​    # # двоеточием “start:​rate:​full” (например:​ "​10:​30:​60"​). ​    #
 # sshd отклонит попытку соединения с вероятностью равной ​  # # sshd отклонит попытку соединения с вероятностью равной ​  #
- 
 # “rate/​100” (т.е. в нашем примере - 30%), если уже ​       # # “rate/​100” (т.е. в нашем примере - 30%), если уже ​       #
 # имеется “start” (10) неавторизованных соединений. ​       # # имеется “start” (10) неавторизованных соединений. ​       #
- 
 # Вероятность увеличивается линейно и любые попытки ​       # # Вероятность увеличивается линейно и любые попытки ​       #
 # соединения будут отклонены,​ если число неавторизованных ​ # # соединения будут отклонены,​ если число неавторизованных ​ #
 # соединений достигнет значения “full” (60).               # # соединений достигнет значения “full” (60).               #
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## Compression #############################################​ ## Compression #############################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ разрешено ли сжатие данных. Может быть ​       # # Указывает,​ разрешено ли сжатие данных. Может быть ​       #
 # "​yes"​ - сжатие разрешено. ​                               # # "​yes"​ - сжатие разрешено. ​                               #
 # "​delayed"​ - сжатие отложено до тех пор, пока ​            # # "​delayed"​ - сжатие отложено до тех пор, пока ​            #
 # пользователь успешно не аутентифицируется. ​              # # пользователь успешно не аутентифицируется. ​              #
- 
 # "​no"​ - сжатие запрещено. ​                                # # "​no"​ - сжатие запрещено. ​                                #
- 
 # По умолчанию - "​delayed"​. ​                               # # По умолчанию - "​delayed"​. ​                               #
-#                                                          # 
- 
- 
 #                                                          # #                                                          #
 ## UseLogin ################################################​ ## UseLogin ################################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ должен ли использоваться login для ​           # # Указывает,​ должен ли использоваться login для ​           #
 # интерактивного сеанса. Значение по умолчанию - “no”. ​    # # интерактивного сеанса. Значение по умолчанию - “no”. ​    #
- 
 # Стоит отметить,​ что login никогда не использовался для ​  # # Стоит отметить,​ что login никогда не использовался для ​  #
 # выполнения удаленных команд. Так же заметим,​ что ​        # # выполнения удаленных команд. Так же заметим,​ что ​        #
 # использование login сделает невозможным использование ​   # # использование login сделает невозможным использование ​   #
- 
 # директивы X11Forwarding,​ потому что login не знает, что ​ # # директивы X11Forwarding,​ потому что login не знает, что ​ #
 # ему делать с xauth. Если включена директива ​             # # ему делать с xauth. Если включена директива ​             #
 # UsePrivilegeSeparation - она будет отключена после ​      # # UsePrivilegeSeparation - она будет отключена после ​      #
 # авторизации. ​                                            # # авторизации. ​                                            #
- 
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## UsePrivilegeSeparation ##################################​ ## UsePrivilegeSeparation ##################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ должен ли sshd разделять привилегии. Если да  # # Указывает,​ должен ли sshd разделять привилегии. Если да  #
 # - то сначала будет создан непривилегированный дочерний ​  # # - то сначала будет создан непривилегированный дочерний ​  #
Строка 1140: Строка 758:
 # вошедшего пользователя. Основная цель разделения ​        # # вошедшего пользователя. Основная цель разделения ​        #
 # привилегий - предотвращение превышения прав доступа. ​    # # привилегий - предотвращение превышения прав доступа. ​    #
- 
 # Значение по умолчанию - “yes”. ​                          # # Значение по умолчанию - “yes”. ​                          #
- 
 #                                                          # #                                                          #
 UsePrivilegeSeparation yes UsePrivilegeSeparation yes
 #                                                          # #                                                          #
 ## StrictModes #############################################​ ## StrictModes #############################################​
- 
 #                                                          # #                                                          #
 # Указывает должен ли sshd проверить режимы доступа и      # # Указывает должен ли sshd проверить режимы доступа и      #
Строка 1155: Строка 770:
 # всем подряд.По умолчанию - “yes”. ​                       # # всем подряд.По умолчанию - “yes”. ​                       #
 #                                                          # #                                                          #
- 
 StrictModes yes StrictModes yes
 #                                                          # #                                                          #
 ## AcceptEnv ###############################################​ ## AcceptEnv ###############################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ какие переменные окружения,​ переданные ​       # # Указывает,​ какие переменные окружения,​ переданные ​       #
 # клиентом будут приняты. См. опцию SendEnv в клиенте. ​    # # клиентом будут приняты. См. опцию SendEnv в клиенте. ​    #
- 
 # Стоит заметить,​ что передача переменных возможна только ​ # # Стоит заметить,​ что передача переменных возможна только ​ #
 # для протокола ssh2. Переменные указываются по имени, ​    # # для протокола ssh2. Переменные указываются по имени, ​    #
Строка 1174: Строка 785:
 # директивой аккуратно. По умолчанию никакие ​              # # директивой аккуратно. По умолчанию никакие ​              #
 # пользовательские переменные окружения не принимаются. ​   # # пользовательские переменные окружения не принимаются. ​   #
- 
 #                                                          # #                                                          #
- 
 AcceptEnv LANG LC_* AcceptEnv LANG LC_*
- 
 #                                                          # #                                                          #
 ## PermitUserEnvironment ###################################​ ## PermitUserEnvironment ###################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ должен ли sshd воспринимать ​                  # # Указывает,​ должен ли sshd воспринимать ​                  #
 # ~/​.ssh/​environment и опцию environment= в                # # ~/​.ssh/​environment и опцию environment= в                #
 # ~/​.ssh/​authorized_keys. По умолчанию - “no”. Стоит ​      # # ~/​.ssh/​authorized_keys. По умолчанию - “no”. Стоит ​      #
 # заметить,​ что разрешение обработки окружения может дать ​ # # заметить,​ что разрешение обработки окружения может дать ​ #
- 
 # пользователям возможность обойти ограничения в некоторых # # пользователям возможность обойти ограничения в некоторых #
- 
 # конфигурациях,​ использующих такие механизмы,​ как ​        # # конфигурациях,​ использующих такие механизмы,​ как ​        #
- 
 # LD_PRELOAD. ​                                             # # LD_PRELOAD. ​                                             #
- 
 #                                                          # #                                                          #
- 
 #                                                          # #                                                          #
 ## PidFile #################################################​ ## PidFile #################################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает файл, содержащий идентификатор процесса ​       # # Указывает файл, содержащий идентификатор процесса ​       #
 # (process ID, PID) демона SSH.                            # # (process ID, PID) демона SSH.                            #
 # По умолчанию - /​var/​run/​sshd.pid ​                        # # По умолчанию - /​var/​run/​sshd.pid ​                        #
 #                                                          # #                                                          #
- 
 #                                                          # #                                                          #
 ## PrintLastLog ############################################​ ## PrintLastLog ############################################​
 #                                                          # #                                                          #
- 
 # Указывает,​ должен ли sshd выводить на экран дату и время # # Указывает,​ должен ли sshd выводить на экран дату и время #
 # последнего севнса при интерактивном входе пользователя. ​ # # последнего севнса при интерактивном входе пользователя. ​ #
- 
 # По умолчанию - “yes”. ​                                   # # По умолчанию - “yes”. ​                                   #
- 
 #                                                          # #                                                          #
 PrintLastLog yes PrintLastLog yes
 #                                                          # #                                                          #
- 
 ## PrintMotd ###############################################​ ## PrintMotd ###############################################​
- 
 #                                                          # #                                                          #
- 
 # Указывает,​ должен ли sshd выводить на экран /​etc/​motd ​   # # Указывает,​ должен ли sshd выводить на экран /​etc/​motd ​   #
 # при интерактивном входе пользователя. На некоторых ​      # # при интерактивном входе пользователя. На некоторых ​      #
 # системах (например в Ubuntu) эта информация так же       # # системах (например в Ubuntu) эта информация так же       #
- 
 # выводится на экран оболочкой. ​                           # # выводится на экран оболочкой. ​                           #
 # Значение по умолчанию - “yes”. ​                          # # Значение по умолчанию - “yes”. ​                          #
- 
 #                                                          # #                                                          #
- 
 PrintMotd no PrintMotd no
- 
 #                                                          # #                                                          #
 ## Banner ##################################################​ ## Banner ##################################################​
 #                                                          # #                                                          #
- 
 # Указывает какой файл содержит текстовый баннер,​ который ​ # # Указывает какой файл содержит текстовый баннер,​ который ​ #
 # будет показан пользователю ПЕРЕД процедурой ​             # # будет показан пользователю ПЕРЕД процедурой ​             #
 # аутентификации. Опция доступна только для протокола ssh2.# # аутентификации. Опция доступна только для протокола ssh2.#
- 
 # По умолчанию - не показывает ничего. ​                    # # По умолчанию - не показывает ничего. ​                    #
- 
 # В Ubuntu файл issue.net содержит фразу Ubuntu {version}, # # В Ubuntu файл issue.net содержит фразу Ubuntu {version}, #
- 
 # например,​ для karmic это "​Ubuntu 9.10". Можно ​           # # например,​ для karmic это "​Ubuntu 9.10". Можно ​           #
 # использовать для дезориентации возможных атакующих, ​     # # использовать для дезориентации возможных атакующих, ​     #
- 
 # написав туда например "My D-Link Interet Router"​ =)      # # написав туда например "My D-Link Interet Router"​ =)      #
- 
 #                                                          # #                                                          #
 Banner /​etc/​issue.net Banner /​etc/​issue.net
Строка 1260: Строка 842:
 # выполнен chroot после аутентификации. Путь и все его ​    # # выполнен chroot после аутентификации. Путь и все его ​    #
 # содержимое должны соответствовать принадлежащим ​         # # содержимое должны соответствовать принадлежащим ​         #
- 
 # суперпользователю папкам и быть не доступными для ​       # # суперпользователю папкам и быть не доступными для ​       #
- 
 # записи другими пользователями. ​                          # # записи другими пользователями. ​                          #
- 
 # В пути могут быть указаны метки, подставляемые в         # # В пути могут быть указаны метки, подставляемые в         #
 # процессе аутентификации: ​                                # # процессе аутентификации: ​                                #
- 
 # %% - заменяется литералом '​%' ​                           # # %% - заменяется литералом '​%' ​                           #
- 
 # %h - заменяется домашней директорией ​                    # # %h - заменяется домашней директорией ​                    #
 # аутентифицируещегося пользователя ​                       # # аутентифицируещегося пользователя ​                       #
- 
 # %u - заменяется именем аутентифицируещегося пользователя # # %u - заменяется именем аутентифицируещегося пользователя #
- 
 # chroot-папка должна содержать все необходимые файлы и    # # chroot-папка должна содержать все необходимые файлы и    #
 # папки для пользовательского сеанса. Для интерактивного ​  # # папки для пользовательского сеанса. Для интерактивного ​  #
 # сеанса нужны как минимум: ​                               # # сеанса нужны как минимум: ​                               #
- 
 # оболочка,​ обычно - sh                                    # # оболочка,​ обычно - sh                                    #
- 
 # базовые устройства в /dev, такие как: ​                   # # базовые устройства в /dev, такие как: ​                   #
 # null, zero, stdin, stdout, stderr, arandom и tty         # # null, zero, stdin, stdout, stderr, arandom и tty         #
- 
 # для сеанса передачи данных при помощи sftp никаких ​      # # для сеанса передачи данных при помощи sftp никаких ​      #
 # дополнительных настроек не нужно, если используется ​     # # дополнительных настроек не нужно, если используется ​     #
 # внутренний процесс sftp сервера. См. Subsystem для ​      # # внутренний процесс sftp сервера. См. Subsystem для ​      #
 # большей информации. По умолчанию chroot не выполняется. ​ # # большей информации. По умолчанию chroot не выполняется. ​ #
- 
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## ForceCommand ############################################​ ## ForceCommand ############################################​
 #                                                          # #                                                          #
- 
 # Заставляет выполняться указанную команду. Игнорирует ​    # # Заставляет выполняться указанную команду. Игнорирует ​    #
 # любые команды переданные клиентом или записанные в       # # любые команды переданные клиентом или записанные в       #
Строка 1301: Строка 869:
 # команды или подсистемы. Наиболее полезна внутри блока ​   # # команды или подсистемы. Наиболее полезна внутри блока ​   #
 # Match. Команда,​ изначально переданная клиентом,​ хранится # # Match. Команда,​ изначально переданная клиентом,​ хранится #
- 
 # в переменной окружения SSH_ORIGINAL_COMMAND. Если ​       # # в переменной окружения SSH_ORIGINAL_COMMAND. Если ​       #
 # указать команду "​internal-sftp",​ будет запущен ​          # # указать команду "​internal-sftp",​ будет запущен ​          #
 # внутренний sftp сервер,​ которому не нужны дополнительные # # внутренний sftp сервер,​ которому не нужны дополнительные #
 # файлы и папки, описанные в директиве ChrootDirectory. ​   # # файлы и папки, описанные в директиве ChrootDirectory. ​   #
- 
-#                                                          # 
- 
 #                                                          # #                                                          #
 ## Subsystem ###############################################​ ## Subsystem ###############################################​
- 
 #                                                          # #                                                          #
- 
 # Определяет и настраивает внешнюю подсистему (например ​   # # Определяет и настраивает внешнюю подсистему (например ​   #
 # демона передачи файлов - file transfer daemon). ​         # # демона передачи файлов - file transfer daemon). ​         #
- 
 # Аргументами служат имя и команда (с возможными ​          # # Аргументами служат имя и команда (с возможными ​          #
 # аргументами),​ которая будет выполнена во время запроса ​  # # аргументами),​ которая будет выполнена во время запроса ​  #
Строка 1323: Строка 884:
 # в качестве подсистемы “internal-sftp” - что запустит ​    # # в качестве подсистемы “internal-sftp” - что запустит ​    #
 # внутренний sftp сервер. Это может значительно упростить ​ # # внутренний sftp сервер. Это может значительно упростить ​ #
- 
 # настройку в случае использования директивы ​              # # настройку в случае использования директивы ​              #
 # ChrootDirectory По умолчанию никаких подсистем ​          # # ChrootDirectory По умолчанию никаких подсистем ​          #
 # не вызывается. Актуально только для протокола ssh2.      # # не вызывается. Актуально только для протокола ssh2.      #
- 
 #                                                          # #                                                          #
 Subsystem sftp /​usr/​lib/​openssh/​sftp-server Subsystem sftp /​usr/​lib/​openssh/​sftp-server
 #                                                          # #                                                          #
 ############################################################​ ############################################################​
- 
 #####################​ Блок Match ###########################​ #####################​ Блок Match ###########################​
- 
 ############################################################​ ############################################################​
- 
 #                                                          # #                                                          #
- 
 # Специально вынес в конец файла, чтобы было удобнее ​      # # Специально вынес в конец файла, чтобы было удобнее ​      #
-# писать Match правила.+# писать Match правила. ​                                   #
 #                                                  MadKox. # #                                                  MadKox. #
- 
 #                                                          # #                                                          #
- 
 # Директива Match представляет собой начало условного ​     # # Директива Match представляет собой начало условного ​     #
 # блока. Если выполнены все критерии,​ указанные в строке ​  # # блока. Если выполнены все критерии,​ указанные в строке ​  #
Строка 1354: Строка 907:
 # или до конца файла. Аргумент директивы Match - одна или ​ # # или до конца файла. Аргумент директивы Match - одна или ​ #
 # несколько пар записей критериев. Возможные виды записей:​ # # несколько пар записей критериев. Возможные виды записей:​ #
- 
 # User                                                     # # User                                                     #
- 
 # Group                                                    # # Group                                                    #
- 
 # Host                                                     # # Host                                                     #
- 
 # Address ​                                                 # # Address ​                                                 #
- 
 # Записи могут содержать как одиночные значения ​           # # Записи могут содержать как одиночные значения ​           #
 # (например User=user), так и несколько значений, ​         # # (например User=user), так и несколько значений, ​         #
Строка 1375: Строка 923:
 # В качестве директив Match может использовать только ​     # # В качестве директив Match может использовать только ​     #
 # определенный набор директив: ​                            # # определенный набор директив: ​                            #
- 
 # AllowTcpForwarding ​                                      # # AllowTcpForwarding ​                                      #
- 
 # Banner ​                                                  # # Banner ​                                                  #
- 
 # ChrootDirectory ​                                         # # ChrootDirectory ​                                         #
- 
 # ForceCommand ​                                            # # ForceCommand ​                                            #
- 
 # GatewayPorts ​                                            # # GatewayPorts ​                                            #
- 
 # GSSAPIAuthentication ​                                    # # GSSAPIAuthentication ​                                    #
- 
 # HostbasedAuthentication ​                                 # # HostbasedAuthentication ​                                 #
- 
 # KbdInteractiveAuthentication ​                            # # KbdInteractiveAuthentication ​                            #
- 
 # KerberosAuthentication ​                                  # # KerberosAuthentication ​                                  #
- 
 # MaxAuthTries ​                                            # ​ # MaxAuthTries ​                                            # ​
- 
 # MaxSessions ​                                             # # MaxSessions ​                                             #
- 
 # PasswordAuthentication ​                                  # # PasswordAuthentication ​                                  #
- 
 # PermitOpen ​                                              # # PermitOpen ​                                              #
- 
 # PermitRootLogin ​                                         # # PermitRootLogin ​                                         #
- 
 # RhostsRSAAuthentication ​                                 # # RhostsRSAAuthentication ​                                 #
- 
 # RSAAuthentication ​                                       # # RSAAuthentication ​                                       #
- 
 # X11DisplayOffset ​                                        # # X11DisplayOffset ​                                        #
- 
 # X11Forwarding ​                                           # # X11Forwarding ​                                           #
- 
 # X11UseLocalHost ​                                         # # X11UseLocalHost ​                                         #
- 
-#                                                          # 
 </​file>​ </​file>​
  
-Вы можете ​скопировать приведенный выше текст в ваш ''​sshd_config''​ и использовать в дальнейшем для настройки.+Можно скопировать приведенный выше текст в ваш ​собственный ​''​sshd_config''​ и использовать в дальнейшем для настройки.
  
 ===== Рекомендуемые параметры. Безопасность ===== ===== Рекомендуемые параметры. Безопасность =====
- +Сам по себе, неправильно настроенный ​SSH-сервер — огромная уязвимость в безопасности системы,​ т. к. у возможного злоумышленника есть возможность получить практически неограниченный доступ к системе. ​ Помимо этого, у sshd есть много дополнительных полезных опций, которые желательно включить для повышения удобства работы и безопасности((Описание различных директив см. выше в примере ''​sshd_config'',​ ниже приведены только некоторые,​ самые интересные директивы)).
-Сам по себе, неправильно настроенный ​ssh сервер — огромная уязвимость в безопасности системы,​ т. к. у возможного злоумышленника есть возможность получить практически неограниченный доступ к системе. ​ Помимо этого, у sshd есть много дополнительных полезных опций, которые желательно включить для повышения удобства работы и безопасности((Описание различных директив см. выше в примере ''​sshd_config'',​ ниже приведены только некоторые,​ самые интересные директивы)).+
  
 ==== Port, ListenAddress и AddressFamily ==== ==== Port, ListenAddress и AddressFamily ====
- 
 Эти три параметра определяют,​ на каких портах и адресах ваш сервер будет ждать входящие соединения. Во-первых,​ имеет смысл по возможности ограничить семейство обрабатываемых адресов реально используемыми,​ т. е. если вы используете только IPv4 — отключите IРv6, и наоборот. ​ Сделать это можно при помощи параметра AddressFamily,​ например (для разрешения IPv4 и запрета IPv6): Эти три параметра определяют,​ на каких портах и адресах ваш сервер будет ждать входящие соединения. Во-первых,​ имеет смысл по возможности ограничить семейство обрабатываемых адресов реально используемыми,​ т. е. если вы используете только IPv4 — отключите IРv6, и наоборот. ​ Сделать это можно при помощи параметра AddressFamily,​ например (для разрешения IPv4 и запрета IPv6):
-<code>+<file>
 AddressFamily inet AddressFamily inet
-</code>+</file>
  
 Во-вторых,​ желательно сменить стандартный порт (22) на котором слушает sshd. Это связано с тем, что многочисленные сетевые сканеры постоянно пытаются соединиться с 22-м портом и как минимум получить доступ путем перебора логинов/​паролей из своей базы. Даже если у вас и отключена парольная аутентификация — эти попытки сильно засоряют журналы и (в большом количестве) могут негативно повлиять на скорость работы ssh сервера. ​ Если же вы по какой либо причине не желаете изменить стандартный порт вы можете использовать как различные внешние утилиты для борьбы брутфорсерами,​ например [[http://​www.fail2ban.org|fail2ban]],​ так и встроенные,​ такие как ''​MaxStartups''​.\\ Во-вторых,​ желательно сменить стандартный порт (22) на котором слушает sshd. Это связано с тем, что многочисленные сетевые сканеры постоянно пытаются соединиться с 22-м портом и как минимум получить доступ путем перебора логинов/​паролей из своей базы. Даже если у вас и отключена парольная аутентификация — эти попытки сильно засоряют журналы и (в большом количестве) могут негативно повлиять на скорость работы ssh сервера. ​ Если же вы по какой либо причине не желаете изменить стандартный порт вы можете использовать как различные внешние утилиты для борьбы брутфорсерами,​ например [[http://​www.fail2ban.org|fail2ban]],​ так и встроенные,​ такие как ''​MaxStartups''​.\\
 Задать порт можно как абсолютным значением для всех интерфейсов при помощи директивы ''​Port'',​ так и конкретным значением для каждого интерфейса,​ при помощи директивы ''​ListenAddress''​. Например:​ Задать порт можно как абсолютным значением для всех интерфейсов при помощи директивы ''​Port'',​ так и конкретным значением для каждого интерфейса,​ при помощи директивы ''​ListenAddress''​. Например:​
-<code>+<file>
 Port 2002 Port 2002
-</code>+</file>
 или или
-<code>+<file>
 ListenAddress 192.168.0.1:​2003 ListenAddress 192.168.0.1:​2003
 ListenAddress 192.168.1.1:​2004 ListenAddress 192.168.1.1:​2004
-</code>+</file>
  
 ==== Запрещение удаленного доступа для суперпользователя ==== ==== Запрещение удаленного доступа для суперпользователя ====
  
-По умолчанию root-доступ ​разрешен. Это означает, что клиент при ​подключении в качестве ​пользователя может указать root, и во многих случаях получить контроль над системойПри условии,​ что по умолчанию в Ubuntu пользователь,​ добавленный при установке системы имеет возможность решать все административные задачи через sudo, создавать возможность root доступа к системе ​как минимум странно. Рекомендуется отключить эту опцию ​совсем, или применять ее только в режиме ''​forced-commands-only''​. Отключить root-доступ можно так: +По умолчанию root-доступ запрещен по паролю (по ключу - можно) - опция PermitRootLogin установлена в without-password((В более ​старых версиях ​и на некоторых других ​дистрибутивах может стоять и вовсе '​yes'​.)). Но, при условии,​ что по умолчанию в Ubuntu пользователь,​ добавленный при установке системы имеет возможность решать все административные задачи через sudo, создавать возможность root доступа к системе ​через ssh - выглядит неразумно (даже при аутентификации по ключу). Рекомендуется ​совсем ​отключитьэту опцию, или применять ее только в режиме ''​forced-commands-only''​. Отключить root-доступ можно так: 
-<code>+<file>
 PermitRootLogin no PermitRootLogin no
-</code>+</file>
  
 ==== Парольная аутентификация ==== ==== Парольная аутентификация ====
  
 Разрешенная по умолчанию парольная аутентификация является практически самым примитивным способом авторизации в sshd. С одной стороны это упрощает конфигурацию и подключение новых пользователей (пользователю достаточно знать свой системный логин/​пароль),​ с другой стороны пароль всегда можно подобрать,​ а пользователи часто пренебрегают созданием сложных и длинных паролей. Специальные боты постоянно сканируют доступные из интернета ssh сервера и пытаются авторизоваться на них путем перебора логинов/​паролей из своей базы. Настоятельно не рекомендуется использовать парольную аутентификацию. Отключить ее можно так: Разрешенная по умолчанию парольная аутентификация является практически самым примитивным способом авторизации в sshd. С одной стороны это упрощает конфигурацию и подключение новых пользователей (пользователю достаточно знать свой системный логин/​пароль),​ с другой стороны пароль всегда можно подобрать,​ а пользователи часто пренебрегают созданием сложных и длинных паролей. Специальные боты постоянно сканируют доступные из интернета ssh сервера и пытаются авторизоваться на них путем перебора логинов/​паролей из своей базы. Настоятельно не рекомендуется использовать парольную аутентификацию. Отключить ее можно так:
-<code>+<file>
 PasswordAuthentication no PasswordAuthentication no
-</code>+</file>
  
 Если по каким либо причинам вам все таки хочется использовать парольную аутентификацию — позаботьтесь о том, чтобы никто не мог авторизоваться с пустым паролем. Для этого задайте директиву ''​PermitEmptyPasswords'':​ Если по каким либо причинам вам все таки хочется использовать парольную аутентификацию — позаботьтесь о том, чтобы никто не мог авторизоваться с пустым паролем. Для этого задайте директиву ''​PermitEmptyPasswords'':​
-<code>+<file>
 PermitEmptyPasswords no PermitEmptyPasswords no
-</code>+</file>
  
-==== Протоколы ​ssh1 и ssh2 ====+==== Протоколы ​SSH1 и SSH2 ====
  
-Как уже было сказано,​ sshd может работать с протоколами ​ssh1 и ssh2. При этом использование небезопасного ​ssh1 крайне не рекомендуется. Заставить sshd работать только с протоколом ​ssh2 можно так: +Как уже было сказано,​ sshd может работать с протоколами ​SSH1 и SSH2. При этом использование небезопасного ​SSH1 крайне не рекомендуется. Заставить sshd работать только с протоколом ​SSH2 можно так: 
-<code>+<file>
 Protocol 2 Protocol 2
-</code>+</file>
  
 ==== Аутентификация на основе SSH2 RSA-ключей ==== ==== Аутентификация на основе SSH2 RSA-ключей ====
  
-Наиболее предпочтительным способом авторизации является аутентификация на основе SSH2 RSA-ключей. При таком способе пользователь генерирует на своей стороне пару ключей,​ из которой один ключ является секретным,​ а другой публичным. Публичный ключ копируется на сервер и служит для проверки идентичности пользователя. Более подробно про создание пары ключей и способы размещения их на сервере см. в описании ​ssh-клиента.+Наиболее предпочтительным способом авторизации является аутентификация на основе SSH2 RSA-ключей. При таком способе пользователь генерирует на своей стороне пару ключей,​ из которой один ключ является секретным,​ а другой публичным. Публичный ключ копируется на сервер и служит для проверки идентичности пользователя. Более подробно про создание пары ключей и способы размещения их на сервере см. в описании ​SSH-клиента.
 Включить аутентификацию по публичному ключу можно так: Включить аутентификацию по публичному ключу можно так:
-<code>+<file>
 PubkeyAuthentication yes PubkeyAuthentication yes
-</code+</file
-Сервер должен знать, где ему следует искать публичный ключ пользователя. Для этого применяется специальный файл. Синтаксис его может быть следующим:​\\ +Сервер должен знать, где ему следует искать публичный ключ пользователя. Для этого применяется специальный файл ​''​authorized_keys''​. Синтаксис его может быть следующим:​\\ 
-FIXME - про файл authorized_keys\\+<​file>​ 
 +# Коментарии записываются только с новой строки 
 +# общий вид записей в файле authorized_keys 
 +# [опции] тип_ключа(ssh-rsa или ssh-dss) очень_длинная_строка_непонятная_простому_человеку [логин@хост] 
 +ssh-rsa AAAAB3Nza...LiPk== user@example.net 
 +from="​*.sales.example.net,​!pc.sales.example.net"​ ssh-rsa AAAAB2...19Q== john@example.net 
 +command="​dump /​home",​no-pty,​no-port-forwarding ssh-dss AAAAC3...51R== example.net 
 +permitopen="​192.0.2.1:​80",​permitopen="​192.0.2.2:​25"​ ssh-dss AAAAB5...21S== 
 +tunnel="​0",​command="​sh /​etc/​netstart tun0" ssh-rsa AAAA...== jane@example.net 
 +</​file>​
  
 Можно указать как один общий файл с ключами,​ так и по файлу на каждого пользователя. Последний способ является более удобным и безопасным,​ т. к. можно во-первых указывать разные комбинации ключей для каждого пользователя((Т. е. user1 может быть прописан как у себя — в файле /​home/​user1/​.ssh/​keys) так и у другого пользователя,​ что позволит ему выполнять со своего компьютера вход как «под собой»,​ так и под «другим»)),​ а во-вторых ограничить доступ к публичному ключу пользователя. Задать файл с ключами можно при помощи директивы ''​AuthorizedKeysFile'':​ Можно указать как один общий файл с ключами,​ так и по файлу на каждого пользователя. Последний способ является более удобным и безопасным,​ т. к. можно во-первых указывать разные комбинации ключей для каждого пользователя((Т. е. user1 может быть прописан как у себя — в файле /​home/​user1/​.ssh/​keys) так и у другого пользователя,​ что позволит ему выполнять со своего компьютера вход как «под собой»,​ так и под «другим»)),​ а во-вторых ограничить доступ к публичному ключу пользователя. Задать файл с ключами можно при помощи директивы ''​AuthorizedKeysFile'':​
-<code>+<file>
 AuthorizedKeysFile %h/​.ssh/​my_keys AuthorizedKeysFile %h/​.ssh/​my_keys
-</code>+</file>
 для схемы пользователь — файл\\ для схемы пользователь — файл\\
 или\\ или\\
-<code>+<file>
 AuthorizedKeysFile /​etc/​ssh/​authorized_keys AuthorizedKeysFile /​etc/​ssh/​authorized_keys
-</code+</file
-для схемы с общим файлом.+для схемы с общим файлом. По умолчанию SSH-клиент ищет ключи в файле ''​~/​.ssh/​authorized_keys'' ​.
  
 ==== Еще про безопасность ==== ==== Еще про безопасность ====
 +[[http://​rus-linux.net/​nlib.php?​name=/​MyLDP/​sec/​openssh.html|20 советов по безопасному использованию сервера OpenSSH]]
 FIXME FIXME
  
-==== Немного про дополнительные настройки ====+==== Дополнительные настройки ====
  
 === Пользователи и группы. === === Пользователи и группы. ===
Строка 1502: Строка 1036:
 По умолчанию из способов определения состояния соединения включен только способ проверки TCP соединения — ''​TCPKeepAlive'',​ однако,​ sshd умеет определять состояния соединения и более удобными и безопасными способами. Подробнее см. соответствующий раздел в примере ''​sshd_config''​. По умолчанию из способов определения состояния соединения включен только способ проверки TCP соединения — ''​TCPKeepAlive'',​ однако,​ sshd умеет определять состояния соединения и более удобными и безопасными способами. Подробнее см. соответствующий раздел в примере ''​sshd_config''​.
  
-=== Производительность. MaxStartups===+=== Производительность. MaxStartups ===
  
 FIXME FIXME
  
-=== Перенаправление портов===+=== Перенаправление портов ===
  
 FIXME FIXME
  
-=== Перенаправление X11===+=== Перенаправление X11 ===
  
-На сервере в файле /​etc/​ssh/​sshd_config выставить параметр ​ForwardX11 yes (по умолчанию ​в 11.04 включено) +На сервере в файле ​''​/​etc/​ssh/​sshd_config'' ​выставить параметр (по умолчанию включено)
-На клиенте в файле /​etc/​ssh/​ssh_config выставить параметры ​ForwardAgent yes , ForwardX11 yes (по умолчанию выключено). +<​file>​ForwardX11 yes</​file>​ 
-Запускать на клиенте можно так ssh yurauname@serverip firefox . Или сначала заходим ssh yurauname@serverip потом запускаем ​sudo synaptic к примеру.+На клиенте в файле ​''​/​etc/​ssh/​ssh_config'' ​выставить параметры (по умолчанию выключено)
 +<​file>​ 
 +ForwardAgent yes 
 +ForwardX11 yes 
 +</​file>​ 
 +Запускать на клиенте можно так ​''​ssh yurauname@serverip firefox'' ​. Или сначала заходим ​''​ssh yurauname@serverip'' ​потом запускаем, например ​''​sudo synaptic'' ​.
  
-=== ПодсистемыИспользование ​sftpd=== +=== SFTP === 
- +В sshd по умолчанию встроен SFTP-сервер. ​Протокол SFTP (SSH File Transfer Protocol) - SSH-протокол ​для передачи файлов. Он предназначен для копирования и выполнения других операций ​с файлами поверх надёжного и безопасного соединенияКак правило,​ в качестве базового ​протокола, обеспечивающего соединение, и используется протокол SSH2
-FIXME+Для того чтобы включить поддержку SFTP добавьте в ''​sshd_config''​ строку 
 +<​file>​ 
 +Subsystem sftp /​usr/​lib/​openssh/​sftp-server 
 +</​file>​ 
 +По умолчанию поддержка SFTP включена.
  
-=== Использование критериев. Директива Match===+=== Использование критериев. Директива Match ===
  
 FIXME FIXME
  
-===== Настройка ​ssh-клиента =====+===== Настройка ​SSH-клиента =====
  
-Наиболее безопасным считается вход по ключу, и в большинстве случаев на стороне сервера такая возможность включена,​ так что для её использования никаких прав суперпользователя не требуется. На клиентской машине генерим ключ: +Наиболее безопасным считается вход по ключу, и в большинстве случаев на стороне сервера такая возможность включена,​ так что для её использования никаких прав суперпользователя не требуется. На клиентской машине генерируем ключ: 
-<​code>​ssh-keygen -t rsa</​code>​+<code=bash>​ssh-keygen -t rsa</​code>​
 Получаем предложение ввести пароль для защиты файла ключа (оказывается полезным при попадании файла в чужие руки). Если мы собираемся по SSH выполнять скрипты,​ то оставляем пустым. Получаем предложение ввести пароль для защиты файла ключа (оказывается полезным при попадании файла в чужие руки). Если мы собираемся по SSH выполнять скрипты,​ то оставляем пустым.
-Передаём ключ на сервер командой +Передаём ​публичный ​ключ на сервер командой 
-<​code>​ssh-copy-id -i ~/​.ssh/​id_rsa user@server</​code>​+<code=bash>​ssh-copy-id -i ~/​.ssh/​id_rsa.pub user@server</​code>​
 Всё, можно заходить. Всё, можно заходить.
  
 Когда ssh работает на нестандартном порту: Когда ssh работает на нестандартном порту:
-<​code>​ssh-copy-id -i "​$IDENTITY" ​"​-p ​$SSH_PORT $SSH_USER@$SSH_HOST"</​code>​ +<code=bash>​ssh-copy-id -i ~/​.ssh/​id_rsa.pub ​"​-p ​port user@server"</​code>​ 
-<note tip>если возникает ошибка:​ +<note tip>Если возникает ошибка:​ 
- Bad port 'umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/​authorized_keys'​ +<​code>​Bad port 'umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/​authorized_keys'​</​code>​ 
-попробуйте взять параметры в кавычки: ssh-copy-id '-i "​$IDENTITY"​ "-p $SSH_PORT $SSH_USER@$SSH_HOST"'​ +попробуйте взять параметры в кавычки:​ 
-вот тут: http://​mikegerwitz.com/​2009/​10/​07/​ssh-copy-id-and-sshd-port/​ +<code=bash>​ssh-copy-id ​'-i /home/user/​.ssh/​id_rsa.pub ​"-p port user@server"'​</​code>​
-приводится пример+
-<​code>​ssh-copy-id ​‘-p XXXX -i ~/​.ssh/​id_rsa.pub ​username@host’</​code>​+
 </​note>​ </​note>​
 Удобно при подключени на удалённой системе пользоваться [[wiki:​screen|утилитой screen]]. Удобно при подключени на удалённой системе пользоваться [[wiki:​screen|утилитой screen]].
 +==== Настройка удаленной ssh-директории в Nautilus ====
 +Смотрите статью [[nautilus#​Подключение к удаленным серверам|Nautilus]].
 +==== Монтирование удаленной директории с помощью sshfs ====
 +Монтирование удаленного каталога в локальный каталог <code bash>​sshfs user@hostingserver.ru:/​home/​userdir ~/​sshfsdir</​code>​
 +Размонтирование <code bash>​fusermount -u ~/​sshsfdir</​code>​
 +==== SSH aliases ====
 +При использовании нескольких серверов с различными параметрами доступа (нестандартный порт, длинное имя хоста, логин отличный от локального,​ и т.п.) порой утомительно вводить все настройки подключения каждый раз заново. Для облегчения этого можно использовать aliases.
  
-==== Настройка ​удаленной ssh-папки в Nautilus ====+Настройки хранятся в ''​~/​.ssh/​config'' ​для одного пользователя ​и в ''/​etc/​ssh/​ssh_config''​ глобально для всех пользователей.
  
-FIXME+Пример конфига. Описано может быть множество серверов. Подробнее в **man ssh_config** (не путать с **sshd_config**)
  
-==== Монтирование ​удаленной папки ​с помощью sshfs ==== +<​code>​Host AliasName # Произвольное имя хоста 
- +HostName 1.2.3.4 # Можно указывать как IP, так ​и hostname (если работает DNS) 
-FIXME+User YourUserName # Если пользователь не совпадает ​с локальным пользователем 
 +Port YourSSHPort # Если нестандартный порт</​code>​
  
 +После этого можно подключаться к серверу командой <code bash>ssh AliasName</​code>​
 ==== ssh-agent ==== ==== ssh-agent ====
  
Строка 1560: Строка 1110:
  
   * Анализ лога подключения:​   * Анализ лога подключения:​
-<​code>​ssh -vvv user@host</​code>​+<code=bash>ssh -vvv user@host</​code>​
   * Анализ конфигурационных файлов клиента и сервера.   * Анализ конфигурационных файлов клиента и сервера.
 Расположение конфигурационных файлов можно узнать из Расположение конфигурационных файлов можно узнать из
 <​code>​man ssh <​code>​man ssh
 man sshd</​code>​ man sshd</​code>​
 +
 +======Использование смарт-карт======
 +
 +1. Создание сертификата и экспорт открытого ключа, а также клиентская часть на Windows + Putty SC описано на сайте:
 +http://​habrahabr.ru/​post/​88540/​
 +Описанное там дополнение Key Manager доступно только в старых версиях Firefox. Проверено на версии 3.5 для Windows.
 +Прямая ссылка на дополнение:​ https://​addons.mozilla.org/​ru/​firefox/​addon/​key-manager/​
 +
 +2. Подготовка сервера. Вам необходимо убедиться что в конфигурации sshd разрешена аутентификация при помощи публичных ключей. Для этого необходимо в файле «sshd_config» указать значение параметра «PubkeyAuthentication» в «yes».
 + ​Затем в файл "​~/​.ssh/​authorized_keys"​ добавляем наш публичный ключ полученный ранее (одной строкой). Обратите внимание,​ файл "​.ssh/​authorized_keys"​ находится в домашнем каталоге того пользователя,​ который потом будет логиниться по публичному ключу.
 +
 +3. Клиентская часть на Linux. Потребуется пересборка пакета OpenSSH без параметров. Рекомендуется только указать префиксы каталогов,​ например --prefix=/​usr. Также следует учесть,​ что файлы конфигов будут в /usr/etc.
 +Перед началом необходимы пакеты:​ opensc-lite-devel,​ zlib-devel, openssl-devel.
 +Устанавливаем драйвер смарт-карты.
 +Для удобства в конфиге ssh_config (не путать с sshd_config) указать путь к библиотеке pkcs:
 +PKCS11Provider=<​путь к библиотеке>​
 +
 +4. На клиенте запускаем
 +ssh user@host
 +Если смарт-карта (токен) подключена,​ будет запрошен пароль и выполнен вход в сессию SSH. 
 +
 +======Возможные проблемы при использовании======
 +
 +Привычная комбинация клавиш <​key>​Ctrl</​key>​+<​key>​s</​key>,​ используемая во многих редакторах для сохранения исправлений,​ при работе в терминале с ssh-cервером приведёт к выполнению команды XOFF что внешне напоминает зависание сессии. ​ Однако это не так. Сервер продолжает принимать вводимые символы и команды,​ но не выводит это на экран. Что бы выйти из такого затруднительного положения достаточно применить комбинацию <​key>​Ctrl</​key>​+<​key>​q</​key>,​ тем самым включив режим XON обратно.
 ===== Ссылки ===== ===== Ссылки =====
 +  * [[http://​help.ubuntu.ru/​wiki/​fail2ban|Fail2ban]]
   * [[http://​www.nestor.minsk.by/​sr/​2007/​11/​sr71104.html|Хитрости SSH]]   * [[http://​www.nestor.minsk.by/​sr/​2007/​11/​sr71104.html|Хитрости SSH]]
  
Строка 1578: Строка 1153:
  
 {{tag> Администрирование Система FIXME}} {{tag> Администрирование Система FIXME}}
- 
- 
- 
- 
-