Як посилити сервер Ubuntu 18.04 за 5 простих кроків
Linux добре відомий як один із найбезпечніших операційні системи доступний. Але це не означає, що ви можете розраховувати, що він буде максимально безпечним прямо з коробки. Є кілька швидких і простих кроків, які ви можете зробити, щоб ваша платформа стала ще більш безпечною.
Ось п’ять завдань, що підвищують безпеку, які потрібно виконати на щойно встановленій платформі Ubuntu Server 18.04.
Безпечна спільна пам'ять
Одне з перших речей, які ви повинні зробити, це захистити спільне пам'ять використовується в системі. Якщо ви не знаєте, спільну пам’ять можна використовувати для атаки на запущену службу. Через це захистіть цю частину системної пам’яті. Ви можете зробити це, змінивши /etc/fstab файл. Ось як:
-
Відкрийте файл для редагування, виконавши команду:
sudo nano /etc/fstab
-
Додайте наступний рядок у нижню частину цього файлу:
tmpfs /run/shm tmpfs за замовчуванням, noexec, nosuid 0 0
Збережіть і закрийте файл.
-
Щоб зміни набули чинності, перезавантажте сервер за допомогою цієї команди:
перезавантаження sudo
Увімкнути вхід SSH лише для певних користувачів
Використовуйте інструмент Secure Shell (SSH), щоб увійти на віддалені сервери Linux. Хоча SSH є досить безпечним за замовчуванням, ви можете зробити його більш безпечним, увімкнувши вхід SSH лише для певних користувачів, наприклад, якщо ви хочете дозволити вхід SSH лише для користувача Джек, з IP-адреси 192.168.1.162.
Ось як це зробити:
Відкрийте вікно терміналу.
-
Відкрийте файл конфігурації SSH для редагування за допомогою цієї команди:
sudo nano /etc/ssh/sshd_config
-
У нижній частині файлу додайте рядок:
AllowUsers [email protected]
Збережіть і закрийте файл.
-
Перезапустіть sshd за допомогою цієї команди:
sudo systemctl перезавантажте sshd
Secure Shell тепер дозволить вхід лише користувачеві Джек з IP-адреси 192.168.1.162. Якщо користувач не є Джек спроби SSH на сервер, їм буде запропоновано ввести пароль, але пароль не буде прийнятий (незалежно від того, чи він правильний), і вхід буде заборонено.
Ви можете використовувати символи підстановки, наприклад, для надання доступу всім користувачам з певної IP-адреси. Якщо ви хочете дозволити всім користувачам вашої локальної мережі доступ до сервера через SSH, додайте наступний рядок:
AllowUsers *@192.168.1.*
Перезапустіть SSH-сервер, і все готово.
Включіть банер для входу в систему безпеки
Хоча додавання банера безпеки для входу може здатися не найефективнішим заходом безпеки, воно має переваги. Наприклад, якщо небажаний користувач отримує доступ до вашого сервера, і якщо він бачить, що ви включили конкретні інформацію в банері входу (попереджаючи їх про наслідки їхніх дій), вони можуть двічі подумати продовження. Ось як це налаштувати:
Відкрийте а вікно терміналу.
-
Видати команду:
sudo nano /etc/issue.net
Відредагуйте файл, щоб додати відповідне попередження.
Збережіть і закрийте файл.
-
Вимкніть банерне повідомлення з Message Of The Day (motd). Відкрийте термінал і введіть команду:
sudo nano /etc/pam.d/sshd
-
Коли цей файл відкритий для редагування, прокоментуйте наступні два рядки (додавши a # до початку кожного рядка):
сеанс необов'язковий pam_motd.so motd=/run/motd.dynamic
сеанс необов'язковий pam_motd.so noupdate -
Далі відкрийте /etc/ssh/sshd_config з командою:
sudo nano /etc/ssh/sshd_config
-
Розкоментуйте рядок (видаліть # символ):
Банер /etc/issue.net
Збережіть і закрийте цей файл.
-
Перезапустіть SSH-сервер за допомогою команди:
sudo systemctl перезавантажте sshd
-
Коли хтось входить на ваш сервер за допомогою SSH, він бачить ваш нещодавно доданий банер, який попереджає про будь-які наслідки подальших дій.
Обмежити доступ до SU
Якщо не налаштовано інше, користувачі Linux можуть використовувати команда su змінити на іншого користувача. Коли вони це роблять, вони отримують привілеї, надані цьому іншому користувачеві. Отже, якщо користувач А (який має обмежений доступ до сервера) використовує су змінити на користувача Б (який має менш обмежений доступ до сервера), користувач А тепер є користувачем Б і може зробити більше для сервера. Через це вимкніть доступ до команди su. Ось як:
-
Створіть нову групу адміністратора на сервері за допомогою цієї команди:
sudo groupДодати адміністратора
-
Додайте користувачів до цієї групи, наприклад, щоб додати користувача Джек до групи. Команда для цього:
sudo usermod -a -G роз'єм адміністратора
Якщо ви ввійшли як користувач Джек, вийдіть і знову ввійдіть, щоб зміни вступили в силу.
-
Надайте доступ до команди su групі адміністраторів за допомогою команди:
sudo dpkg-statoverride --update --додати root admin 4750 /bin/su
-
Якщо ви входите на свій сервер Ubuntu як користувач Джек і спробуйте використати команду su для переходу до іншого користувача, це дозволено, оскільки Джек є членом адмін. Іншим користувачам заборонено доступ до команди su.
Встановити fail2ban
Fail2ban — це система запобігання вторгненню, яка відстежує файли журналів і шукає певні шаблони, які відповідають невдалій спробі входу. Якщо з певної IP-адреси (протягом визначеного часу) виявлено певну кількість невдалих входу в систему, fail2ban блокує доступ з цієї IP-адреси.
Ось як встановити fail2ban:
-
Відкрийте вікно терміналу та введіть таку команду:
sudo apt-get install fail2ban
-
Довідник /etc/fail2ban містить основний конфігураційний файл, jail.conf. Також у цьому каталозі є підкаталог, jail.d. The jail.conf файл є основним конфігураційним файлом і jail.d містить додаткові файли конфігурації. Не редагувати jail.conf файл. Замість цього створіть нову конфігурацію, яка відстежує вхід по SSH. Введіть таку команду:
sudo nano /etc/fail2ban/jail.local
-
До цього нового файлу додайте такий вміст:
[sshd]
увімкнено = правда
порт = 22
фільтр = sshd
logpath = /var/log/auth.log
maxretry = 3Ця конфігурація дозволяє в’язниці, встановлює порт SSH для моніторингу на 22, використовує фільтр sshd і встановлює файл журналу для моніторингу.
Збережіть і закрийте цей файл.
-
Перезапустіть fail2ban командою:
sudo systemctl перезапустити fail2ban
-
Якщо ви спробуєте захистити оболонку на цьому сервері та тричі не ввійдете в систему (встановлено за замовчуванням у fail2ban), доступ блокується з IP-адреса ви працюєте з.