Каталог статей
Останні HestiaCP Цей повний посібник із встановлення Adminer включає розгортання одним клацанням миші, посилення безпеки та автоматизовані кроки налаштування. Він крок за кроком навчить вас розгортати інструменти керування базами даних та захищати ваш сервер, що полегшить початківцям швидкий початок роботи та вирішить проблемні моменти експлуатації та обслуговування HestiaCP + Adminer.
Якщо ви все ще використовуєте інструменти керування базами даних без будь-якого захисту, ви передаєте ключі хакерам.
Чому варто обрати Adminer, а не... PHPMYADMIN?
Adminer складається з одного PHP-файлу розміром менше 1 МБ, що робить розгортання надзвичайно простим, швидким та ресурсоефективним.
Порівняно зі складною структурою phpMyAdmin, Adminer більше підходить для VPS, невеликих вебсайтів та особистих проектів.

Кроки для встановлення Адміністратора в HestiaCP
1. Завантажте файл адміністратора
Йти до Офіційний веб-сайт адміністратора Завантажте останню версію adminer.php.
Завантажте файл до каталогу веб-сайту HestiaCP, наприклад:
/home/username/web/adminer.domain.com/public_html/adminer.php
2. Створіть піддомен і ввімкніть SSL.
Додайте субдомен на панелі HestiaCP adminer.domain.comУвімкніть Let's Encrypt SSL для забезпечення безпечної передачі.
3. Налаштуйте захист паролем Nginx
Додайте наступний код до файлу конфігурації Nginx для піддомену:
location / {
auth_basic "Restricted Area";
auth_basic_user_file /etc/nginx/.htpasswd;
root /home/username/web/adminer.domain.com/public_html;
index index.php adminer.php;
}
Згенерувати файл паролів:
sudo apt-get install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd adminuser
Під час доступу до адміністратора з’явиться діалогове вікно пароля, і ви зможете увійти, лише ввівши правильне ім’я користувача та пароль.
Автоматичне оновлення файлів адміністратора
Щоб уникнути ризиків безпеки, пов'язаних з використанням старіших версій, автоматичні оновлення можна виконати за допомогою скриптів оболонки та запланованих завдань Cron.
Приклад сценарію оновлення
#!/bin/bash
URL="https://www.adminer.org/latest.php"
TARGET="/home/username/web/adminer.domain.com/public_html/adminer.php"
wget -q -O "$TARGET" "$URL"
chown username:username "$TARGET"
chmod 644 "$TARGET"
Зберегти як /usr/local/bin/update-adminer.shІ додайте заплановане завдання:
crontab -e
0 3 * * 1 /usr/local/bin/update-adminer.sh
Таким чином, файл адміністратора автоматично оновлюватиметься щопонеділка о 3:00.
Fail2Ban атака методом грубої сили
Проста базова автентифікація вразлива до атак методом перебору, тоді як Fail2Ban може автоматично блокувати шкідливі IP-адреси.
Конфігурація фільтра
документ:/etc/fail2ban/filter.d/nginx-adminer.conf
[Definition]
failregex = ^<HOST> - .* "GET /adminer.php HTTP/.*" 401
ignoreregex =
Конфігурація в'язниці (поступове збільшення тривалості заборони)
документ:/etc/fail2ban/jail.local
[nginx-adminer]
enabled = true
filter = nginx-adminer
port = http,https
logpath = /var/log/nginx/access.log
maxretry = 3
findtime = 600
bantime.increment = true
bantime.rndtime = 60
bantime.factor = 2
bantime = 600
Ефект: Перша заборона діє 10 хвилин, друга – 20 хвилин, третя – 40 хвилин і так далі. Постійні атаки будуть банені на дедалі довші періоди.
Завершіть сценарій розгортання одним клацанням миші
Зберегти як /usr/local/bin/setup-fail2ban-adminer.sh:
#!/bin/bash
FILTER_PATH="/etc/fail2ban/filter.d/nginx-adminer.conf"
JAIL_PATH="/etc/fail2ban/jail.local"
cat > $FILTER_PATH << 'EOF'
[Definition]
failregex = ^<HOST> - .* "GET /adminer.php HTTP/.*" 401
ignoreregex =
EOF
cat >> $JAIL_PATH << 'EOF'
[nginx-adminer]
enabled = true
filter = nginx-adminer
port = http,https
logpath = /var/log/nginx/access.log
maxretry = 3
findtime = 600
bantime.increment = true
bantime.rndtime = 60
bantime.factor = 2
bantime = 600
EOF
systemctl restart fail2ban
fail2ban-client status nginx-adminer
реалізувати:
sudo chmod +x /usr/local/bin/setup-fail2ban-adminer.sh
sudo /usr/local/bin/setup-fail2ban-adminer.sh
Висновок: Балансування безпеки та ефективності
Я твердо переконаний, що інструменти керування базами даних – це не те, що можна просто залишити в загальнодоступному інтернеті та використовувати зі спокійною душею. Легкий дизайн Adminer привабливий, але заходи безпеки повинні йти в ногу з часом. Захист паролем – це перша лінія захисту, автоматичні оновлення забезпечують постійний захист, а Fail2Ban пропонує інтелектуальні контрзаходи. Тільки поєднавши ці три елементи, можна створити середовище керування базами даних, яке є одночасно ефективним та безпечним.
Справжній майстер — це не той, хто знає лише, як виготовляти інструменти, а той, хто знає, як їх захищати.
Блог Hope Chen Weiliang ( https://www.chenweiliang.com/ Стаття «Встановлення адміністратора HestiaCP: налаштування автоматизації безпеки + оптимізація управління базами даних», представлена тут, може бути вам корисною.
Ласкаво просимо поділитися посиланням на цю статтю:https://www.chenweiliang.com/cwl-34018.html
