Как узнать характеристики ssh

Как я могу найти текущую версию протокола ssh текущего соединения?

Я подключаюсь к машине linux (centos 6.4), используя шпатлевку. За исключением того факта, что я могу установить для putty только один тип протокола, как я могу найти текущую версию ssh-соединения (SSH1 или SSH2)?

Как только вы внутри, вы говорите:

он скажет вам точную версию сервера.

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

-V Показать номер версии и выйти.

Надеюсь это поможет.

Putty В сеансе, ведение журнала, установите переключатель «SSH пакеты и необработанные данные». Выберите файл журнала как putty.log в выбранном вами месте. Сделай связь. Тебе следует увидеть:

Смотрите ниже подробности о том, что означает SSH-2.0.

Другие методы Вы также можете попробовать использовать клиент telnet, но указать порт 22:

При подключении вы увидите:

Последняя строка, которую нужно искать:

Если это говорит о SSH-2.0 том, что это хорошо, то сервер ssh, к которому вы подключились, поддерживает только протокол SSH версии 2. Он не будет поддерживать подключения от клиентов протокола SSH V1.

Однако, если вы видите:

Тогда это означает, что серверная часть все еще поддерживает протокол SSL версии 1. В его sshd_config файле есть что-то вроде этого :

Протокол 1 уязвим и не должен использоваться.

Таким образом, чтобы получить это прямо. Если вы видите SSH-2, когда вы подключаетесь по telnet к порту 22 удаленного сервера, то вы можете использовать только протокол ssh версии 2, поскольку сервер не поддерживает протокол 1.

Источник

105 команд для работы с сервером Linux по SSH

SSH — это протокол для установки связи между PC и сервером. Команды SSH, или как их еще называют «команды для PuTTY», — это инструкции для управления различными функциями сервера. С технической точки зрения, это примерно то же самое, что управлять компьютером на базе Linux через терминал. Принципиальное отличие лишь в том, что для управления сервером сначала нужно установить с ним дистанционное соединение, а уже потом переходить к работе. На локальной «машине» этот этап можно пропустить. Но речь не о ней, и мы снова возвращаемся к SSH.

Еще раз отмечу, что речь идет о подключении к серверу на базе Linux, и все описываемые ниже утилиты работают именно на нем.

Подключение к серверу через SSH

Мы уже выяснили, что представляет собой SSH и команды для него. Теперь установим соединение с сервером.

Естественно, перед началом надо арендовать виртуальный хостинг или VDS у одного из доступных провайдеров. У Timeweb, к примеру.

Если у вас macOS или Linux

Все. Соединение установлено, можно переходить к работе непосредственно с сервером.

Если у вас Windows

Управление протоколом SSH

У команды для подключения к удаленному PC по SSH есть две важных опции:

Работа с командной строкой, горячие клавиши и дополнительные символы

Базовые методы управления текстом в терминале.

clear — удаляет из текущий сессии терминала все ранее выведенные в него данные, содержимое открытых документов и историю использованных команд. Используется, когда нужно четко лицезреть вывод конкретной операции.

history — показывает ранее использованные приложения и инструменты. Без дополнительных аргументов отображает 10 элементов. Но их количество можно изменить вручную, добавив к слову history любое число. history 13, к примеру.

whatis — дает однострочную справку к любой из установленных программ. Принцип работы следующий: вводим слово whatis, а за ним следом название приложения, о котором хотим узнать. Например, чтобы узнать о том, что такое nano, введем в терминал: whatis nano.

man название пакета — открывает документацию к любой из установленных программ. В ней можно посмотреть, какие функции есть у приложения, как им пользоваться, какие могут возникнуть проблемы.

Дополнительные символы

Не совсем команды, но тоже текстовые элементы, причем полезные.

; — разделитель, необходимый, чтобы активировать сразу несколько команд подряд. Это выглядит так: cd

/Documents; mkdir Novaya_papka; rmdir Staraya-papka. Команды будут выполняться друг за другом независимо от результата выполнения каждой из них.

&& — то же самое, что и ;, но с важным нюансом. Команды, соединенные с помощью &&, будут выполняться друг за другом, только если предыдущая завершилась успешно. Синтаксис аналогичный:

| — запускает сразу две команды. Это может быть полезно, когда нужно запросить информацию из какого-нибудь приложения, а потом найти в полученных данных определенную строку, код, слово или иной элемент текста.

— сокращение от /home/имя учетной записи/. Часто фигурирует в инструкциях.

Горячие клавиши

Парочка полезных сочетаний клавиш.

Стрелка вверх — показывает предыдущую команду.

Ctrl+C — прерывает запущенный процесс.

