39 советов по усилению безопасности Linux-серверов

5813
39 советов по усилению безопасности Linux-серверов
39 советов по усилению безопасности Linux-серверов

Правильная настройка Linux-сервера важна для защиты ваших данных, интеллектуальной собственности и т.д. За безопасность Linux-сервера отвечает системный администратор. Сегодня я предоставлю 39 советов по усилению защиты Linux-сервера при стандартной установке Linux-системы.

Системный администратор

Содержание

Советы и контрольный список по усилению безопасности сервера Linux

Следующие инструкции предполагают, что вы используете дистрибутив Linux на базе CentOS/RHEL или Ubuntu/Debian.

1. Шифрование передачи данных для сервера Linux

Все данные, передаваемые по сети, открыты для мониторинга. Шифруйте передаваемые данные, когда это возможно, с помощью пароля или ключей/сертификатов.

Для передачи файлов используйте scp, ssh, rsync или sftp. Вы также можете монтировать файловую систему удаленного сервера или свой собственный домашний каталог с помощью специальных инструментов sshfs и fuse.

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

OpenVPN — это экономически эффективная, легкая SSL VPN. Другой вариант — попробовать tinc, который использует туннелирование и шифрование для создания защищенной частной сети между узлами в Интернете или частной незащищенной локальной сети.

2. Избегайте использования служб FTP, Telnet и Rlogin / Rsh в Linux

В большинстве сетевых конфигураций имена пользователей, пароли, команды FTP / telnet / rsh и передаваемые файлы могут быть перехвачены любым пользователем в той же сети с помощью анализатора пакетов. Общим решением этой проблемы является использование OpenSSH, SFTP или FTPS (FTP over SSL), которые добавляют SSL или TLS шифрование к FTP. Введите следующую команду yum, чтобы удалить NIS, rsh и другие устаревшие службы:

# yum erase xinetd ypserv tftp-server telnet-server rsh-server

Если вы используете сервер на базе Debian/Ubuntu Linux, попробуйте команду apt-get/apt для удаления небезопасных служб:

$ sudo apt-get --purge remove xinetd nis yp-tools tftpd atftpd tftpd-hpa telnetd rsh-server rsh-redone-server

3. Минимизация программного обеспечения для минимизации уязвимостей в Linux

Действительно ли вам нужны всевозможные установленные веб-сервисы? Избегайте установки ненужного программного обеспечения, чтобы избежать уязвимостей в программном обеспечении. Используйте менеджер пакетов RPM, такой как yum или apt-get и/или dpkg, чтобы просмотреть весь установленный набор пакетов программного обеспечения в системе. Удалите все ненужные пакеты.

# yum list installed
# yum list packageName
# yum remove packageName

или

# dpkg --list
# dpkg --info packageName
# apt-get remove packageName

4. Одна сетевая служба на систему или экземпляр виртуальной машины

Запускайте различные сетевые службы на отдельных серверах или экземплярах виртуальных машин. Это ограничивает количество других служб, которые могут быть скомпрометированы. Например, если злоумышленник сможет успешно использовать такое программное обеспечение, как Apache flow, он получит доступ ко всему серверу, включая другие службы, такие как MySQL/MariaDB/PGSql, сервер электронной почты и т.д.

5. Поддерживайте ядро и программное обеспечение Linux в актуальном состоянии

Применение исправлений безопасности является важной частью обслуживания сервера Linux. Linux предоставляет все необходимые инструменты для поддержания системы в актуальном состоянии, а также позволяет легко переходить с одной версии на другую. Все обновления безопасности должны быть просмотрены и применены как можно скорее. Опять же, используйте менеджер пакетов RPM, такой как yum и/или apt-get и/или dpkg для применения всех обновлений безопасности.

# yum update

или

# apt-get update && apt-get upgrade

Вы можете настроить Red hat / CentOS / Fedora Linux на отправку уведомлений об обновлении пакетов yum по электронной почте. Другой вариант — применять все обновления безопасности через задание cron. В Debian / Ubuntu Linux вы можете использовать apticron для отправки уведомлений о безопасности. Также можно настроить автоматическое обновление для сервера Debian / Ubuntu Linux с помощью команды apt-get /apt:

$ sudo apt-get install unattended-upgrades apt-listchanges bsd-mailx

6. Используйте расширения безопасности Linux

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

7. SELinux

Я настоятельно рекомендую использовать SELinux, который обеспечивает гибкий обязательный контроль доступа (MAC). В стандартном Linux Discretionary Access Control (DAC) приложение или процесс, запущенный от имени пользователя (UID или SUID), имеет права пользователя на такие объекты, как файлы, сокеты и другие процессы. Запуск ядра MAC защищает систему от вредоносных или несовершенных приложений, которые могут повредить или уничтожить систему. Смотрите официальную документацию Redhat, в которой объясняется конфигурация SELinux.

8. Учетные записи пользователей Linux и строгая политика паролей

Используйте команды useradd / usermod для создания и поддержки учетных записей пользователей. Убедитесь, что у вас хорошая и надежная политика паролей. Например, хороший пароль включает не менее 8 символов и состоит из букв, цифр, специальных символов, верхнего и нижнего алфавита и т.д. Самое важное — подобрать пароль, который вы сможете запомнить. Используйте такие инструменты, как «John the ripper» для поиска слабых паролей пользователей на вашем сервере. Настройте pam_cracklib.so для обеспечения соблюдения политики паролей.

9. Настройка смены паролей для пользователей Linux для повышения безопасности

Команда chage изменяет количество дней между сменой пароля и дату последней смены пароля. Эта информация используется системой, чтобы определить, когда пользователь должен сменить свой пароль. Файл /etc/login.defs определяет конфигурацию набора теневых паролей для конкретного сайта, включая настройку старения паролей. Чтобы отключить старение паролей, введите:

# chage -M 99999 userName

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

# chage -l userName

Наконец, вы также можете отредактировать файл /etc/shadow в следующих полях:

{userName}:{password}:{lastpasswdchanged}:{Minimum_days}:{Maximum_days}:{Warn}:{Inactive}:{Expire}:

Где,

  1. Minimum_days: Минимальное количество дней между сменой пароля, т.е. количество дней, оставшихся до того, как пользователю будет разрешено сменить пароль.
  2. Maximum_days: Максимальное количество дней действия пароля (после чего пользователь будет вынужден сменить пароль).
  3. Warn: Количество дней до истечения срока действия пароля, за которое пользователь будет предупрежден о необходимости смены пароля.
  4. Expire: Дни с 1 января 1970 года, когда учетная запись отключена, т.е. абсолютная дата, указывающая, когда логин больше не может быть использован.

Я рекомендую использовать команду chage вместо того, чтобы редактировать файл /etc/shadow вручную:

# chage -M 60 -m 7 -W 7 userName

10. Ограничение использования прежних паролей в Linux

Вы можете запретить всем пользователям использовать или повторно использовать одни и те же старые пароли в Linux. Параметр модуля pam_unix remember может быть использован для настройки количества предыдущих паролей, которые не могут быть использованы повторно.

11. Блокировка учетных записей пользователей после неудачного входа в систему

В Linux вы можете использовать команду faillog для отображения записей faillog или для установки пределов неудачных попыток входа. faillog форматирует содержимое журнала неудачных попыток из базы данных /var/log/faillog / log файл. Она также может быть использована для ведения счетчиков и лимитов неудач.Чтобы увидеть неудачные попытки входа в систему, введите:

faillog

Чтобы разблокировать учетную запись после неудачного входа, выполните команду:

faillog -r -u userName

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

# lock Linux account
passwd -l userName
# unlock Linux account
passwd -u userName

12. Как проверить, что ни одна учетная запись не имеет пустых паролей?

Введите следующую команду

# awk -F: '($2 == "") {print}' /etc/shadow

Заблокируйте все учетные записи с пустыми паролями:

# passwd -l accountName

13. Убедитесь, что ни одна не корневая учетная запись не имеет UID, установленного на 0

Только учетная запись root имеет UID 0 с полными правами доступа к системе. Введите следующую команду, чтобы отобразить все учетные записи с UID, равным 0:

# awk -F: '($3 == "0") {print}' /etc/passwd

