Личный блог Suvan`a.

Работая и играя с Linux... И что из этого иногда получается.

Основные меры защиты Linux

Подписаться на эту рубрику по RSS

     Рекомендации по физической безопасности, написанные здесь, подойдут практически для любой системы, не только Linux, но основной уклон сделан в сторону Linux.

     Почему именно физическая безопасность? Можно ли полностью доверять сотрудникам компании? А что если когда-нибудь кто-то подойдет к компьютеру и нажмет «Ctrl» + «Alt» + «Del» или, что еще хуже, «Reset». В первом случае система хотя бы корректно завершит свою работу, а во втором...

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

Далее...

Защита SUDO.

Рубрика: Безопасность | Основные меры защиты Linux
Метки:
Дата: 12/05/2009 10:23:59

     Параметры по умолчанию.

     Полный список установок команды sudo можно вывести с помощь опции -V (запускать программу нужно от имени пользователя root):

# sudo -V

Sudo version 1.6.8p12

Authentication methods: 'pam'

Syslog facility if syslog is being used for logging: auth

Syslog priority to use when user authenticates successfully: notice

Syslog priority to use when user authenticates unsuccessfully: alert

Ignore '.' in $PATH

Send mail if the user is not in sudoers

Use a separate timestamp for each user/tty combo

Lecture user the first time they run sudo

Require users to authenticate by default

Root may run sudo

Set $HOME to the target user when starting a shell with -s

Allow some information gathering to give useful error messages

Visudo will honor the EDITOR environment variable

Set the LOGNAME and USER environment variables

Length at which to wrap log file lines (0 for no wrap): 80

Authentication timestamp timeout: 5 minutes

Password prompt timeout: 5 minutes

Number of tries to enter a password: 3

Umask to use or 0777 to use user's: 022

Path to mail program: /usr/sbin/sendmail

Flags for mail program: -t

Address to send mail to: root

Subject line for mail messages: *** SECURITY information for %h ***

Incorrect password message: Sorry, try again.

Path to authentication timestamp dir: /var/run/sudo

Default password prompt: %p's password:

Default user to run commands as: root

Path to the editor for use by visudo: /usr/bin/vi

When to require a password for 'list' pseudocommand: any

When to require a password for 'verify' pseudocommand: all

File containing dummy exec functions: /usr/lib/sudo/sudo_noexec.so

Environment variables to check for sanity:

  LANGUAGE

  LANG

  LC_*

Environment variables to remove:

  PERL5OPT

  PERL5LIB

  PERLLIB

  JAVA_TOOL_OPTIONS

  SHELLOPTS

  PS4

  BASH_ENV

  ENV

  TERMCAP

  TERMPATH

  TERMINFO_DIRS

  TERMINFO

  _RLD*

  LD_*

  PATH_LOCALE

  NLSPATH

  HOSTALIASES

  RES_OPTIONS

  LOCALDOMAIN

  CDPATH

  IFS

Local IP address and netmask pairs:

Далее...

Пакет SUDO.

Рубрика: Безопасность | Основные меры защиты Linux
Метки: |
Дата: 07/05/2009 16:25:45

Делегирование доступа root.

     Пользователь root обладает неограниченными правами в Linux-системе, из-за этого он должен обезопасить систему прежде всего от самого себя. Рекомендуется входить в систему и работать в ней как обычный пользователь, а когда действительно нужны права root, с помощью команды su переходить в привилегированный режим. В некоторых дистрибутивах это единственный способ регистрации в качестве пользователя root, поскольку учетная запись root по умолчанию блокируется.

     Иногда есть необходимость предоставления полномочий пользователя root другим пользователям, например хостмастеру — для управления сервером DNS. Но предоставлять пароль root'a каждом желающему не очень хорошая идея.

Далее...

Доступные для записи файлы.

     В любой системе наверняка найдется полно файлов, которые доступны для записи каждому пользователю. Нужно найти такие файлы и изменить к ним права доступа. В первую очередь группу риска представляют файлы в каталогах /etc, /bin и /usr. Найти такие файлы просто:

# find / -perm 002 -type f

     В каталоге /dev есть много файлов устройств, доступных для записи пользователям, следовательно, нужно ограничить поиск простыми файлами (-type f).

Далее...

Другие сервисы.

     He все сервисы могут запускаться с помощью суперсервера (xinetd/inetd). Отдельные сервисы запускаются независимо - в так называемом автономном (standalone) режиме. Чтобы включить/выключить такие сервисы, необходимо знать, как работать с инициализационными сценариями сис­темы. В дистрибутивах, использующих систему инициализации System V, всякий сервис контролируется отдельным сценарием. Например, сцена­рий random, скопированный с Mandrake-машины: этот сценарий управ­ляет запуском и остановом генератора случайных чисел.

Далее...

Нужно решить, какие сервисы нужны, а какие - нет. Последовательность действий для запуска и останова системы зависит от дистрибутива (точнее, от его системы инициализации) и все случаи рассмотреть нет никакой возможности, следовательно, рассмотрим более распространенный вариант, используемый дистрибутивами Red Hat/Fedora и SuSE.

     XINETD.

     Ранее был упомянут файл inetd.conf - это конфигурационный файл суперсервера Интернета (inetd). В нынешних дистрибутивах вместо суперсервера inetd используется его расширенная версия - xinetd. В кон­фигурационном файле inetd все сервисы были описанысразу в одном файле . В xinetd ситуация изменилась.

Далее...

Поговорим о сервисах, которые необ­ходимы, и которые сервисы нужно отключить.

     Рассмотрим отдельные сервисы общего назначения, которые обыкновенно запущены на типичной Linux-системе. В скобках указаны порты, которые используются этими сервисами:

Далее...