Ctrl+A — перемещает курсор в начало строки.

Ctrl+E — перемещает курсор в конец строки.

Сетевые функции и параметры сервера

Утилиты и инструменты для вебмастеров и администраторов.

apachectl startssl — запускает сервер Apache (если вы его используете, конечно).

apachectl stop — выключает Apache.

apachectl restart — перезапускает Apache.

/usr/local/etc/rc.d/mysql-server restart — активирует скрипт перезапуска системы MySQL.

Источник

🔐 Как проверить версию OpenSSH

OpenSSH – это безопасная сетевая утилита для удаленного входа по протоколу SSH.

Это основные инструменты, используемые большинством систем на базе Linux для удаленного входа в систему по SSH.

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

Он обеспечивает сквозное шифрование между двумя системами.

Это руководство поможет вам проверить версию OpenSSH, работающую в вашей системе.

Как узнать версию OpenSSH

Команда SSH предоставляет возможность проверить версию локального сервера SSH, а также в удаленных системах.

Используйте следующие команды, чтобы проверить версию OpenSSH, работающую в локальных или удаленных системах.

Проверим версию OpenSSH в локальной системе

Используйте следующую команду, чтобы проверить версию OpenSSH, работающую в локальной системе.

Проверим версию OpenSSH на удаленной системе –

Вы также можете найти версию сервера OpenSSH, работающую на удаленных серверах.

Это можно сделать, подключив удаленный сервер по протоколу SSH в подробном виде.

В журнале подключений отображается версия SSH-сервера в локальной системе, а также версия OpenSSH, запущенная на удаленном компьютере.

Заключение

Это руководство рассматривает, как проверить версию OpenSSH, работающую в системе локально.

Также вы можете проверить версию OpenSSH, запущенную в удаленной системе.

Источник

Параметры сервера ssh

Содержание

Linux OpenSSH клиент и сервер

Краткий обзор

Как было написано в главе «Инсталляция вашего Linux сервера», многие сетевые сервисы, включая, но не ограничиваясь, telnet, rsh, rlogin или rexec, уязвимы к электронному прослушиванию. В результате любой человек, имеющий доступ к компьютеру в Вашей сети, может прослушивать сообщения и перехватывать пароли и другую полезную информацию, проходящую по сети в открытом виде. Программа telnet необходима для решения ежедневных административных задач, но она не безопасна, так как передает через сеть пароли в открытом виде. Чтобы решить эту проблему необходима программа, которая заменит telnet. К счастью такая программа есть, это OpenSSH настоящая и безопасная замена старых и небезопасных программ удаленного доступа таких, как telnet, rlogin, rsh, rdist или rcp.

Согласно официальному файлу README по OpenSSH:

Ssh (Secure Shell) это программа для подключения к компьютерам через сеть, выполнения команд на удаленных машинах и перемещения файлов с одного компьютера на другой. Она предоставляет строгую аутентификацию и безопасную передачу информации по незащищенным каналам. Ssh предназначен заменить rlogin, rsh, rcp и rdist.

В нашей конфигурации мы будем настраивать OpenSSH на поддержку tcp-wrappers (inetd superserver) для улучшения безопасности уже безопасной программы и чтобы не запускать ее как демон. В результате когда клиент пытается соединиться с сервером, ssh будет запущен TCP-WRAPPER для его аутентификации и авторизации перед тем, как разрешить подключение.

Читайте также:  Женский клуб что это такое

OpenSSH это свободно распространяемая замена SSH1, в которой были удалены все патентозависимые алгоритмы (во внешние библиотеки), все известные ошибки в безопасности и добавлены новые возможности. Мы рекомендуем использовать OpenSSH вместо SSH1 (свободно распространяемой, но содержащей ошибки) или SSH2, который изначально тоже был бесплатным, но сейчас поставляется под коммерческой лицензией. Для тех, кто использует SSH2 от компании Datafellows, мы описываем в этой книге обе версии, начиная с OpenSSH.

Эти инструкции предполагают.
Unix-совместимые команды.
Путь к исходным кодам /var/tmp (возможны другие варианты).
Инсталляция была проверена на Red Hat Linux 6.1 и 6.2.
Все шаги инсталляции осуществляются суперпользователем root.
OpenSSH версии 1.2.3.

OpenSSH требует, чтобы был установлен пакет zlib-devel, который содержит заголовочные файлы и библиотеки нужные программам, использующим библиотеки zlib компрессии и декомпрессии. Если это не так, то установите его с Вашего Red Hat Linux 6.1 или 6.2 CD-ROM.

Чтобы узнать, установлен ли у Вас zlib-devel дайте команду:

Для инсталляции zlib-devel дайте следующие команды:

Библиотека OpenSSL, необходимая для включения поддержки SSL в OpenSSH, тоже должна быть установлена на Вашей системе.

ЗАМЕЧАНИЕ. Для того, чтобы получить большую информацию об OpenSSL сервере, читайте соответствующую главу этой книги. Даже если Вам не нужно использовать OpenSSL для создания и хранения зашифрованных файлов ключей, все равно для правильной работы OpenSSH требуются библиотеки OpenSSL.

Хорошей идеей будет создать список файлов установленных в Вашей системе до инсталляции OpenSSH и после в результате, с помощью утилиты diff, Вы сможете узнать, какие файлы были установлены. Например, до инсталляции:

Для получения списка установленных файлов:

Компиляция и оптимизация.

Переместитесь в новый каталог OpenSSH и выполните следующие команды:

Вышеприведенные опции говорят OpenSSH следующее:

Вкомпилировать libwrap и включить поддержку TCP Wrappers (/etc/hosts.allow|deny). Заблокировать длительные задержки при разрешении имен под Linux/glibc-2.1.2 для улучшения времени соединения. Определить месторасположение OpenSSL.

Сейчас мы должны компилировать и инсталлировать OpenSSH на сервере:

make компилирует исходные коды в двоичные файлы.
make install инсталлирует исполняемые и вспомогательные файлы.
make host-key создает ключ сервера.
install инсталлирует PAM-поддержку на Red Hat Linux, которая сейчас имеет больше возможностей, чем популярный пакет из коммерческого ssh-1.2.x.

Очистка после работы.

Конфигурации

Для запуска OpenSSH клиента/сервера следующие файлы должны быть созданы или скопированы в нужный каталог:

Копируйте ssh_config в каталог /etc/ssh.
Копируйте sshd_config в каталог /etc/ssh.
Копируйте sshd в каталог /etc/pam.d.

Вы можете взять эти файлы из архива floppy.tgz.

Настройка файла /etc/ssh/ssh_config.

Файл /etc/ssh/ssh_config это конфигурационный файл для OpenSSH, действующий в масштабах системы, который определяет опции, изменяющие действия клиентских программ. Он содержит пары ключ-значение, одну на строку, не зависящие от регистра. Здесь описаны наиболее важные ключи, влияющие на безопасность, полный список Вы можете найти на странице руководства (man) для ssh (1).

Редактируйте файл ssh_config (vi /etc/ssh/ssh_config) и добавьте или измените следующие параметры:

Host *
Опция Host ограничивает влияние всех нижестоящих объявлений и опций только на компьютеры соответствующие шаблону, приведенному после ключевого слова. * подразумевает все компьютеры. При помощи этой опции Вы сможете в одном файле определить параметры для разных машин.

ForwardAgent no
Опция ForwardAgent определяет какой агент установления подлинности соединения должен быть направлен на удаленную машину.

ForwardX11 no
Опция ForwardX11 для людей, которые используют Xwindow GUI и хотят автоматически перенаправлять сессии X11 на удаленную машину. Так как мы устанавливали сервер и не инсталлировали GUI, мы можем спокойно выключить эту опцию.

RhostsAuthentication no
Опция RhostsAuthentication определяет, можем ли мы использовать аутентификацию, базирующуюся на rhosts. Так как она не безопасна, то отключаем ее.

RhostsRSAAuthentication no
Опция RhostsRSAAuthentication определяет, использовать ли rhosts аутентификацию совместно с RSA host-аутентификацией или нет.

RSAAuthentication yes
Опция RSAAuthentication определяет, использовать RSA-аутентфикацию или нет. Эта опция должна быть установлена в yes для лучшей безопасности сессий. RSA использует пару из общедоступного и личного ключей, созданную при помощи утилиты ssh-keygen1.

PasswordAuthentication yes
Опция PasswordAuthentication определяет, можем ли мы использовать аутентификацию, базирующуюся на паролях или нет. Для большей безопасности эта опция должна быть установлена в yes.

FallBackToRsh no
Опция FallBackToRsh определяет, что если соединение с демоном ssh завершилось ошибкой, должен ли автоматически использоваться rsh. Запомните, что сервис rsh небезопасен, поэтому эту опцию устанавливаем в no.

UseRsh no
Опция UseRsh определяет, что сервис rlogin/rsh должен использоваться на этом компьютере. Как и с опцией FallBackToRsh, эта опция должна быть установлена в no из соображений безопасности.

BatchMode no
Опция BatchMode определяет, можем ли мы отключить запрос имени и пароля при соединении. Эта опция полезна, когда Вы создаете скрипты и не хотите вводить пароль (например, скрипт, который использует команду scp для создания резервных копий через сеть).

CheckHostIP yes
Опция CheckHostIP определяет, будет или нет ssh дополнительно проверять IP-адрес компьютера, который подключается к серверу, для определения DNS spoofing. Рекомендую установить эту опцию в yes.

/.ssh/identity
Опция IdentityFile определяет альтернативный идентификационный файл RSA-идентификации для чтения. Много таких файлов может быть определено с помощью этой опции.

Port 22
Опция Port опередляет, какой порт используется для ssh-соединений на удаленном компьютере. По умолчанию это 22.

Cipher blowfish
Опция Cipher определяет, какой шифр должен быть использован для шифрования сессии. blowfish использует 64-битные блоки и ключи до 448 бит.

Опция EscapeChar определяет сессионный знак перехода в приостановленное состояние.

Настройка файла /etc/ssh/sshd_config.

Файл /etc/ssh/sshd_config это конфигурационный файл для OpenSSH, действующий в масштабах системы, который определяет опции, изменяющие действия демона. Он содержит пары ключ-значение, одну на строку, не зависящие от регистра. Здесь описаны наиболее важные ключи, влияющие на безопасность sshd, полный список Вы можете найти на странице руководства к sshd (8). Редактируйте файл sshd_config (vi /etc/ssh/sshd_config) и добавьте или измените следующие параметры:

Port 22
Опция Port определяет, какой порт слушает ssh-демон для входящих соединений. По умолчанию это 22.

ListenAddress 192.168.1.1
Опция ListenAddress определяет IP-адрес интерфейса, к которому подключен сокет ssh-демона. По умолчанию это 0.0.0.0, для улучшения безопасности Вы можете ограничиться только одним адресом.

HostKey /etc/ssh/ssh_host_key
Опция HostKey определяет место, содержащее приватный ключ сервера.

ServerKeyBits 1024
Опция ServerKeyBits определяет, как много бит используется в ключе сервера. Эти биты используются, когда демон стартует для генерации RSA-ключа.

LoginGraceTime 600
Опция LoginGraceTime определяет, как долго в секундах после соединения сервер ждет правильной регистрации пользователя до его разрыва.

KeyRegenerationInterval 3600
Опция KeyRegenerationInterval определяет, как долго в секундах сервер должен ждать перед автоматической регенерацией своего ключа. Эта опция защиты предназначена для предотвращения расшифровки захваченного сеанса связи.

PermitRootLogin no
Опция PermitRootLogin определяет, может ли root подключаться, используя ssh. Никогда не говорите yes в этой опции.

IgnoreRhosts yes
Опция IgnoreRhosts определяет, должны ли файлы rhosts или shosts использоваться при аутентификации. Из соображений безопасности рекомендуется не использовать эти файлы.

StrictModes yes
Опция StrictModes определяет, должен ли ssh проверять права пользователей в их домашних каталогах и файлы rhosts перед тем, как пустить на сервер. Эта опция должна всегда быть установлена в yes потому, что иногда пользователи могут случайно оставить свои каталоги и файлы открытыми всем для записи.

X11Forwarding no
Опция X11Forwarding определяет, должен ли сервер перенаправлять X11-пакеты или нет. Так как мы установили сервер без GUI, эту опцию устанавливаем в no.

PrintMotd yes
Опция PrintMotd определяет, должен ли ssh-демон печатать содержимое файла /etc/motd, когда пользователь входит на сервер. Файл /etc/motd также известен как «сообщение дня».

SyslogFacility AUTH
Опция SyslogFacility определяет, с какого средства (facility) поступают сообщения в syslog от sshd. facility представляет подсистему, которая создает сообщение, в нашем случае AUTH.

Читайте также:  тебя терять так больно на английском

LogLevel INFO
Опция LogLevel определяет уровень важности сообщения, поступающего системе syslog от sshd. INFO хороший выбор. Смотрите страницу man для sshd для получения большей информации о других возможностях.

RhostsAuthentication no
Опция RhostsAuthentication определяет, может ли sshd использовать rhosts-аутентификацию. Так как rhosts-аутентификация небезопасна, то мы не используем эту опцию.

RhostsRSAAuthentication no
Опция RhostsRSAAuthentication определяет, можно ли использовать rhosts-аутентификацию вместе с RSA-аутентификацией.

RSAAuthentication yes
Опция RSAAuthentication определяет, можно ли использовать RSA-аутентификацию. Эта опция должна быть установлена в yes для лучшей безопасности. RSA использует пару из общедоступного и личного ключей, созданных с помощью утилиты ssh-keygen1.