Вы должны увидеть только одну строку, как показано ниже:

root:x:0:0:root:/root:/bin/bash

Если вы видите другие строки, удалите их или убедитесь, что другие учетные записи авторизованы вами для использования UID 0.

14. Отключить вход под пользователем root

Никогда не входите в систему под пользователем root. Вы должны использовать sudo для выполнения команд уровня root по мере необходимости. sudo значительно повышает безопасность системы, не сообщая пароль root другим пользователям и администраторам. sudo также предоставляет простые функции аудита и отслеживания.14. Отключить вход под пользователем root
Никогда не входите в систему под пользователем root. Вы должны использовать sudo для выполнения команд уровня root по мере необходимости. sudo значительно повышает безопасность системы, не сообщая пароль root другим пользователям и администраторам. sudo также предоставляет простые функции аудита и отслеживания.

15. Безопасность физических серверов

Вы должны защитить физический доступ к консоли Linux-серверов. Настройте BIOS и отключите загрузку с внешних устройств, таких как DVD / CD / USB-накопитель. Установите пароль BIOS и загрузчика grub для защиты этих настроек. Все производственные модули должны быть заперты в IDC (интернет-центрах обработки данных), и все лица должны пройти определенную проверку безопасности, прежде чем получить доступ к вашему серверу.

16. Отключите ненужные службы Linux

Отключите все ненужные службы и демоны (службы, работающие в фоновом режиме). Вам необходимо удалить все ненужные службы из процесса запуска системы. Введите следующую команду, чтобы перечислить все службы, которые запускаются при загрузке системы на уровне выполнения # 3:

# chkconfig --list | grep '3:on'

Чтобы отключить обслуживание, введите:

# service serviceName stop
# chkconfig serviceName off

Замечание о дистрибутивах и службах Linux на базе systemd
Современные дистрибутивы Linux с systemd используют команду systemctl для той же цели.

Выведите список служб, в котором перечислено, на каких уровнях выполнения каждая из них.

# systemctl list-unit-files --type=service
# systemctl list-dependencies graphical.target

Выключение службы при загрузке

# systemctl disable service
# systemctl disable httpd.service

Запуск/остановка/перезапуск службы

# systemctl disable service
# systemctl disable httpd.service

Получить статус службы

# systemctl status service
# systemctl status httpd.service

Просмотр сообщений журнала

# journalctl
# journalctl -u network.service
# journalctl -u ssh.service
# journalctl -f
# journalctl -k

17. Поиск прослушиваемых сетевых портов

Используйте следующую команду, чтобы перечислить все открытые порты и связанные с ними программы:

netstat -tulpn

Или используйте команду ss следующим образом:

$ ss -tulpn

или

nmap -sT -O localhost
nmap -sT -O server.example.com

18. Удаление систем X Window (X11)

X Window systems на сервере не требуется. Нет причин запускать X11 на вашем выделенном почтовом сервере на базе Linux и веб-сервере Apache/Nginx. Вы можете отключить и удалить X Window для повышения безопасности и производительности сервера. Отредактируйте /etc/inittab и установите уровень выполнения 3. Наконец, удалите систему X Windows, введите:

# yum groupremove "X Window System"

На сервере CentOS 7/RHEL 7 используйте следующие команды:

# yum group remove "GNOME Desktop"
# yum group remove "KDE Plasma Workspaces"
# yum group remove "Server with GUI"
# yum group remove "MATE Desktop"

19. Настройка брандмауэра на основе Iptables и TCPWrappers в Linux

Iptables — это прикладная программа пользователя, которая позволяет настраивать брандмауэр (Netfilter), предоставляемый ядром Linux. Используйте брандмауэр для фильтрации трафика и разрешения только необходимого трафика. Также используйте TCPWrappers — сетевую ACL-систему на базе хоста для фильтрации сетевого доступа в Интернет. С помощью Iptables можно предотвратить множество атак типа «отказ в обслуживании»:

20: Усиление ядра Linux /etc/sysctl.conf

Файл /etc/sysctl.conf используется для настройки параметров ядра во время выполнения. Linux считывает и применяет настройки из /etc/sysctl.conf во время загрузки. Пример /etc/sysctl.conf:

