Назад | Перейти на главную страницу

Совет по обеспечению безопасности облачного сервера? (Linux)

Я могу взять базовый дистрибутив Linux (стабильный сервер Ubuntu) и установить все, что мне нужно для запуска и работы моих веб-приложений. (Django, Rails, PHP и т.д.) Но после всего этого я был бы признателен за совет по безопасности.

Вот мой текущий контрольный список: 1. Измените назначенный мне пароль root. 2. Добавьте пользователя с правами администратора, чтобы мне не приходилось входить в систему как root. 3. Измените порт ssh на какой-нибудь случайный, который я придумал и требует ключа SSH 4. Настройте IPTables для блокировки почти всего, кроме (80, моего порта ssh и, возможно, пары других, в зависимости от

по требованиям)

Что теперь? Как мне поддерживать сервер в актуальном состоянии? Я действительно не хочу ежедневно читать список рассылки ubuntu-security-announce. Я просто хочу создавать веб-приложения.

Убедитесь, что вы настроили IPTables, чтобы также ограничивать ssh и все остальное, что не должно быть общедоступным для локальной подсети или определенных рабочих станций. Вы можете ограничить исходящий трафик а также, если вы работаете с более чем одним сервером, чтобы ограничивать ущерб в случае компромисса. apt-get update для выполнения базовых обновлений, устанавливает из исходников нужно сделать самому. При установке из исходного кода файл README обычно сообщает вам то, что вам нужно знать, и часто есть матрицы миграции или руководства по обновлению. Во всяком случае, процедура почти всегда заключается в простой переустановке из исходного кода (./configure [options], make, make install)

Вы также можете сделать ограничение скорости с iptables, чтобы облегчить грубое принуждение и базовая DOS (Отказ в обслуживании). Вы, наверное, хотите убедиться, что вы УДАЛИТЬ(ing) пакеты вместо ОТКАЗАТЬ(ing) их в ваших iptables. Отклонить отправляет ответ отправителю что они были .... хорошо отвергнуты. Просто брось действует так, как будто он так и не получил пакет.

http://www.cyberciti.biz/faq/how-do-i-update-ubuntu-linux-softwares/

Пример ограничения скорости можно найти здесь:

Как долго длится заблокированное соединение от Iptables? Есть ли способ установить тайм-аут?

Я настоятельно рекомендую прочитать некоторые другие статьи на сайте выше. Вивек Гите довольно искусен в изложении основных моментов, и он много рассказывает о безопасности.


Добавление пользователя-администратора, чтобы вам не приходилось входить в систему вообще так как корень это минимальный выигрыш в безопасности - делать что-то от имени root - это нормально, если вы принимаете риск допустить, что ваши собственные ошибки будут больше, например, при случайном удалении / boot. Более важным является отключение входа root через SSH. (в / etc / ssh / sshd_config), поэтому получить root можно только su или разрешить только физический доступ \ определенным пользователям возможность переключиться на root.

Я хочу подчеркнуть, что пользователь-администратор по-прежнему хорош как ступенька для входа в систему (например, ssh в качестве администратора, а затем переключитесь на root), просто создание пользователя-администратора, чтобы вам не приходилось входить в систему, немного напрасно в контексте безопасности.

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

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

Убедитесь, что у вас установлен антивирус. Хороший бесплатный - Clam AV.

Если вышеперечисленное превышает минимальные требования к вашей среде:

  1. Установить антивирус
  2. Отключите SSH для рута.
  3. Ограничьте SSH и другие службы на открытых портах, чтобы они принимали соединения только из вашей подсети в iptables.

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