Straipsnių katalogas
Naujausiame išsamiame „Adminer“ diegimo „HestiaCP“ sistemoje vadove pateikiami diegimo vienu spustelėjimu, saugumo stiprinimo ir automatizuoto konfigūravimo veiksmai. Jame nuosekliai mokoma, kaip diegti duomenų bazių valdymo įrankius ir apsaugoti serverį, todėl net pradedantieji gali greitai pradėti ir išspręsti „HestiaCP“ + „Adminer“ valdymo ir priežiūros problemas.
Jei vis dar naudojate duomenų bazių valdymo įrankius be jokios apsaugos, raktus perduodate įsilaužėliams.
Kodėl verta rinktis „Admin“, o ne... phpMyAdmin?
„Adminier“ sudaro vienas PHP failas, mažesnis nei 1 MB, todėl diegimas yra itin paprastas, greitas ir taupiai naudoja išteklius.
Palyginti su sudėtinga „phpMyAdmin“ struktūra, „Adminer“ labiau tinka VPS, mažoms svetainėms ir asmeniniams projektams.

Administratoriaus diegimo „HestiaCP“ veiksmai
1. Atsisiųskite administratoriaus failą
Eiti į Oficiali administratoriaus svetainė Atsisiųskite naujausią versiją adminer.php.
Įkelkite failą į „HestiaCP“ svetainės katalogą, pavyzdžiui:
/home/username/web/adminer.domain.com/public_html/adminer.php
2. Sukurkite subdomeną ir įjunkite SSL.
Pridėti subdomeną HestiaCP skydelyje adminer.domain.comĮjunkite „Let's Encrypt SSL“, kad užtikrintumėte saugų perdavimą.
3. Konfigūruokite „Nginx“ slaptažodžio apsaugą
Į subdomeno „Nginx“ konfigūracijos failą pridėkite šiuos duomenis:
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;
}
Sukurti slaptažodžių failą:
sudo apt-get install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd adminuser
Prisijungus prie administratoriaus paskyros, pasirodys slaptažodžio įvedimo dialogo langas, kuriame galėsite prisijungti tik įvedę teisingą vartotojo vardą ir slaptažodį.
Automatiškai atnaujinti administratoriaus failus
Siekiant išvengti su senesnių versijų naudojimu susijusios saugumo rizikos, automatinius atnaujinimus galima atlikti naudojant apvalkalo scenarijus ir „Cron“ suplanuotas užduotis.
Atnaujinimo scenarijaus pavyzdys
#!/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"
Išsaugoti kaip /usr/local/bin/update-adminer.shIr pridėkite suplanuotą užduotį:
crontab -e
0 3 * * 1 /usr/local/bin/update-adminer.sh
Tokiu būdu administratoriaus failas bus automatiškai atnaujinamas kiekvieną pirmadienį 3 val.
Fail2Ban anti-brute-force ataka
„Simple Basic Auth“ yra pažeidžiamas „brute-force“ atakų, o „Fail2Ban“ gali automatiškai blokuoti kenkėjiškus IP adresus.
Filtro konfigūracija
dokumentas:/etc/fail2ban/filter.d/nginx-adminer.conf
[Definition]
failregex = ^<HOST> - .* "GET /adminer.php HTTP/.*" 401
ignoreregex =
Kalėjimo konfigūracija (didėjanti draudimo trukmė)
dokumentas:/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
Poveikis: Pirmasis draudimas galioja 10 minučių, antrasis – 20 minučių, trečiasis – 40 minučių ir taip toliau. Nuolat puolantys žaidėjai bus blokuojami vis ilgesniam laikotarpiui.
Užbaikite diegimo scenarijų vienu spustelėjimu
Išsaugoti kaip /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
Išvada: Saugumo ir efektyvumo pusiausvyra
Tvirtai tikiu, kad duomenų bazių valdymo įrankiai nėra tai, ką galite tiesiog palikti viešajame internete ir naudoti ramiai. „Adminier“ lengvas dizainas yra patrauklus, tačiau saugumo priemonės turi neatsilikti. Slaptažodžių apsauga yra pirmoji gynybos linija, automatiniai atnaujinimai užtikrina nuolatinę apsaugą, o „Fail2Ban“ siūlo išmanias apsaugos priemones. Tik derindami šiuos tris elementus galite sukurti efektyvią ir saugią duomenų bazių valdymo aplinką.
Tikras meistras yra ne tik tas, kuris moka gaminti įrankius, bet ir tas, kuris moka juos saugoti.
Tikimės, kad jums bus naudingas straipsnis „HestiaCP administratoriaus diegimas: saugumo automatizavimo nustatymai + duomenų bazių valdymo optimizavimas“, kuriuo pasidalinta Chen Weiliang tinklaraštyje ( https://www.chenweiliang.com/ ).
Nedvejodami pasidalinkite šio straipsnio nuoroda: https://www.chenweiliang.com/cwl-34018.html