# Turn on execshield
kernel.exec-shield=1
kernel.randomize_va_space=1
# Enable IP spoofing protection
net.ipv4.conf.all.rp_filter=1
# Disable IP source routing
net.ipv4.conf.all.accept_source_route=0
# Ignoring broadcasts request
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.icmp_ignore_bogus_error_messages=1
# Make sure spoofed packets get logged
net.ipv4.conf.all.log_martians = 1

21. Отдельные разделы диска для системы Linux

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

  • /usr
  • /home
  • /var and /var/tmp
  • /tmp

Создайте отдельные разделы для Apache и FTP-сервера. Отредактируйте файл /etc/fstab и убедитесь, что вы добавили следующие параметры конфигурации:

noexec — Не устанавливать выполнение любых двоичных файлов на этом разделе (предотвращает выполнение двоичных файлов, но разрешает скрипты).
nodev — Не разрешать символьные или специальные устройства на этом разделе (предотвращает использование файлов устройств, таких как zero, sda и т.д.).
nosuid — Не устанавливать SUID/SGID доступ на этом разделе (предотвращает бит setuid).

Образец записи /etc/fstab для ограничения доступа пользователей к /dev/sda5 (корневой каталог ftp-сервера):

/dev/sda5  /ftpdata          ext3    defaults,nosuid,nodev,noexec 1 2

22. Дисковые квоты

Убедитесь, что дисковые квоты включены для всех пользователей. Чтобы внедрить дисковые квоты, выполните следующие действия:

  • Включите квоты для каждой файловой системы, изменив файл /etc/fstab.
  • Перемонтируйте файловую систему (системы).
  • Создайте файлы базы данных квот и сформируйте таблицу использования дисков.
  • Назначьте политики квот.

23. Выключайте IPv6 только в том случае, если вы НЕ используете его в Linux

Протокол Интернета версии 6 (IPv6) представляет собой новый уровень Интернета в наборе протоколов TCP/IP, который заменяет протокол Интернета версии 4 (IPv4) и предоставляет множество преимуществ. Если вы НЕ используете IPv6, отключите его:

24. Отключение нежелательных бинарных файлов SUID и SGID

Все файлы с поддержкой битов SUID/SGID могут быть использованы не по назначению, если исполняемый файл SUID/SGID имеет проблему безопасности или ошибку. Все локальные или удаленные пользователи могут использовать такой файл. Хорошей идеей будет найти все такие файлы. Используйте команду find следующим образом:

#See all set user id files:
find / -perm +4000
# See all group id files
find / -perm +2000
# Or combine both in a single command
find / \( -perm -4000 -o -perm -2000 \) -print
find / -path -prune -o -type f -perm +6000 -ls

Вам необходимо исследовать каждый отчетный файл. Более подробную информацию см. на странице man файла.

25: Файлы с возможностью записи из вне на сервере Linux

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

find /dir -xdev -type d \( -perm -0002 -a ! -perm -1000 \) -print

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

26. Файлы, не принадлежащие пользователям

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

find /dir -xdev \( -nouser -o -nogroup \) -print

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

27. Используйте централизованную службу аутентификации

Без централизованной системы аутентификации данные аутентификации пользователей становятся непоследовательными, что может привести к устаревшим учетным данным и забытым учетным записям, которые должны были быть удалены в первую очередь. Централизованная служба аутентификации позволяет вам поддерживать централизованный контроль над учетными записями Linux / UNIX и данными аутентификации. Вы можете синхронизировать данные аутентификации между серверами. Не используйте службу NIS для централизованной аутентификации. Используйте OpenLDAP для клиентов и серверов.

28. Kerberos

Kerberos выполняет аутентификацию как служба аутентификации доверенной третьей стороны, используя криптографический общий ключ (shared secret) в предположении, что пакеты, путешествующие по незащищенной сети, могут быть прочитаны, изменены и вставлены. Kerberos основан на симметричной ключевой криптографии и требует наличия центра распределения ключей. С помощью Kerberos можно сделать удаленный вход в систему, удаленное копирование, безопасное межсистемное копирование файлов и другие задачи с высоким риском более безопасными и контролируемыми. Таким образом, когда пользователи аутентифицируются в сетевых службах с помощью Kerberos, попытки неавторизованных пользователей подобрать пароли путем мониторинга сетевого трафика эффективно пресекаются. Узнайте, как настроить и использовать Kerberos.

