Усиление защиты – это процесс уменьшения уязвимостей и защиты системы от возможных точек атаки. Уменьшение уязвимостей включает в себя удаление ненужных сервисов, имен пользователей и логинов, а также отключение ненужных портов. В этой статье мы покажем вам, как можно усилить защиту сервера Ubuntu.
Требования
Сервер Ubuntu 14.04 LTS с установленным Open SSH.
Начало работы: обновите систему
Поддерживать актуальность системы необходимо после установки любой операционной системы. Это уменьшит количество известных уяз
Contents
- Начало работы: обновите систему_1">1 Требования
- 2 Начало работы: обновите систему
- 3 Включить автоматические обновления безопасности
- 4 Создайте «теневого пользователя» с помощью sudo
- 5 Отключить учетную запись root
- 6 Добавить раздел SWAP
- 7 Улучшить производительность SWAP
- 8 Отключить IPv6
- 9 Отключить IRQBALANCE
- 10 Исправить ошибку OpenSSL Heartbleed
- 11 Защитите консоль, общую память, /tmp и /var/tmp
- 12 Установить ограничения безопасности и отключить нежелательные сервисы
- 13 Исправить уязвимость Shellshock Bash:
- 14 Вывод:
Требования
стеме.Для Ubuntu 14.04 выполните следующее:
sudo apt-get update sudo apt-get upgrade sudo apt-get autoremove sudo apt-get autoclean
Включить автоматические обновления безопасности
Включение автоматических обновлений может быть очень важно для защиты вашего сервера. Чтобы установить «автоматические обновления», запустите
sudo apt-get install unattended-upgrades
Чтобы включить его, выполните следующую команду:
sudo dpkg-reconfigure -plow unattended-upgrades
При этом будет создан файл «/etc/apt/apt.conf.d/20auto-upgrades», показанный ниже.
APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Unattended-Upgrade "1";
Создайте «теневого пользователя» с помощью sudo
Использование «теневого пользователя» вместо учетной записи root необходимо из соображений безопасности. Вы можете создать пользователя, о котором другим пользователям будет
Включить автоматические обновления безопасности
maketech111 в качестве имени пользователя.Чтобы создать пользователя, выполните следующую команду:
sudo useradd -d /home/maketech111 -s /bin/bash -m maketech111
Чтобы предоставить пользователю доступ к sudo, выполните следующую команду:
sudo usermod -a -G sudo maketech111
Чтобы установить пароль, выполните следующую команду:
sudo passwd maketech111
Примечание. Убедитесь, что ваш пароль имеет длину не менее восьми символов и содержит сложную комбинацию цифр, букв и знаков препинания.
Чтобы удалить запрос пароля для
Создайте «теневого пользователя» с помощью sudo
>sudo nano /etc/sudoersДобавьте/измените, как описано ниже.
maketech111 ALL=(ALL) NOPASSWD: ALL
Сохраните файл и выйдите.
Отключить учетную запись root
Отключение учетной записи root необходимо из соображений безопасности.
Чтобы отключить учетную запись root, используйте следующую команду:
sudo passwd -l root
Если вам нужно повторно включить учетную запись, выполните следующую команду:
sudo passwd -u root
Добавить раздел SWAP
Некоторые серверы Ubuntu не настроены с МЕНЯТЬ . SWAP используется, когда объем общей физической памяти (ОЗУ) заполнен.
Чтобы проверить наличие места SWAP, выполните следующую команду:
sudo swapon -s
Если файла SWAP нет, вы должны получить следующий результат.
Filename Type Size Used Priority
Чтобы создать файл SWAP размером 4 ГБ, вам потребуется использовать команду «dd».
sudo dd if=/dev/zero of=/swapfile bs=4M count=1000
Чтобы настроить файл SWAP, выполните следующую команду:
sudo mkswap /swapfile
Чтобы активировать файл подкачки, запустите
sudo swapon /swapfile sudo swapon -s
Это будет выглядеть следующим образом:
Filename Type Size Used Priority /swapfile file<Отключить учетную запись root
0 -1
Чтобы включить его навсегда, отредактируйте файл «/etc/fstab».
sudo nano /etc/fstab
Добавьте следующую строку:
/swapfile swap swap defaults 0 0
Улучшить производительность SWAP
Установите правильное значение изменчивость , чтобы улучшить общую производит
Добавить раздел SWAP
ожете сделать это с помощью следующей команды:sudo echo 0 >> /proc/sys/vm/swappiness sudo echo vm.swappiness = 0 >> /etc/sysctl.conf
Перезагрузите систему, чтобы проверить, правильно ли активируется SWAP.
Отключить IPv6
Рекомендуется отключить IPv6, поскольку это приводит к проблемам с медленным подключением к Интернету.
Чтобы отключить IPv6, отредактируйте файл «/etc/sysctl.conf».
sudo nano /etc/sysctl.conf
Отредактируйте, как описано ниже:
net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1
Чтобы перезагрузить конфигурацию, запустите
sudo sysctl -p
Отключить IRQBALANCE
IRQBALANCE используется для распределения аппаратных прерываний между несколькими процессорами для повышения производительности системы. Рекомендуется отключить IRQBALANCE, чтобы избежать аппаратных прерываний в ваших потоках.
Чтобы отключить IRQBALANCE, отредактируйте «/etc/default/irqbalance»
sudo nano /etc/default/irqbalance
и измените значение ENABLED на 0:
ENABLED=0
Исправить ошибку OpenSSL Heartbleed
Сердцекровие — это серьезная уязвимость в OpenSSL. Это позволяет удаленному пользователю осуществлять утечку памяти частями размером до 64 КБ. Хакеры могут затем получить закрытые ключи для расшифровки любых данных, таких как имя пользователя и пароли.
Ошибка Heartbleed была обнаружена в OpenSSL 1.0.1 и присутствует в следующих версиях:
- 1.0.1
- 1.0.1a <
- 1.0.1e
- 1.0.1f
Улучшить производительность SWAP
Чтобы проверить версию OpenSSL в вашей системе, выполните следующие команды:
sudo openssl version -v sudo openssl version -b
Это выведет что-то вроде следующего:
OpenSSL 1.0.1 10 Mar 2012 built on: Wed Jan 2 18:45:51 UTC 2015
Если дата старше «Пн 7 апреля 20:33:29 UTC 2014» и версия «1.0.1», то ваша система уязвима для ошибки Heartbleed.
Чтобы исправить эту ошибку, обновите OpenSSL до последней версии и запустите
sudo apt-get update sudo apt-get upgrade openssl libssl-dev sudo apt-cache policy openssl libssl-deОтключить IPv6
ь проверьте версию и запуститеsudo openssl version -bЭто выведет что-то вроде следующего:
built on: Mon Apr 7 20:31:55 UTC 2014Защитите консоль, общую память, /tmp и /var/tmp
Защитите консоль
По умолчанию в вашей системе включено множество терминалов. Вы можете разрешить только один терминал и отключить остальные терминалы.
Чтобы разрешить только «tty1» и отключить другие терминалы, отредактируйте файл «/etc/securetty».
sudo nano /etc/securettyДобавьте/измените следующие строки:
tty1 #tty2Отключить IRQBALANCE
pan>#tty4 # etc ...Чтобы защитить файл «/etc/securetty», измените права доступа к файлу и выполните следующие команды:
sudo chown root:root /etc/securetty sudo chmod 0600 /etc/securettyЗащита общей памяти
Любой пользователь может использовать общую память для атаки на работающую службу, например Apache или httpd. По умолчанию общая память подключена для чтения/записи с разрешением на выполнение.
Чтобы повысить безопасность, отредактируйте файл «/etc/fstab».
sudo nano /etc/fstabИсправить ошибку OpenSSL Heartbleed
iv>tmpfs /run/shm tmpfs ro,noexec,nosuid 0 0Чтобы внести изменения без перезагрузки, можно запустить
sudo mount -aЗащитить /tmp и /var/tmp
Временные каталоги, такие как /tmp, /var/tmp и /dev/shm, открывают злоумышленникам возможность предоставить место для запуска сценариев и вредоносных исполняемых файлов.
Безопасная папка /tmp
Создайте файл файловой системы размером 1 ГБ для раздела /tmp.
sudo dd if=/dev/zero of=/usr/tmpDSK bs=1024 count=1024000 sudo mkfs.ext4 /usr/tmpDSKСоздать резервную копию текущей папки /tmp:
sudo cp -avr /tmp /tmpbackupСмонтируйте новый раздел /tmp и установите правильные разрешения.
sudo mount -t tmpfs -o loop,noexec,nosuid,rw /usr/tmpDSK /tmp sudo chmod 1777 /tmpСкопируйте данные из папки резервной копии и удалите папку резервной копии.
sudo cp -avr /tmpbackup/* /tmp/ sudo rm -rf /tmpbackupУстановите /tmp на вкладке fbtab.
sudo nano /etc/fstabДобавьте следующую строку:
/usr/tmpDSK /tmp tmpfs loop,nosuid,noexec,rw 0 0Проверьте свою запись в fstab.
sudo mount -aБезопасный /var/tmp:
Некоторые программы используют эту папку как временную, поэтому ее также следует защитить.
Чтобы защитить /var/tmp, с
Защитите консоль, общую память, /tmp и /var/tmp
Защитите консоль
sudo mv /var/tmp /var/tmpold sudo ln -s /tmp /var/tmp sudo cp -avr /var/tmpold/* /tmp/Установить ограничения безопасности и отключить нежелательные сервисы
Установить ограничения безопасности
Чтобы защитить вашу систему от атак с помощью форк-бомбы, вам следует установить ограничение процессов для ваших пользователей.
Чтобы настроить это, отредактируйте файл «/etc/security/limits.conf»,
sudo nano /etc/security/limits.confи отредактируйте следующую строку:
user1 hard nproc 100 @group1 hard nproc 20Это позволит пользователям определенной группы не иметь максимум двадцати процессов и максимально увеличить количество процессов до с
Защита общей памяти
p>Отключите ненужные службы
Множество служб в Ubuntu занимают память и дисковое пространство, которые могут вам понадобиться. Отключение или удаление ненужных служб может улучшить общую производительность системы.
Чтобы узнать, какие службы запущены в данный момент, выполните следующую команду:
sudo initctl list | grep runningВы можете отключить его, выполнив эту команду.
sudo update-rc.d -f service_name remove sudo apt-get purge service_nameИсправить уязвимость Shellshock Bash:
Уязвимость Shellshock позволяет хакерам назначать переменные среды Bash и получать несанкционированный доступ к системе. Эту уязвимость очень легко использовать.
Чтобы проверить уязвимость системы, выполните следующую команду:
sudo env i='() { :;Защитить /tmp и /var/tmp
rable' bash -c "echo Bash vulnerability test"Если вы видите приведенный ниже вывод, это означает, что ваша система уязвима.
Your system is Bash vulnerable Bash vulnerability test
Чтобы устранить эту уязвимость, выполните следующую команду:
sudo apt-get update ; sudo apt-get install --only-upgrade bashЕсли вы запустите команду еще раз, вы увидите:
bash: warning: VAR: ignoring function definition attempt bash: error importing function definition for `VAR' Bash vulnerability testВывод:
Здесь мы объяснили основные вещи, которые вы можете сделать, чтобы усилить защиту Ubuntu. Теперь у вас должно быть достаточное представление об основных методах обеспечения безопасности, которые вы можете реализовать на своем сервере Ubuntu. Надеюсь, что этот пост будет вам полезен.
Ссылка : Руководство по усилению защиты Ubuntu
Установить ограничения безопасности и отключить нежелательные сервисы
Установить ограничения безопасности
Отключите ненужные службы
Исправить уязвимость Shellshock Bash:
Вывод: