The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

SSH

   Корень / Безопасность / SSH

----* Настройка SSH для использования наиболее защищённых алгоритмов шифрования (доп. ссылка 1)   [комментарии]
  В свете [[http://www.opennet.ru/opennews/art.shtml?num=41356 появления]] сведений об организации АНБ атак, направленных на получение контроля над SSH-соединениями, [[https://stribika.github.io/2015/01/04/secure-secure-shell.html подготовлено]] руководство с рекомендациями по усилению защищённости SSH. АНБ может получить контроль за SSH-соединением в случае использования уязвимых методов шифрования или в результате захвата приватных ключей. Ниже представлены советы по отключению потенциально проблемных алгоритмов и усилению защиты.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Применение двухфакторной аутентификации для SSH и GDM средствами Google Authenticator (доп. ссылка 1) (доп. ссылка 2) (доп. ссылка 3)   [комментарии]
  При применении двухфакторной аутентификации, кроме традиционного логина/пароля или ключа требуется ввести код подтверждения, получаемый с устройства, заведомо принадлежащего владельцу аккаунта. Наиболее простым способом является использование открытого проекта [[https://code.google.com/p/google-authenticator/ Google Authenticator]], который предоставляет мобильное приложение для генерации одноразовых паролей (TOTP) и PAM-модуль для установки на стороне сервера.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Двухфакторная аутентификация SSH с использованием YubiKey (доп. ссылка 1)   Автор: Dvenum  [комментарии]
  Все началось с того, что я приобрел YubiKey и захотел использовать его для двухфакторной аутентификации SSH. Я также хотел иметь возможность восстановить доступ к серверу на случай, если потеряю ключ. Информация о том, как это сделать, слишком разрознена, поэтому я написал собственное руководство.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Автоматизация запуска PuTTY и XMing   Автор: Igor Garkusha  [комментарии]
  [[B]]Задача:[[/B]] Организовать автоматизированное подключение Windows-клиента к Linux-серверу терминалов через программу [[http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html PuTTY]] (по ssh-протоколу) в связке с [[http://sourceforge.net/projects/xming/ XMing]]. Windows-клиент имеет в домене гостевой профиль (все настройки после выхода из системы сбрасываются). Имена пользователей из домена Windows и на сервере терминалов совпадают(!).
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Как удержать SSH-соединение от обрыва при использовании Socks   [комментарии]
 
При выходе в сеть через Socks-прокси ssh-соединение часто разрывается после
небольшого интервала неактивности (иногда достаточно несколько секунд).
Чтобы этого не произошло необходимо использовать опцию ServerAliveInterval=N,
которая заставляет ssh через N секунд отправлять alive-пакеты, не дающие
автоматически оборвать соединение из-за истечения таймаута.

Пример:

   tsocks ssh -o ServerAliveInterval=3 myhost.test.ru
 
----* Создание HTTP-туннеля для удаленного доступа к Linux-хосту в обход Microsoft ISA (доп. ссылка 1)   [комментарии]
  Для организации управления внешней рабочей станцией из корпоративной сети, защищенной Microsoft ISA, можно поднять HTTP-туннель, при помощи которого можно установить TCP-соединение, несмотря на использование HTTP-прокси и жестких политик ограничения доступа на межсетевом экране.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Escape-последовательность для ssh (доп. ссылка 1)   Автор: Аноним  [комментарии]
 
Многим известна escape-последовательность ^], используемая клиентом telnet для
перехода в командный режим. Однако, не все знают о существовании
escape-последовательности в ssh-клиенте.

Если в вашем дистрибутиве она не включена по умолчанию, то это можно сделать
добавив в файл конфигурации ssh_config следующую опцию:

   EscapeChar ~

Теперь вы можете:

   ~?  получить список всех команд клиента
   ~.  оборвать подвисшую сессию
 
----* Автодополнение ssh-хостов в командной строке (доп. ссылка 1)   Автор: bthemad  [комментарии]
  Простейшим способом упрощения набора параметров для частоиспользуемых хостов является задание псевдонимов в ~/.ssh/config:
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Защищаем SSH при помощи технологии "Port Knocking" (доп. ссылка 1) (доп. ссылка 2)   Автор: Дмитрий  [комментарии]
  Реализация идеи динамического открытия доступа к 22 порту, при предварительном обращении telnet-ом на определенный сетевой порт (в примере 333 - открыть доступ и 334 - закрыть). Идея реализована средствами iptables, без привлечения дополнительных утилит и анализаторов логов.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Сопоставление логинов и хостов для упрощения входа по SSH (доп. ссылка 1)   [комментарии]
 
При использовании разных имен пользователей на разных хостах часто приходится
долго перебирать их и вспоминать,
какой из аккаунтов заведен для данной машины. OpenSSH позволяет определить,
какое из имен использовать
для данного хоста по умолчанию. 

Пример настроек .ssh/config:

   Host *.test1.ru
     ServerAliveInterval 60
     User user1

   Host *.test2.ru
     Compression yes
     ForwardX11 yes
     IdentityFile ~/.ssh/id_dsa_ext
     User user2

Теперь при входе "ssh test.test1.ru" будет использовано имя user1, а при "ssh
host.test2.ru" - имя user2.
 
----* Поддержание SSH-туннеля в активном состоянии при помощи AutoSSH (доп. ссылка 1) (доп. ссылка 2)   Автор: Roman Sozinov  [комментарии]
  Иногда необходимо иметь возможность удалённо управлять какими-то системами, которые находятся за firewall'ами, которые Вы не контролируете. В таких случаях помогают ssh-тунели с использованием перенаправления (forwarding) портов. Например, допустим имеется удалённая машина trick, которая находится за маршрутизатором в удалённой локальной сети, и вторая машина rose имеющая внешний ip-адрес. Для того, чтобы иметь возможность с rose заходить на trick (либо использовать какой-то сервис на trick), необходимо поднять
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Помещение OpenSSH пользователей в изолированное sftp окружение (доп. ссылка 1)   [комментарии]
  Начиная с релиза 4.9 в OpenSSH появилась возможность помещать отдельных пользователей в изолированное окружение. Помещение в chroot управляется через директиву ChrootDirectory, задаваемую в конфигурационном файле sshd_config. При задействовании sftp-server интегрированного в sshd, при этом не требуется формирование специального chroot окружения.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Организация подключения по SSH через HTTP прокси   [комментарии]
  Устанавливаем ПО corkscrew (http://www.agroman.net/corkscrew/), позволяющее создавать туннели поверх HTTP прокси.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Повторное использование открытых OpenSSH соединений и кеширование ключей (доп. ссылка 1)   [комментарии]
  В OpenSSH предусмотрена возможность использования существующих соединений, при повторном коннекте к хосту.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Туннели с использованием SSH. Режим эмуляции Socks proxy в SSH (доп. ссылка 1) (доп. ссылка 2)   Автор: Vladimir Brednikov  [комментарии]
  1. Режим эмуляции Socks proxy в SSH
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Безопасный способ копировать бэкапы через ssh (доп. ссылка 1)   Автор: mahoro  [комментарии]
  Опция "command" файла authorized_keys позволяет указать команду, которая будет выполняться при каждом подключении пользователя по ssh.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Автоблокирование атак по подбору паролей (brute force) в SSH под FreeBSD (доп. ссылка 1)   Автор: Roman Y. Bogdanov  [комментарии]
  Устанавливаем sshguard из портов:
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Как скрыть отображаемую версию OpenSSH   Автор: Вотинцев Сергей А,  [комментарии]
 
Для OpenSSH из FreeBSD, в /usr/src/crypto/openssh/version.h меняем, например, на это:
   #define SSH_VERSION_BASE        "OpenSSH"
   #define SSH_VERSION_ADDENDUM    "Beastie"

пересобираем:
   cd /usr/src/secure/usr.sbin/sshd 
   make obj && make depend && make all install

и имеем SSH-2.0-OpenSSH Beastie вместо SSH-2.0-OpenSSH_3.6.1p1 FreeBSD-200xxxxx.
 
Некоторые пакеты с OpenSSH (например в AltLinux) включают в себя патч от http://openwall.com, 
добавляющий директиву  SshVersion:
    SshVersion  OpenSSH-1.2.3
 
----* Как создать шифрованный туннель используя SSH (доп. ссылка 1)   [комментарии]
 
ssh dmzserver -R 9999:mirrorserver:80
ssh -R 9999:localhost:80 dmzserver
ssh -2 -N -f -L 2110:mail.example.com:110 user@ssh-server.example.com
 
----* Как включить доступ на Cisco через ssh (доп. ссылка 1)   [комментарии]
 
hostname имя_хоста
ip domain-name доменное_имя
crypto key generate rsa
ip ssh time-out 120
ip ssh authentication-retries 3
line vty 0 4 
  transport input telnet ssh 
!
show crypto key mypubkey rsa
 
----* Как настроить доступ по SSH на базе секретных ключей без ввода пароля.   [комментарии]
 
В /etc/ssh/sshd_config проверяем активна ли опция "PubkeyAuthentication yes".
Запускаем на локальной машине программу ssh-keygen (ssh-keygen -t rsa),
 на все задаваемые вопросы принимаем значения по умолчанию (поле passphrase оставляем пустым).
Далее, запускаем программу ssh-copy-id -i ~/.ssh/id_rsa.pub user@remotehost, где
   user - пользователь удаленной машины 
   remotehost - адрес удаленной машины,
( или вручную, на удаленной машине в директории ~/.ssh, создаем файл authorized_keys, 
куда копируем содержимое файла identity.pub (id_rsa.pub) с локальной машины). 
Для увеличения безопасности в файл ~/.ssh/authorized_keys на удаленной машине 
добавляем перед ключом (разделив пробелом) строку:
    from="localhost", где localhost - адрес локальной машины (from="localhost" 1024 23 1343.....).
 
----* Какие ограничения лучше включить для SSHD ?   [обсудить]
 
В /etc/ssh/sshd_config:
 AllowUsers user1 user2 user3@host.ru
 ChallengeResponseAuthentication no
 PermitEmptyPasswords no
 PermitRootLogin no
 Protocol 2
 UseLogin no
 X11Forwarding no
 UsePrivilegeSeparation yes
# убрать все Subsystem
Ограничить вход только с определенных IP через /etc/hosts.allow
 
----* Как скопировать группу файлов на удаленную машину.   [комментарии]
 
С локальной на удаленную:
tar czvf - список_файлов_и_директорий | ssh remote.test.ru tar xzf - -C /home/user/куда_копировать 
Скопировать группу файлов с удаленной машины на локальную.
ssh remote.test.ru tar czf - -C стартовая_директория какие_файлы_копировать
|tar xzf - -C директория_куда_копировать.
 

 Версия для печати




  Закладки на сайте
  Проследить за страницей
Created 1996-2017 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
Hosting by Ihor