29. Логирование и аудит

Вам необходимо настроить протоколирование и аудит для сбора всех попыток взлома и взлома. По умолчанию syslog хранит данные в каталоге /var/log/. Это также полезно для обнаружения неправильной конфигурации программного обеспечения, которая может открыть вашу систему для различных атак.

30. Отслеживание подозрительных событий в журнале с помощью команды Logwatch / Logcheck

Читайте журналы с помощью команды logwatch (logcheck). Эти инструменты облегчают жизнь при чтении журналов. Вы получаете подробные отчеты о необычных элементах в syslog по электронной почте. Пример отчета syslog:

################### Logwatch 7.3 (03/24/06) ####################
        Processing Initiated: Fri Oct 30 04:02:03 2009
        Date Range Processed: yesterday
                              ( 2009-Oct-29 )
                              Period is day.
      Detail Level of Output: 0
              Type of Output: unformatted
           Logfiles for Host: www-52.nixcraft.net.in
  ##################################################################

 --------------------- Named Begin ------------------------

 **Unmatched Entries**
    general: info: zone XXXXXX.com/IN: Transfer started.: 3 Time(s)
    general: info: zone XXXXXX.com/IN: refresh: retry limit for master ttttttttttttttttttt#53 exceeded (source ::#0): 3 Time(s)
    general: info: zone XXXXXX.com/IN: Transfer started.: 4 Time(s)
    general: info: zone XXXXXX.com/IN: refresh: retry limit for master ttttttttttttttttttt#53 exceeded (source ::#0): 4 Time(s)

 ---------------------- Named End -------------------------

  --------------------- iptables firewall Begin ------------------------

 Logged 87 packets on interface eth0
   From 58.y.xxx.ww - 1 packet to tcp(8080)
   From 59.www.zzz.yyy - 1 packet to tcp(22)
   From 60.32.nnn.yyy - 2 packets to tcp(45633)
   From 222.xxx.ttt.zz - 5 packets to tcp(8000,8080,8800)

 ---------------------- iptables firewall End -------------------------

 --------------------- SSHD Begin ------------------------

 Users logging in through sshd:
    root:
       123.xxx.ttt.zzz: 6 times

 ---------------------- SSHD End -------------------------

 --------------------- Disk Space Begin ------------------------

 Filesystem            Size  Used Avail Use% Mounted on
 /dev/sda3             450G  185G  241G  44% /
 /dev/sda1              99M   35M   60M  37% /boot

 ---------------------- Disk Space End -------------------------

 ###################### Logwatch End #########################

31. Системный учет с помощью auditd

Для системного аудита предусмотрен auditd. Он отвечает за запись аудита на диск. Во время запуска этот демон считывает правила из файла /etc/audit.rules. Вы можете открыть файл /etc/audit.rules и внести в него изменения, например, установить местоположение журнала файла аудита и другие параметры. С помощью auditd вы можете ответить на следующие вопросы:

  1. События запуска и выключения системы (перезагрузка / остановка).
  2. Дата и время события.
  3. Пользователь, отвечающий за событие (например, попытка доступа к файлу /path/to/topsecret.dat).
  4. Тип события (редактирование, доступ, удаление, запись, обновление файла и команды).
  5. Успех или неудача события.
  6. Регистрирует события, которые изменяют дату и время.
  7. Выясняют, кто внес изменения для модификации сетевых настроек системы.
  8. Регистрирует события, которые изменяют информацию о пользователе/группе.
  9. Узнать, кто внес изменения в файл и т.д.

32. Безопасный сервер OpenSSH

Протокол SSH рекомендуется для удаленного входа в систему и удаленной передачи файлов. Однако ssh открыт для многих атак.

33. Установка и использование системы обнаружения вторжений

