Михаил Флёнов - Linux глазами хакера
- Название:Linux глазами хакера
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2005
- Город:Санкт-Петербург
- ISBN:5-94157-635-8
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Михаил Флёнов - Linux глазами хакера краткое содержание
Рассмотрены вопросы настройки ОС Linux на максимальную производительность и безопасность. Описаны потенциальные уязвимости и рекомендации по предотвращению возможных атак. Дается подробное описание настройки прав доступа и конфигурирования сетевого экрана. Показано, как действовать при атаке или взломе системы, чтобы максимально быстро восстановить ее работоспособность и предотвратить потерю данных.
Для пользователей, администраторов и специалистов по безопасности
Linux глазами хакера - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
□
ServerKeyBits— длина серверного ключа. По умолчанию установлено 768, минимальное значение — 512;
□
SyslogFacility— задает тип сообщений, которые будут сохраняться в журнале;
□
LogLevel— уровень событий, которые будут попадать в журнал. Возможные уровни соответствуют системным, которые мы будем рассматривать в разд. 12.5 ;
□
LoginGraceTime— интервал времени, в течение которого пользователь должен ввести правильный пароль, иначе соединение будет разорвано;
□
РеrmitRootLogin— определяет, разрешено ( yes) или запрещено ( no) входить в систему по SSH-протоколу под пользователем root. Мы уже говорили, что root — это бог в системе, и его возможности нужно использовать аккуратно. Если в систему нельзя входить с такими правами, то и по SSH тем более. Срочно меняйте этот параметр на no;
□
StrictModes— указывает, должен ли sshd проверять состояние файлов и их владельцев, пользовательских файлов и домашней директории до ввода пароля. Желательно установить yes, потому что многие начинающие пользователи делают свои файлы все доступными для записи;
□
RSAAuthentication— разрешена ли аутентификация по алгоритму RSA. Параметр действует для 1 версии протокола;
□
PubkeyAuthentication— дозволена ли аутентификация по публичному ключу. Параметр действует для 2-й версии протокола;
□
AuthorizedKeysFile— файл с публичным ключом, который может использоваться для аутентификации;
□
RhostsAuthentication— разрешение аутентификации по файлам $HOME/.rhostsи /etc/hosts.equiv. По умолчанию стоит no, и без особой надобности менять этот параметр не стоит, потому что это небезопасно;
□
IgnoreRhosts— если параметр равен yes, то запрещается читать файлы ~/.rhostsи ~/.shosts. Без необходимости значение лучше не изменять, потому что это может повлиять на безопасность;
□
AuthorizedKeysFile— файл для хранения списка авторизованных ключей. Если пользователь входит в систему с имеющимся в этом файле ключом, то его пустят автоматически без ввода дополнительных паролей;
□
RhostsRSAAuthentication— если этот параметр yes, то при аутентификации будет требоваться ключ хоста из директории /etc/ssh/ssh_known_hosts. Параметр используется в 1 версии SSH;
□
IgnoreUserKnownHosts— если параметр равен no, то необходимо доверять компьютерам из списка ~/.ssh/known_hostsпри RhostsRSAAuthentication-аутентификации. Не верьте никому, поэтому параметр лучше всего изменить на yes;
□
PasswordAuthentication— если значение равно yes, то будет требоваться пароль. При использовании авторизации через ключи параметр можно отключить;
□
PermitEmptyPasswords— по умолчанию установлено no, что запрещает использование пустых паролей, и изменять это значение не стоит;
□
KerberosAuthentication— использовать проверку подлинности по протоколу Kerberos. В последнее время именно эта аутентификация набирает большую популярность благодаря своей безопасности;
□
KerberosOrLocalPasswd— если пароль Kerberos не был принят, то включается проверка локального файла паролей из файла /etc/shadow;
□
KerberosTicketCleanup— очищать билет Kerberos из кэша при выходе из системы;
□
Banner— позволяет указать файл, в котором находится текст приветствия, отображаемый пользователями.
5.3.3. Параметры доступа к серверу sshd
Кроме приведенных в листинге 5.1 можно использовать следующие директивы:
□
AllowGroups— позволить вход в систему только пользователям указанных групп (перечисляются через пробел в одной строке);
□
AllowUsers— разрешить вход в систему пользователям, имена которых перечислены через пробел;
□
DenyGroups— запретить вход в систему пользователям указанных через пробел групп;
□
DenyUsers— запретить вход в систему пользователям, имена которых перечислены через пробел. Этот параметр бывает удобен, когда дано разрешение на вход группе, но нужно отказать в подключении к SSH-серверу одному из ее пользователей.
Я рекомендую вам явно прописать группы или имена пользователей, которые могут входить в систему по SSH.
5.3.4. Конфигурирование клиента SSH
Настройки SSH-клиента содержат еще меньше параметров. В файле /etc/ssh/ssh_configнаходятся глобальные настройки для всех пользователей в системе. Но вы можете для любого из них переопределить произвольный параметр в файле .ssh_configиз директории пользователя. В листинге 5.2 приведено содержимое глобального файла настроек без некоторых комментариев.
Листинг 5.2. Конфигурационный файл /etc/ssh/ssh_config
# Site-wide defaults for various options
# Host *
# ForwardAgent no
# ForwardX11 no
# RhostsAuthentication yes
# RhostsRSAAuthentication yes
# RSAAuthentication yes
# PasswordAuthentication yes
# FallBackToRsh no
# UseRsh no
# BatchMode no
# CheckHostIP yes
# StrictHostKeyChecking ask
# IdentityFile ~/.ssh/identity
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# Port 22
# Protocol 2,1
# Cipher 3des
# Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc
# EscapeChar ~
Host *
Protocol 1,2
Некоторые из этих параметров мы уже видели при рассмотрении серверного конфигурационного файла. Здесь также присутствует параметр
Protocol, в котором указываются используемые версии SSH. Только в данном случае не стоит запрещать 1 версию. На безопасность клиента это не повлияет. Зато не будет проблем при подключении к серверу, который работает только на такой версии. Я надеюсь, что это будет не ваш сервер ☺.
Перечислю характерные для клиента команды:
□
Host— указывает, к какому серверу будут относиться следующие настройки;
□
CheckHostIP— разрешена проверка IP-адреса с перечисленными в файле know_hosts адресами;
□
Compression— позволяет ( yes) или запрещает ( no) использование сжатия данных;
□
KerberosAuthentication— позволяет ( yes) или запрещает ( no) использование аутентификации по протоколу Kerberos;
□
NumberOfPasswordPrompts— задает количество попыток ввода пароля. Если пароль не введен верно, то соединение разрывается;
□
IdentityFile— определяет имя файла, содержащего закрытые ключи пользователя;
□
PasswordAutentication— указывает на использование аутентификации по паролю.
5.3.5. Пример работы клиента SSH
Теперь рассмотрим на примере, как можно подключиться к удаленному серверу. Для этого используется команда:
Интервал:
Закладка: