Обеспечение простого Linux-сервера, который содержит базу данных MySQL?

Начальный вопрос, но я просмотрел множество вопросов на этом сайте и не нашел простого, простого ответа:

Я создаю Linux-сервер под управлением Ubuntu для хранения базы данных MySQL.

Важно, чтобы этот сервер был максимально безопасным, насколько я знаю, мои основные проблемы – это входящие атаки DoS / DDoS и несанкционированный доступ к самому серверу.

Сервер базы данных получает только входящие данные от одного конкретного IP (101.432.XX.XX), на порт 3000. Я хочу, чтобы этот сервер мог получать входящие запросы с этого IP-адреса, а также не позволял серверу делать какие-либо исходящие запросы ,

Я хотел бы знать:

  1. Каков наилучший способ запретить моему серверу базы данных делать исходящие запросы и получать входящие запросы исключительно из 101.432.XX.XX? Закрыл бы все порты ex. 3000 быть полезным в достижении этого?
  2. Есть ли какие-либо другие дополнения к среде linux, которые могут повысить безопасность? Я предпринял очень простые шаги для защиты моего портала phpmyadmin (связанного с базой данных MySQL), например, ограничения доступа только к моему личному IP-адресу. Для доступа к серверу базы данных требуется ключ SSH (который сам защищен паролем).

Для закрытия всех нежелательных входящих и исходящих подключений вы можете использовать iptables в качестве брандмауэра для выполнения задания, вот пример:

 # To make sure that you have ssh access to the server iptables -t filter -A INPUT -p tcp -s 101.432.XX.XX --dport 22 -j ACCEPT # Allowing only your ip to connect to the server via specific port iptables -t filter -A INPUT -p tcp -s 101.432.XX.XX --dport 3000 -j ACCEPT # Drop any other requests iptables -t filter -A INPUT -j DROP 

Это был всего лишь пример, вы можете сделать почти все, что хотите, с помощью iptables для обеспечения безопасности.

Для защиты вашего сервера от DoS/DDoS я бы рекомендовал csf в качестве средства межсетевого экрана, он может обеспечить вам хорошую защиту от различных типов атак, для получения дополнительной информации о csf проверьте это: https://download.configserver.com/csf /readme.txt

Некоторые установки также предлагают инструмент для «упрочнения» db:

 sudo mysql_secure_installation 

Это позволит вам установить новый пароль root, удалить анонимных пользователей, запретить удаленный вход в root и многое другое.