советы для linux админа
 

ukritie.org.ua

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта
Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

советы для linux админа
(1 чел.) (1) гость
  • Страница:
  • 1

ТЕМА: советы для linux админа

советы для linux админа 18.10.2009 11:05 #231

  • pro
  • Вне сайта
  • Заблокирован
  • Постов: 164
  • Репутация: 2
сегодня увидел и это инфо на сайте ХакерРу и не могу просто их здесь не отобразить, очень дельно написано, планирую все до одного внедрить их у себя на работе, так как на некоторые из них просто не хватает времени, но как говорится береженого бог бережет
Итак:

Десять советов настоящему админу

Лично я считаю, что любой администратор должен добиться от своей системы стабильности, безопасности и удобства. Причем последний критерий необходим для экономии его рабочего времени и обеспечения максимального комфорта . Но обо всем по порядку. Итак, вот десять советов, которые помогут любому содержать свой сервер в чистоте и порядке.

1. Бэкапы правят миром

Я думаю, каждый слышал такое полезное слово, как «бэкап». Но, несмотря на это, никто их не создает. По разным причинам: одни экономят место на винте, вторые надеются на то, что удастся выцепить информацию даже с поврежденного носителя. Остальные вообще ни о чем не думают . Но мы-то с тобой знаем, что только с помощью вовремя сделанного бэкапа можно избежать глобальных проблем. Итак, для копии важных данных следует организовать отдельный носитель. Простыми словами: подключить второй винт к серверу. Желательно выбирать новый HDD проверенной модели, а не подрубать годовалый постукивающий девайс. Затем организовать процесс сохранения следующим образом: перед созданием бэкапа маунти носитель, затем создавай на нем необходимый архив, а потом отключай. Это необходимо для того, чтобы обращаться к резервному винту как можно меньше, и таким образом сделать его устойчивее.

Скрипт для создания бэкапа

#!/bin/sh

mount /dev/hdb /mnt/backup

tar zcf /mnt/backup/etc.tar.gz /etc

tar zcf /mnt/backup/home.tar.gz /home

umount /dev/hdb

Не следует бэкапить статическую информацию. То есть данные, которые не изменяются со временем (бинарники, конфиги и т.п.). Их советую переместить на резервный оптический носитель (нарезать на болванку) и юзать в случае необходимости. Это сэкономит и время, и место. Затем выбери оптимальное время для создания бэкапов. Не стоит выполнять архивацию в час пик, когда все юзеры активно обращаются к серверу. Разумнее делать резервирование в 3-4 ночи, либо в то время, когда ресурсы сервера наверняка простаивают. Как часто выполнять сохранение – дело твое, я бы сказал, это зависит от стратегического назначения сервера. Свои бэкапы я создаю раз в неделю. Чтобы активировать скрипт, воспользуйся кронтабом. Залогинься под рутом, открой персональный файл планировщика (crontab –e) и впиши в него следующее:

* 3 1,8,15,22 * * /usr/bin/backup >/dev/null 2>&1

Тперь резервирование будет проходить в три ночи раз в неделю.

2. Контролируй сервисы

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

Контроль над скриптом update.pl

#!/usr/bin/perl

unless (`ps ax|grep pppd|awk \\{\\\'print $1 }\\\'`) {

system(“perl /usr/bin/update.pl”);

}

Чаще всего можно обойтись более простым способом проверки активности: необходимо удостовериться в наличии файла /var/run/process.pid и, в случае его отсутствия, запустить сервис заново.
экономьте электричетсво - выключайте Num Lock!
Изменено: 18.10.2009 11:08 от pro.

RE: советы для linux админа 18.10.2009 11:09 #232

  • pro
  • Вне сайта
  • Заблокирован
  • Постов: 164
  • Репутация: 2
3. Пожалей железо – поставь UPS

О том, что UPS спасает от перебоев питания, можно не говорить. Более того, источник бесперебойного питания гарантирует, что железо на твоем сервере внезапно не сгорит, а машина останется работоспособной. Если твоя фирма не позаботилась о такой защите, выбивай деньги у начальства и требуй ИБП на свой сервер. Тем самым ты избавишь себя от лишних проблем. Подцепляй на источник питания лишь самые необходимые вещи. Пусть это будут сам сервер, ADSL-модем и свитч, который склонен к внезапному зависанию. Мониторы и принтеры более устойчивы к сбоям в питании, поэтому они могут питаться и от общей сети.

4. Оставайся за каменной стеной

