Безопасность Linux

Дарова, кулхацкер :). Линукс – одна из самых любимых моих операционок, про ее плюсы в этой статье я распрягать не буду, и так много всего написано, но я тебе помогу в настройке безопасности, чтобы линукс стал для тебя стеной, которая отгораживает тебя от инета, а именно, от людей, которые захотят порутить твое сокровище :) Ну что, вперед!

Чистим пользователей

Первое, что нужно замутить, так это удалить всех лишних пользователей и группы. Для этого залазим в файл /etc/passwd и удаляем пользователей (а именно, строки с именами юзверей) games, news (если ты не юзаешь проги чтения новостей), gopher (это демон, который запускает сервер на твоей тачке, подобен ФТП, но не сильно нужный) и т.д. Теперь лезь в файл /etc/shadow и проводи аналогичную операцию (также не забывай, что юзверей можно удалять командой userdel name). После лезем в /etc/group и удаляем группы пользователей, которые тебе не нужны (также можно юзать команду groupdel group).

Пароль рута

Ты думаешь, зачем это надо :), пароль и так никто не узнает, НО в сети много людей, у которых пароль соответствует имени/фамилии/нику/году_рождения/имени_собаки и узнать его легко, так что будем делать суперпасс, который никто не узнает :). Для начала пароль должен быть не меньше 8 символов, он должен содержать большие буквы, цифры etc. И самое главное, ты должен его помнить :) (к примеру, пасс 1b*siEiNa).

Логи

Как ты уже слышал, на никс-системах ведутся логи входов/выходов и т.д. Эти логи ты можешь просмотреть в /var/log/ (они носят имя utmp, wtmp, messages, boot etc.) и еще самое интересное, так это то, что ты можешь сделать так, чтобы велись логи коннектов на указанный тобой сервис, установленный на твоей машине. Этим занимается прога syslog, файл конфигурации которой находится в /etc/syslog.conf . Приведу пример строки из syslog.conf, которая ведет логи коннектов на ФТП порт

ftp.* /var/log/ftplog (не забудь создать файл ftplog).

FireWall

Файрволл играет роль сервера, через который в инет уходят и приходят пакеты, значит, благодаря нему мы можем закрыть порты на своей машине, etc. Я буду рассказывать про файрволл ipchains, который нужно будет установить отдельно (можно скачать RPM-пакет или tar-архив, искать на http://www.rpmfind.net/). После установки, нужно его настроить :), а для этого закроем доступ к наиболее важным портам на твоей машине командой;

ipchains –A input –p TCP –d 0.0.0.0/0 1024 –j DENY (запрещается прием пакетов на 1024 порт, протокол ТCP)

Ниже я привел опции файрволла:

-A input/output добавить правило для входящих/исходящих пакетов
-L вывести все правила
-F удалить все правила
-d IP/mask port указать айпи адрес и маску сети
-j DENY/ALLOW запретить/разрешить правило
-p TCP/UDP/ICMP тип протокола

inetd.conf

В файле конфигурации демона inet (/etc/inetd.conf), находятся списки сервисов, которые будут запускаться при непосредственном обращении к ним. Эти сервисы можно убрать, поставив в начале строки знак #, так что если ты не хочешь, чтобы у тебя висел сервис телнета, то просто поставь # в соответствующей строке.

Nfs

Network File System (основной файл конфигурации находится в /etc/exports), она предназначена для получения доступа к общим файловым системам, то есть, если определенный хост прописан в этом файле, то он может монтировать, читать, etc. определенную часть файловой системы (она указана в файле /etc/exports) .Основная проблема заключается в том, что ты должен следить за содержимым этого файла.

31337

Ты можешь сделать себе сервер на 31337 порт, и если кто-то позарится сканировать тебя или подконектится на этот порт, то ты будешь это знать. Это делается не просто, а очень просто. Для начала нужно создать файл сценария, в папке /etc c именем elite :) и записать туда следующее:

#!/bin/sh
echo “Someone connect on 31337 port” > bla
mail root < bla

Потом открыть файл сервисов (/etc/services) и записать:

elite 31337/tcp

Теперь открывай /etc/inetd.conf и пиши:

elite stream tcp wait root /etc/elite elite

Все, командой chmod a+x elite делаем файл исполняемым и перезагружаем inetd демон /etc/rc.d/init/inetd restart. Осталось только проверить его работу, поэтому телнеться к себе на 31337 порт командой telnet 127.0.0.1 31337, если сервер запустился и ты сидишь под рутом, то тебе скоро придет письмо, которое будет уведомлять тебя ,что кто-то заинтересовался тобой и пытается законектиться на 31337 порт.

Разное

Если у тебя есть ФТП, smtp сервер, то ты должен обязательно позаботиться о их настройке (пропатчить, изменить банеры, etc.), также не забывай бэкапить системные/важные файлы и делать утреннюю зарядку :). Удачи.