PasswordAuthentication yes
Опция PasswordAuthentication определяет, можно ли использовать аутентификацию по паролю. Для лучшей защищенности эта опция должна быть установлена в yes.

PermitEmptyPasswords no
Опция PermitEmptyPasswords определяет, позволяет ли сервер входить на сервер с логинов с пустыми паролями. Если Вы используете утилиту scp для автоматического создания резервных копий через сеть, то нужно установить эту опцию в yes.

AllowUsers admin
Опция AllowUsers определяет и контролирует, какие пользователи могут использовать ssh-сервис. Для разделения нескольких имен используйте пробелы.

Настройка OpenSSH для использования с TCP-Wrappers inetd суперсервером

Tcp-Wrappers может быть использован для запуска и остановки Вашего ssh сервиса. Перед выполнением inetd читает информацию из конфигурационного файла /etc/inetd.conf.

Редактируйте файл inetd.conf (vi /etc/inetd.conf) и добавьте в него следующую строку:

Редактируйте файл hosts.allow (vi /etc/hosts.allow) и добавьте следующую строку:

Которая значит, что клиенту с IP-адресом 192.168.1.4 и именем компьютера win.openna.com разрешен ssh-доступ к серверу.

Эти строки демона (для tcp-wrappers) используются sshd:

sshdfwd-X11 (если Вы хотите разрешить/запретить X11-forwarding).
sshdfwd-

(для tcp-forwarding).
sshdfwd-

(номер порта определен в /etc/services. Используемый в tcp-forwarding).

ЗАМЕЧАНИЕ. Если Вы решили переключиться на использование ssh, сделайте так, чтобы Вы инсталлировали и использовали его на всех Ваших серверах. Наличие десяти защищенных серверов и одного незащищенного бесполезно.

Дополнительная документация

Для получения большей информации, вот несколько man-страниц, которые можно прочитать.

$ man ssh (1) OpenSSH secure shell клиент (программа удаленного подключения)
$ man ssh [slogin] (1) OpenSSH secure shell клиент (программа удаленного подключения)
$ man ssh-add (1) добавление identities для агента аутентификации
$ man ssh-agent (1) аутентификационный агент
$ man ssh-keygen (1) генерация аутентификационного ключа
$ man sshd (8) ssh-демон

Конфигурирование OpenSSH для каждого пользователя

Создайте локально общедоступный и персональный ключи:

Результат должен выглядеть примерно так:

ЗАМЕЧАНИЕ. Если Вы имеете несколько логинов, то можете хотеть создать независимые ключи для них.

Вы хотите создать ключи для:

Это позволит ограничить доступ между серверами, например, не позволит почтовому логину получить доступ на веб-сервер или шлюз. Это расширяет полную защиту, если одни из Ваших аутентификационных ключей скомпрометирован по какой-нибудь причине.

Копируйте Ваш общедоступный ключ (identity.pub) на удаленный компьютер в каталог /home/admin/.ssh под именем authorized_keys.

ЗАМЧЕАНИЕ. Одним из способов копирования файла является использование ftp-команд или Вам нужно послать по электронной почте Ваш общедоступный ключ администратору системы. Только включите содержимое файла

/.ssh/identity.pub в сообщение.

Изменение Вашей pass-phrase

Утилиты пользователя OpenSSH

Команды, описанные ниже, мы будем часто использовать, но на самом деле их много больше, и Вы должны изучить man-страницы и документацию для получения деталей.

ssh (Secure Shell) команда предоставляющая безопасную шифрованную связь между двумя недоверенными компьютерами через небезопасную сеть. Это программа для безопасного подключения к удаленной машине и выполнения команд на ней. Она заменяет такие небезопасные программы, как telnet, rlogin, rcp, rdist и rsh.

Для подключения к удаленной машине используйте команду:

Где это имя, которое Вы используете для соединения с ssh-сервером и это имя удаленного ssh-сервера.

scp (Secure Copy) это утилита для копирования файлов из локальной системы на удаленную и наоборот, или между двумя удаленными системами. Для копирования файлов с удаленной системы на локальную используйте следующую команду:

Для копирования файла с локальной на удаленную систему используйте следующую команду:

Некоторые возможности использования OpenSSH

OpenSSH может использоваться для:

Инсталлируемые файлы

Бесплатные SSH-клиенты для Windows

Linux SSH2 клиент и сервер

Сейчас стало ясно, что все пользователи Linux, должны использовать OpenSSH вместо SSH2 от компании Datafellows. Однако, для пользователей и организаций, которые хотят использовать коммерческую версию этого программного обеспечения, мы приводим следующее описание. Это SSH2 коммерческая версия SSH. В нашей конфигурации мы настраиваем SSH2 на поддержку работы с TCP-Wrappers из соображений безопасности.

Эти инструкции предполагают.
Unix-совместимые команды.
Путь к исходным кодам /var/tmp (возможны другие варианты).
Инсталляция была проверена на Red Hat Linux 6.1 и 6.2.
Все шаги инсталляции осуществляются суперпользователем root.
SSH2 версии 2.0.13.

Хорошей идеей будет создать список файлов, установленных в Вашей системе до инсталляции SSH2 и после, в результате, с помощью утилиты diff, Вы сможете узнать, какие файлы были установлены. Например, до инсталляции:

Для получения списка установленных файлов:

Компиляция и оптимизация

Переместитесь в новый каталог SSH2 и выполните следующие команды:

Вышеприведенные опции говорят SSH2 следующее:

Команда make clean удаляет все предыдущие следы компиляции, чтобы избежать любых ошибок. Команда make компилирует все исходные файлы в исполняемые, а в заключении команда make install инсталлирует двоичные и сопутствующие им файлы в определенное место.

Очистка после работы.

Конфигурации

Для запуска SSH2 клиента/сервера следующие файлы должны быть созданы или скопированы в нужный каталог:

Копируйте ssh2_config в каталог /etc/ssh2.
Копируйте sshd2_config в каталог /etc/ssh2.
Копируйте sshd в каталог /etc/pam.d.

Вы можете взять эти файлы из архива floppy.tgz.

Настройка файла /etc/ssh2/ssh2_config

Файл /etc/ssh2/ssh2_config это конфигурационный файл для SSH2, действующий в масштабах системы, который определяет опции, изменяющие действия клиентских программ. Он содержит пары ключ-значение, записанных в одну на строку, не зависящие от регистра. Здесь описаны наиболее важные ключи влияющие на безопасность, полный список Вы можете найти на странице руководства для ssh2 (1).

Редактируйте файл ssh2_config (vi /etc/ssh2/ssh2_config) и добавьте или измените следующие параметры:

Port 22 Опция Port определяет, на какой порт ssh присоединяется на удаленнном компьютере. По умолчанию 22.

Ciphers blowfish
Опция Ciphers определяет, какой шифр должен быть использован для шифрования сессии. blowfish использует 64-битные блоки и ключи до 448 бит.

Compression yes
Опция Compression определяет использовать ли во время сессии сжатие. Сжатие будет улучшать скорость связи и обмена файлами.

IdentityFile identification
Опция IdentityFile определяет альтернативное имя для пользовательского идентификационного файла.

AuthorizationFile authorization
Опция AuthorizationFile определяет альтернативное имя для пользовательского файла авторизации.

RandomSeedFile random_seed
Опция RandomSeedFile определяет альтернативное имя для пользовательского файла с начальным числом для генерации псевдослучайных чисел (random seed file).

VerboseMode no
Опция VerboseMode заставляет ssh2 печатать отладочные сообщения о ходе его работы. Эта опция полезна при отладочных соединениях и проблемах с настройками.

ForwardAgent no
Опция ForwardAgent определяет, какой агент установления подлинности соединения должен быть направлен на удаленную машину.

ForwardX11 no
Опция ForwardX11 для людей, которые используют Xwindow GUI и хотят автоматически перенаправлять сессии X11 на удаленную машину. Так как мы устанавливали сервер и не инсталлировали GUI, мы можем спокойно выключить эту опцию.

PasswordPrompt «%U’s password: «
Опция PasswordPrompt определяет строку запроса пароля, которая будет выводится пользователю, когда он подключается к системе. Переменные ‘%U’ и ‘%H’ задают имя пользователя и хоста соответственно.

Ssh1Compatibility no
Опция Ssh1Compatibility определяет, будут или нет использоваться SSH1-совместимые алгоритмы в SSH2 для ssh1-пользователей.

Ssh1AgentCompatibility none
Опция Ssh1AgentCompatibility определяет, будет или нет направляться SSH1-агент соединений с SSH2 для пользователей ssh1.

NoDelay yes
Опция NoDelay определяет, что опция сокета TCP_NODELAY должна быть включена. Рекомендуется установить ее в yes для улучшения сетевой производительности.

Читайте также:  Как узнать баланс activ

KeepAlive yes
Опция KeepAlive определяет, должна ли система отправлять keep alive сообщения на удаленный сервер. Если эта опция установлена в yes, то в случае разрыва соединения или аварийного отказа удаленной машины будет получено корректное извещение.

QuietMode no
Опция QuietMode определяет, будет ли система запущена в «тихом» режиме. Эта опция должна быть установлена в no потому, что в «бесшумном» режиме никакой информации не заносится в системные журналы регистрации, за исключением фатальных ошибок. Так как мы хотим иметь информацию о пользовательских сессиях, надо установить опцию в no.