Со стабильностью все ясно, теперь перейдем к вопросам защиты. В первую очередь необходимо настроить файрвол. Пусть это будет iptables. Я уже не раз писал о прелестях этого брандмауэра (10/03), но еще раз напомню о том, под каким углом лучше поставить межсетевой экран . Во-первых, запрети подключение на все порты и разреши только пакеты в состоянии RELATED и ESTABLISHED. Во-вторых, реши, какие порты тебе необходимы для локального и внешнего использования, и грамотно распиши правила для каждого порта (для удобства рекомендую создать две цепочки с именами local и internet). Затем приступай к таблице NAT. В случае необходимости сделай маскарад на отдельные машины либо пропиши DNAT, если это потребуется. Не мне тебя учить обращаться с файрволом, с соответствующим мануалом ты решишь проблему самостоятельно . Используй все фичи, которые предоставляет тебе файрвол. В случае Linux, можешь заюзать хорошее средство от нападения. Смотри: некоторые хакеры (чаще всего ScriptKiddies) внедряются в систему через дырявый Web-сервер. Алгоритм тривиальный, и, думаю, ты его знаешь: сканирование Web’а на кривые скрипты либо модули, заливка шелла и открытие порта. После этого взломщик рулит системой. Чтобы этого не случилось, позволь брандмауэру защитить свой сервер. Для этого пропиши ряд правил в цепь OUTPUT, которые будут препятствовать открытию какого-либо бэкдора, а также оповестят админа о нападении:

Шлифуем OUTPUT

iptables –A OUTPUT -m owner --uid-owner 99 -m multiport -p tcp --sports 80,443 -j ACCEPT

iptables –A OUTPUT -m owner --uid-owner 99 –p udp --dport 53 -j ACCEPT

iptables -A OUTPUT -m owner --uid-owner 99 -j LOG --log-level 4 --log-prefix \'NOT WWW Nobody: \'

iptables -A OUTPUT -m owner --uid-owner 99 –j DROP

Несмотря на громоздкие правила, разобраться несложно. В первой команде ты разрешишь веб-серверу (uid 99, как правило, апачевый идентификатор) посылать что-либо на 80 и 443 порты (и ни на какие другие!). Во второй строке разрешим юзать 53 UDP-порт (он также используется). Далее включаем полный лог запроса, часть которого состоит из подстроки \'NOT WWW Nobody: \'. И, наконец, перекроем кислород событием DROP. Я молчу про такие замечательные возможности файрвола, как MARK, TOS или MIRROR. Чтобы описать их принципы, понадобится целая статья. Впрочем, эксперименты не помешают, и, возможно, ты извлечешь пользу из этих событий. Дерзай, и тебя не тронет ни один хакер.
экономьте электричетсво - выключайте Num Lock!

RE: советы для linux админа 18.10.2009 12:02 #233

  • pro
  • Вне сайта
  • Заблокирован
  • Постов: 164
  • Репутация: 2
5. Будь параноиком – поставь IDS

Ты уже не маленький и знаешь, каково это – оставлять сервер без присмотра . В нашем жестоком мире нельзя без оружия, поэтому для защиты доверься проверенному софту. О файрволе я уже сказал, но нередко даже грамотно настроенный брандмауэр обходится матерым хакером (я уже не раз писал, что абсолютной защиты не существует). Чтобы взломщику жизнь медом не казалась, поставь на сервер систему защиты от атак (Intrusion Detection System). Их много, поэтому я не буду тебе советовать конкретную софтину, а лишь расскажу общий принцип их работы, после чего ты почитаешь статьи из других источников (в Хакере много раз говорилось об IDS) и выберешь для себя оптимальный вариант . Какой бы софт ты ни выбрал, системная безопасность возрастет на порядки и отпугнет многих хакеров. Я уверен на все сто, что даже если тебя заломают с активной LIDS, то устраивать из твоего сервера хакерский плацдарм никто не станет .

6. Юзай только новые и проверенные демоны

Часто взломщик получает шелл через дырявый сервис, закрывать который файрволом никто и не подумает. Чтобы этого не случилось, вовремя патчи дыры в ПО и обновляй ядра (чаще всего баги находят именно в них... хотя и локального плана). Также следи за тем, чтобы какая-нибудь якобы локальная софтина особо не светила порты в инет. Яркий тому пример – программа hddtemp под Linux, которая позволяет ознакомиться с температурой девайса удаленным способом. Если учитывать, что на бинарник накладывается SUID-бит, открывать порт довольно опасно. Юзай netstat –an, чтобы определять активные соединения и вовремя прикрывать их. Словом, не доверяй файрволу, а лучше следи за сервисами.

7. Не оставляй следов