Система обнаружения вторжений в сеть (NIDS) — это система обнаружения вторжений, которая пытается обнаружить вредоносную активность, такую как атаки типа «отказ в обслуживании», сканирование портов или даже попытки взлома компьютеров путем мониторинга сетевого трафика.

Хорошей практикой является развертывание любого программного обеспечения для проверки целостности перед запуском системы в производственной среде. Если возможно, установите программное обеспечение AIDE до того, как система будет подключена к сети. AIDE — это система обнаружения вторжений на базе хоста (HIDS), которая может отслеживать и анализировать внутренние компоненты вычислительной системы. Я рекомендую вам также установить и использовать программу rkhunter для обнаружения root kit.

34. Отключение устройств USB/firewire/thunderbolt

Введите следующую команду, чтобы отключить USB-устройства в системе Linux:

# echo 'install usb-storage /bin/true' >> /etc/modprobe.d/disable-usb-storage.conf

Тот же метод можно использовать для отключения модулей firewire и thunderbolt:

# echo "blacklist firewire-core" >> /etc/modprobe.d/firewire.conf
# echo "blacklist thunderbolt" >> /etc/modprobe.d/thunderbolt.conf

После этого пользователи не смогут быстро скопировать конфиденциальные данные на USB-устройства или установить вредоносные программы/вирусы или бэкдор на вашу систему на базе Linux.

35. Отключение неиспользуемых служб

Вы можете отключить неиспользуемые службы с помощью команды service command/systemctl command:

$ sudo systemctl stop service
$ sudo systemctl disable service

Например, если вы не собираетесь использовать службу Nginx в течение некоторого времени, отключите ее:

$ sudo systemctl stop nginx
$ sudo systemctl disable nginx

36. Используйте fail2ban/denyhost в качестве IDS (установите систему обнаружения вторжений)

Fail2ban или denyhost сканирует файлы журнала на предмет слишком большого количества неудачных попыток входа и блокирует IP-адрес, который проявляет признаки вредоносности. Посмотрите, как установить и использовать denyhost для Linux. Можно легко установить fail2ban:

$ sudo apt-get install fail2ban

или

$ sudo yum install fail2ban

Отредактируйте файл конфигурации в соответствии с вашими потребностями:

$ sudo vi /etc/fail2ban/jail.conf

Перезапустите службу:

$ sudo systemctl restart fail2ban.service

37. Защита сервера Apache/PHP/Nginx

Отредактируйте файл httpd.conf и добавьте следующее:

ServerTokens Prod
ServerSignature Off
TraceEnable Off
Options all -Indexes
Header always unset X-Powered-By

Перезапустите сервер httpd/apache2 в Linux, выполните:

$ sudo systemctl restart apache2.service

или

$ sudo systemctl restart httpd.service

38. Защита файлов, каталогов и электронной почты

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

  • Чтобы зашифровать и расшифровать файлы с помощью пароля, используйте команду gpg.
  • В Linux или UNIX файлы защищаются паролем с помощью openssl и других инструментов.
  • Полное шифрование диска является обязательным условием защиты данных и поддерживается большинством дистрибутивов Linux. Посмотрите, как зашифровать жесткий диск с помощью LUKS в Linux. Убедитесь, что своп также зашифрован.
  • Требуйте пароль для редактирования загрузчика.
  • Убедитесь, что почта root пересылается на проверяемую учетную запись.
  • Howto: Шифрование дисков и разделов в Linux для мобильных устройств.
  • Linux Защита сервера Dovecot IMAPS / POP3S с настройкой SSL.
  • Linux Postfix SMTP (почтовый сервер) Установка и настройка SSL-сертификата.
  • Установка и настройка SSL-сертификата сервера Courier IMAP.
  • Настройка SSL-шифрования Sendmail для отправки и получения электронной почты.

39. Резервные копии

Невозможно передать словами, насколько важно создавать резервные копии вашей Linux-системы. Правильное резервное копирование вне офиса позволит вам восстановиться после взлома сервера, т.е. вторжения. Рекомендуется также использовать традиционные программы резервного копирования UNIX — dump и restore. Вы должны настроить зашифрованное резервное копирование на внешнее хранилище, такое как NAS-сервер или сервер FreeNAS, или использовать облачные вычисления, такие как AWS.