Настройка файла /etc/ssh2/sshd2_config

Файл /etc/ssh2/sshd2_config это конфигурационный файл для SSH2, действующий в масштабах системы, который определяет опции, изменяющие действия демона. Он содержит пары ключ-значение, одну на строку, не зависящие от регистра. Здесь описаны наиболее важные ключи, влияющие на безопасность sshd, полный список Вы можете найти на man-странице для sshd2 (8).

Редактируйте файл sshd2_config (vi /etc/ssh2/sshd2_config) и добавьте или измените следующие параметры:

Port 22
Опция Port определяет, какой порт слушает ssh2-демон для входящих соединений. По умолчанию 22.

ListenAddress 192.168.1.1
Опция ListenAddress определяет IP-адрес интерфейса, к которому подключен сокет ssh-демона. По умолчанию это 0.0.0.0, для улучшения безопасности Вы можете ограничиться только одним адресом.

Ciphers blowfish
Опция Ciphers определяет, какой шифр должен быть использован для шифрования сессии. blowfish использует 64-битные блоки и ключи до 448 бит.

IdentityFile identification
Опция IdentityFile определяет альтернативное имя для идентификационного файла пользователей.

AuthorizationFile authorization
Опция AuthorizationFile задает альтернативное имя для файла полномочий пользователей (user’s authorization file).

HostKeyFile hostkey
Опция HostKeyFile определяет место, содержащее приватный ключ сервера. По умолчанию /etc/ssh2/hostkey.

PublicHostKeyFile hostkey.pub
Опция PublicHostKeyFile определяет альтернативный файл, содержащий публичный ключ сервера. По умолчанию это /etc/ssh2/hostkey.pub.

RandomSeedFile random_seed
Опция RandomSeedFile определяет альтернативное имя для пользовательского файла с начальным числом для генерации псевдослучайных чисел (random seed file).

ForwardAgent no
Опция ForwardAgent определяет, какой агент установления подлинности соединения должен быть направлен на удаленную машину.

ForwardX11 no
Опция ForwardX11 определяет, должен ли сервер перенаправлять X11-пакеты или нет. Так как мы установили сервер без GUI, то эту опцию устанавливаем в no.

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

MaxConnections 5
Опция MaxConnections определяет максимальное число одновременных соединений, которыми демон ssh2 может управлять.

PermitRootLogin no
Опция PermitRootLogin определяет6 может ли root подключаться, используя ssh. Никогда не говорите yes в этой опции.

AllowedAuthentications publickey,password
Опция AllowedAuthentications определяет, какие виды аутентификации разрешено использовать. С этой опцией администратор может вынуждать пользователей заканчивать несколько аутентификаций прежде, чем они расссматриваются как заверенные.

RequiredAuthentications publickey,password
Опция RequiredAuthentications связана с AllowedAuthentications, определяет какие метода аутентификации пользователь должен завершить прежде, чем продолжить свою работу. Этот параметр должен иметь те же значения, что и AllowedAuthentications, или сервер все время будет запрещать соедиенния.

VerboseMode no
Опция VerboseMode заставляет демон ssh2 печатать отладочные сообщения о ходе его работы. Эта опция полезна при отладочных соединениях и проблемах с настройками.

PrintMotd yes
Опция PrintMotd определяет, должен ли ssh2-демон печатать содержимое файла /etc/motd, когда пользователь входит на сервер. Файл /etc/motd также известен как «сообщение дня».

CheckMail yes
Опция CheckMail определяет, должен ли ssh2 демон печатать информацию о новой почте, которая пришла пользователю.

UserConfigDirectory «%D/.ssh2»
Опция UserConfigDirectory определяет месторасположение конфигурационных данных пользователей.

SyslogFacility DAEMON
Опция SyslogFacility определяет с какого средства (facility) поступают сообщения в syslog от sshd2. facility представляет подсистему, которая создает сообщение, в нашем случае DAEMON.

Ssh1Compatibility no
Опция Ssh1Compatibility определяет, будут ли использоваться SSH1-совместимые алгоритмы в SSH2 для пользователей ssh1.

NoDelay yes
Опция NoDelay определяет, что опция сокета TCP_NODELAY должна быть включена. Рекомендуется установить ее в yes для улучшения сетевой производительности.

KeepAlive yes
Опция KeepAlive определяет, должна ли система отправлять keep alive сообщения на удаленный сервер. Если эта опция установлена в yes, то в случае разрыва соединения или аварийного отказа удаленной машины будет получено корректное извещение.