Очень важное правило для админа. Часто после установки железных правил файрвола, мощной IDS, администратор забывает оставаться параноиком . А это очень важно. В чем заключается мой совет: никогда не оставляй историю своих команд. Да, они порой бывают необходимы, но часто их использует не админ, а хакер. Смотри: вся история твоих команд сохраняется в файле ~/.bash_history. Я подразумеваю, что ты работаешь как под непривилегированным аккаунтом, так и под рутом. Поэтому хисторей будет как минимум две. Рассмотрим пример, когда взломщик поимел шелл на твоем сервере и юзает твой первый логин (не рутовый). Открыв на чтение .bash_history, он сможет прочитать случайным образом введенный рут-пароль (для справки, просмотри свою историю и посчитай, сколько раз он там будет наблюдаться ), пассворд на mySQL-базу и т.п. Когда хакер станет рутом, он тем более сможет узнать пароль на суперпользователя (если учитывать, что до этого он его не знал), а также всякие секретные слова, переданные в качестве параметров htpasswd и другим программам. Из этого можно сделать следующий вывод: никогда не вводи пароли в командной строке без затенения ввода. Если его не увидит любопытный хакер, прячущийся за твоей спиной, то пароль запишется в хистори и будет храниться там долгие годы. А лучше всего прилинкуй .bash_history к /dev/null и спи спокойно .
экономьте электричетсво - выключайте Num Lock!

RE: советы для linux админа 18.10.2009 12:05 #234

  • pro
  • Вне сайта
  • Заблокирован
  • Постов: 164
  • Репутация: 2
8. Следи за паролями

Никто не спорит, что основной метод аутентификации – пароль. Пароль представляет собой сложное сочетание символов, после ввода которых система дает пользователю определенные привилегии. Но часто пароли очень просты, поэтому хакеры легко овладевают системой. Как правило, в ход идут переборщики паролей. Дык используй те же средства, чтобы противостоять злоумышленникам! Юзай John в качестве поиска слабых паролей (кстати, именно это и есть главное предназначение программы), а затем пинай локальных пользователей, чтобы делали пароли сложнее. И сам не забывай менять рутовый пасс на последовательность, напоминающую «zk.,k.fr3h!». Обращай внимание на режимы доступа к файлам типа .htpasswd, passwd_ftp и к прочим ресурсам. Дело в том, что чаще всего хакер может под любым логином прочитать документ. А пароль может совпадать с системным. Словом, ситуации могут быть разными, а режим один – 0600 . Делай так, чтобы каждый сервис юзал различные базы для аутентификации. Это улучшит безопасность. К примеру, хакер подобрал пароль на почту, но не зайдет на шелл, не поюзает mySQL, диалап, статистику и прочие ресурсы. Чтобы это реализовать, выбирай хороший софт. В качестве почтовика рекомендую CommuniGate или Cyrus, для FTP подойдет ProFTPD и т.п.

9. Доверься скриптам

Итак, ты уяснил, что необходимо для того, чтобы обезопасить свой сервер. Теперь посмотрим, как сократить свой рабочий день на несколько часов. Заманчивое предложение, не так ли? . Не поленись и напиши ряд скриптов, в которых хранятся часто используемые длинные команды. Живой пример: ты часто прописываешь Mail-аккаунты. Так сделай же сценарий, который выполнит создание ящика, заведение паролей и отправку тестового письма пользователю. Поверь, это сильно сократит твою работу. Также возникают ситуации (до 90%), когда какой-либо сотрудник забыл пароль на ресурс и вызванивает тебя, чтобы его поменять. Либо нужно завести юзера без твоего участия. Либо прописать зону. Либо... Я к тому, что тебе следует наваять простенький Web-интерфейс с cgi-сценарием, выполняющим необходимые действия. Защити ресурс паролем, который скажи своему начальнику – он-то каждый день на работе и не представляет, во что вляпывается. А ты в это время пьешь пиво с девушкой. Удобно? Несомненно!

10. Читай компьютерную периодику(в оригинале журнал Хакер)))

Вот это действительно дельный совет . В нашем журнале можно найти массу полезных статей, которые не заменит никакой багтрак. Все это в доступной форме и нередко из первых рук. Но Хакер не единственный источник информации, поэтому постоянно консультируйся у знакомых администраторов, читай различные порталы... в общем, живи сегодняшним днем.
экономьте электричетсво - выключайте Num Lock!
Изменено: 18.10.2009 12:07 от pro.
  • Страница:
  • 1
Время создания страницы: 0.54 секунд

НОВОЕ НА ФОРУМЕ

Нет сообщений для показа


Поиск

Календарь

Праздники Украины