Что должен знать каждый системный администратор перед администрированием публичного сервера?

10

Подобно этому вопросу о переполнении стека, что должен знать системный администратор, который привык к частным ситуациям типа интрасети, прежде чем стать администратором общедоступного сайта?

Это могут быть вещи, связанные с безопасностью, такие как «не оставляйте telnetоткрытыми», или практические вещи, такие как балансировка нагрузки для сайта с большим трафиком.

оборота Зифре
источник

Ответы:

12
  • Каждое приложение, каждый двоичный файл, каждый пакет, который существует на сервере, является ответственностью. Подпишитесь на принцип «наименьшего бита»; если он не установлен, он не может быть скомпрометирован.

  • Реализовать обнаружение вторжений, например Tripwire или аналогичное, и часто сканировать.

  • Инвестируйте в аппаратный брандмауэр и открывайте только те порты, которые необходимы для вашего приложения. Не позволяйте вашим административным портам (ssh, rdp и т. Д.) Быть публично видимыми; ограничьте их утвержденными управляющими IP-адресами.

  • Создавайте резервные копии конфигураций брандмауэра / коммутатора / маршрутизатора на момент запуска в производство. Если одно из этих устройств будет взломано, восстановление после него будет значительно быстрее, если очистить мозг устройства и перезагрузить конфигурацию, чем выполнять построчный аудит конфигурации, когда тикают часы.

  • Часто отображайте вашу среду извне, чтобы не открывать новые порты.

  • Никогда не доверяй интернету; убедитесь, что все, что вы обслуживаете в сети, является безопасным, насколько это возможно (например, выполните проверку и очистку входных данных на стороне сервера, чтобы остановить атаки с использованием SQL-инъекций).

  • Держите поверх ваших исправлений.

  • Если вы скомпрометированы, восстановите с нуля с помощью недавно загруженных носителей. Вы больше не можете доверять, что ваши резервные копии безопасны и не пострадали (хотя tripwire может помочь с этим) для чего-либо, кроме инертных, неисполняемых данных.

Грег Ворк
источник
1
+1 за резервное копирование конфига и стирание. Также, если возможно, попытайтесь получить данные, хранящиеся «в другом месте», таким образом, чтобы очистка происходила и при этом не нарушала целостность сервера.
Эйвери Пейн
4

Одним из инструментов, который я нашел удобным для защиты сети, является nessus

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

Затем он предоставит очень полный классифицированный отчет для каждой машины, который сможет увидеть, какие уязвимости / слабости он обнаружит, и оценит их серьезность - и даже порекомендует действия, которые необходимо предпринять для решения проблем.

казарка
источник
3

Они должны знать, как работает их система резервного копирования и аварийного восстановления, и как они будут восстанавливать систему, когда / если она окажется под угрозой.

Zoredache
источник
1
Это может показаться глупым, но на самом деле выполнение восстановления системы из резервных копий один или два раза в год неоценимо для выявления слабых мест в вашей процедуре (или полностью сломанной системы), которые в противном случае остались бы незамеченными до чрезвычайной ситуации, когда все глаза включены Вы
Брент
3

Это немного противоречит, но с точки зрения безопасности я не делаю различий между внутренним сервером и внешним сервером. Рано или поздно кто-то допустит ошибку в брандмауэре, руководство будет настаивать на том, чтобы сервер был раскрыт из-за важного клиента, Бетти в бухгалтерии каким-то образом получит vpn-клиент на своей зараженной домашней машине и т. Д.

Тем не менее, слои - ваш друг, и вы должны занести в черный список по умолчанию.

Слои - у вас должно быть несколько уровней безопасности. Например, аппаратный брандмауэр и программный брандмауэр. Теоретически они служат той же цели, но наличие нескольких уровней защищает от ошибок и смягчает последствия использования одного слоя.

Другим аспектом многоуровневого размещения является «домашний доступ», который по сути состоит из нескольких DMZ. В какой-то момент вы должны иметь некоторый уровень доверия между вашими компьютерами и людьми, получающими доступ к вашим учетным записям. Если вы можете сузить эти точки взаимодействия, вы можете жестко контролировать вид трафика, которому вы доверяете, в любой точке. Например, если вы отделяете серверы интерфейса / приложения от серверов баз данных, вы сужаете уровень доверия. Если ваши серверы приложений становятся скомпрометированными, эти злоумышленники получают минимальную опору для вашей инфраструктуры (то есть, чтобы продолжить свою атаку и пытаться использовать ваши другие серверы, им нужно использовать только те установленные точки доверия).

Что касается внесения в черный список по умолчанию, вы должны в основном закрыть все и требовать (даже если это только вы сами) обоснование для каждого порта, который вы открываете, имя пользователя, которому вы разрешаете доступ, приложение, которое вы устанавливаете, и т. Д.

jj33
источник
Я слышал (и использовал) уровни защиты как стратегию, но никогда не сотворю, отличная идея. +1
Эйвери Пейн
3

В системах с ЛЮБЫМИ общедоступными интерфейсами убедитесь, что ваши пользователи имеют надежные пароли , внедрив политику надежных паролей и протестировав файл паролей с помощью утилиты взлома паролей, такой как Джон Риппер

Вы можете дополнительно защититься от атак с использованием подбора паролей, блокируя IP-адреса после нескольких неудачных попыток. Хороший инструмент для этого (в Linux) - fail2ban

казарка
источник
1

Ваш переключатель может быть взломан, и кто-то может подделать данные. Если у вас нет коммутатора, настройте vpn, так как ограничения доступа к брандмауэру для ip может быть недостаточно.

Не оставляйте открытыми какие-либо порты, кроме тех, к которым вы хотите, чтобы пользователи и хакеры имели доступ. Сканируйте свои собственные серверы с другого сайта каждый месяц.

Не оставляйте порт ssh по умолчанию открытым для хакеров.

Павел Полевич
источник