AllowHosts 192.168.1.4
Опция AllowHosts определяет и контролирует, какие компьютеры имеют доступ к ssh2 сервису. Несколько хостов, разделенных пробелами, может быть перечислено.

DenyHosts *
Опция DenyHosts определяет и контролирует, какие хосты не имеют доступа к ssh2 сервису. Несколько хостов, разделенных пробелами, может быть перечислено. По умолчанию шаблон * означает все компьютеры.

QuietMode no
Опция QuietMode определяет, будет ли система запущена в «тихом» режиме. Эта опция должна быть установлена в no потому, что в «бесшумном» режиме, никакой информации не заносится в системные журналы регистрации, за исключением фатальных ошибок. Так как мы хотим иметь информацию о пользовательских сессиях, надо установить опцию в no.

Настройка SSH2 для использования с TCP-Wrappers inetd суперсервером

Tcp-Wrappers может быть использован для запуска и остановки Вашего ssh2 сервиса. Перед выполнением inetd читает информацию из конфигурационного файла /etc/inetd.conf.

Редактируйте файл inetd.conf (vi /etc/inetd.conf) и добавьте в него следующую строку:

После редактирования файла etc/inetd.conf отправьте демону inetd сигнал SIGHUP, чтобы он перечитал файл конфигурации.

Редактируйте файл hosts.allow file (vi /etc/hosts.allow) и добавьте следующую строку:

Которая значит, что клиенту с IP-адресом 192.168.1.4 и именем компьютера win.openna.com разрешен ssh-доступ к серверу.

Эти строки демона (для tcp-wrappers) используются sshd2:
ssh,ssh2 (может вызываться по имени ssh2 (обычно используется ssh)).
sshdfwd-X11 (если Вы хотите разрешить/запретить X11-forwarding).
sshdfwd-

(для tcp-forwarding).
sshdfwd-

(номер порта определен в /etc/services. Используемый в tcp-forwarding).

ЗАМЕЧАНИЕ. Если Вы решили переключиться на использование ssh, сделайте так, чтобы Вы инсталлировали и использовали его на всех Ваших серверах. Наличие десяти защищенных серверов и одного незащищенного бесполезно.

Конфигурация файла /etc/pam.d/ssh

Для лучшей безопасности Вашего ssh2-сервера, Вы можете настроить его на аутентификацию через PAM. Чтобы сделать это, надо создать файл /etc/pam.d/ssh.

Создайте файл ssh (touch /etc/pam.d/ssh) и добавьте или измените, если нужно:

Дополнительная документация

Для получения большей информации, вот несколько man-страниц, которые можно прочитать:

$ man ssh-add2 (1) добавляет identities агенту аутентификации
$ man ssh-agent2 (1) агент аутентификации
$ man ssh-keygen2 (1) генератор пары аутентификационных ключей
$ man ssh2 (1) secure shell клиент (программа удаленного подключения)
$ man sshd2 (8) secure shell демон.

Конфигурирование SSH2 для каждого пользователя

Создайте локально Ваш личный и публичный ключи:

Создайте файл identification в Вашем каталоге

/.ssh2 на локальной машине:

ЗАМЕЧАНИЕ. Опционально можно создать идентификационный файл и на удаленной машине. Он содержит имя приватного ключа, который используется при аутентификации.

Копируйте Ваш публичный ключ с локальной машины (id_dsa_1024_a.pub) на удаленную в каталог

/.ssh2 под именем Local.pub.

Создайте файл authorization в каталоге

/.ssh2 на удаленной машине:

/ означает Ваш домашний каталог.

Добавьте следующую строку в файл authorization на удаленной машине:

Утилиты пользователя SSH2

Команды, описанные ниже, мы будем часто использовать, но на самом деле их много больше, и Вы должны изучить man-страницы и документацию для получения деталей.

ssh2 (Secure Shell) команда, предоставляющая безопасную шифрованную связь между двумя недоверенными компьютерами через небезопасную сеть. Это программа для безопасного подключения к удаленной машине и выполнения команд на ней. Она заменяет такие небезопасные программы, как telnet, rlogin, rcp, rdist и rsh.

Для подключения к удаленной машине используйте команду:

Где это имя, которое Вы используете для соединения с ssh2-сервером и это имя удаленного ssh2-сервера.

Утилита sftp2 (Secure File Transfer) это ftp-подобный клиент, который предоставляет возможность передачи файлов через сеть. До того, как начать использовать sftp2, Вы должны подключиться к ssh2-серверу.

Для ftp через ssh2 используйте следующую команду:

Где это имя удаленного сервера, с которым Вы хотите обмениваться файлами посредством sftp.

Источник

Обучающий проект