- Bevezetés
- előfeltételek
- első lépés — Telepítse a phpMyAdmin
- keresse meg IP-címét
- második lépés — biztosítsa a phpMyAdmin példányt
- az alkalmazás hozzáférési helyének megváltoztatása
- webkiszolgáló hitelesítési kapu beállítása
- hozzon létre egy .htaccess fájl
- hozzon létre egy jelszófájlt a hitelesítéshez
- következtetés
Bevezetés
relációs adatbázis-kezelő rendszerek, mint a MySQL és MariaDB van szükség egy jelentős részét weboldalak és alkalmazások. Azonban nem minden felhasználó kényelmesen kezeli adatait a parancssorból.
a probléma megoldására egy phpMyAdmin nevű projektet hoztak létre annak érdekében, hogy alternatívát kínáljon egy webalapú kezelőfelület formájában. Ebben az útmutatóban bemutatjuk, hogyan kell telepíteni és biztosítani a phpMyAdmin konfigurációt egy CentOS 7 szerveren. Ezt a beállítást az Apache webszerver tetejére építjük, amely a világ legnépszerűbb webszervere.
előfeltételek
mielőtt elkezdenénk, van néhány követelmény, amelyet rendezni kell.
annak biztosítása érdekében, hogy szilárd alappal rendelkezzen a rendszer felépítéséhez, futtassa végig a CentOS 7 kezdeti szerverbeállítási útmutatóját. Többek között ez végigvezeti Önt egy nem root felhasználó beállításán, sudo
hozzáféréssel az adminisztratív parancsokhoz.
a második előfeltétel, amelyet teljesíteni kell az útmutató elindításához, egy LAMP (Linux, Apache, MariaDB és PHP) verem telepítése a CentOS 7 szerverre. Ezt a platformot fogjuk használni a phpMyAdmin felületünk kiszolgálására (a MariaDB egyben az adatbázis-kezelő szoftver, amelyet kezelni kívánunk). Ha még nincs LAMP telepítése a szerveren, kövesse a LAMP CentOS 7-re történő telepítéséről szóló oktatóanyagunkat.
ha a szerver megfelelően működik az útmutatók követése után, folytathatja az oldal többi részével.
első lépés — Telepítse a phpMyAdmin
a LAMP platform már a helyén van, azonnal megkezdhetjük a phpMyAdmin szoftver telepítését. Sajnos a phpMyAdmin nem érhető el a CentOS 7 alapértelmezett adattárában.
a szükséges csomagok megszerzéséhez további repót kell hozzáadnunk a rendszerünkhöz. Az EPEL repo (extra Packages for Enterprise Linux) számos további csomagot tartalmaz, beleértve a keresett phpMyAdmin csomagot is.
az EPEL repository elérhetővé tehető a szerver számára egy epel-release
nevű speciális csomag telepítésével. Ez újrakonfigurálja a repository listát, és hozzáférést biztosít az EPEL csomagokhoz.
a telepítéshez csak írja be:
sudo yum install epel-release
most, hogy az EPEL repo konfigurálva van, a phpMyAdmin csomagot a yum
csomagolási rendszer segítségével telepítheti:
sudo yum install phpmyadmin
a Telepítés most befejeződik. A telepítés tartalmazott egy már bevezetett Apache konfigurációs fájlt. Ezt egy kicsit módosítanunk kell, hogy megfelelően működjön a telepítésünkhöz.
nyissa meg a fájlt a szövegszerkesztőben most, hogy néhány változtatást elvégezhessünk:
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
belül látunk néhány könyvtárblokkot néhány feltételes logikával, amelyek megmagyarázzák a könyvtárunk hozzáférési politikáját. Két különálló könyvtár van definiálva, és ezeken belül olyan konfigurációk, amelyek érvényesek lesznek mind az Apache 2.2-re, mind az Apache 2.4-re (amelyeket futtatunk).
ez a beállítás jelenleg úgy van konfigurálva, hogy megtagadja a hozzáférést minden olyan kapcsolathoz, amely nem a szerverről jön létre. Mivel távolról dolgozunk a szerverünkön, módosítanunk kell néhány sort az otthoni kapcsolat IP-címének megadásához.
módosítsa a Require ip 127.0.0.1
vagy Allow from 127.0.0.1
feliratú sorokat az otthoni kapcsolat IP-címére való hivatkozáshoz. Ha segítségre van szüksége az otthoni kapcsolat IP-címének megtalálásához, nézze meg a következő részt. A fájlban négy helynek kell lennie, amelyet meg kell változtatni:
. . .Require ip your_workstation_IP_address. . .Allow from your_workstation_IP_address. . .Require ip your_workstation_IP_address. . .Allow from your_workstation_IP_address. . .
ha végzett, indítsa újra az Apache webkiszolgálót a módosítások végrehajtásához gépeléssel:
sudo systemctl restart httpd.service
ezzel a phpMyAdmin telepítésünk már működik. A felület eléréséhez nyissa meg a szerver domain nevét vagy nyilvános IP-címét, majd a /phpMyAdmin
parancsot a webböngészőben:
http://server_domain_or_IP/phpMyAdmin
a bejelentkezéshez használjon érvényes MariaDB-felhasználó felhasználónév/jelszó párját. A root
felhasználó és a MariaDB adminisztrátori jelszó jó választás az induláshoz. Ezután hozzáférhet az adminisztrációs felülethez:
keresse meg IP-címét
a fenti lépés végrehajtásához ismernie kell annak a számítógépnek az IP-címét, amelyet az adatbázisok eléréséhez használ. Ez egy biztonsági óvintézkedés, hogy illetéktelen személyek ne tudjanak csatlakozni a szerverhez.
Megjegyzés: Ez nem a VPS IP-címe, hanem az otthoni vagy munkahelyi számítógép IP-címe.
megtudhatja, hogy a nagyobb web hogyan látja az Ön IP-címét, ha ellátogat ezen webhelyek egyikére a webböngészőben:
- mi az IP címem?
- mi az IP?
- saját IP-cím
hasonlítson össze néhány különböző webhelyet, és győződjön meg róla, hogy mindegyik ugyanazt az értéket adja meg. Használja ezt az értéket a fenti konfigurációs fájlban.
második lépés — biztosítsa a phpMyAdmin példányt
a szerverünkre telepített phpMyAdmin példánynak ezen a ponton teljesen használhatónak kell lennie. A webes felület telepítésével azonban a MySQL rendszerünket kitettük a külvilágnak.
még a mellékelt hitelesítési képernyőn is ez elég probléma. A phpMyAdmin népszerűsége és a hozzáférést biztosító nagy mennyiségű adat miatt az ilyen telepítések a támadók általános célpontjai.
két egyszerű stratégiát fogunk végrehajtani annak érdekében, hogy csökkentsük annak esélyét, hogy a telepítésünk célzott és veszélyeztetett legyen. Megváltoztatjuk az interfész helyét /phpMyAdmin
– ról valami másra, hogy elkerüljük az automatizált Bot brute-force kísérleteket. Létrehozunk egy további, webszerver szintű hitelesítési átjárót is, amelyet át kell adni, mielőtt még a phpMyAdmin bejelentkezési képernyőre jutna.
az alkalmazás hozzáférési helyének megváltoztatása
annak érdekében, hogy az Apache webszerverünk működjön a phpMyAdmin-nal, a phpMyAdmin Apache konfigurációs fájlunk aliast használ, hogy a fájlok könyvtárhelyére mutasson.
az URL megváltoztatásához, ahol a phpMyAdmin felületünk elérhető, egyszerűen át kell neveznünk az álnevet. Nyissa meg most a phpMyAdmin Apache konfigurációs fájlt:
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
a fájl teteje felé két sor jelenik meg, amelyek így néznek ki:
Alias /phpMyAdmin /usr/share/phpMyAdminAlias /phpmyadmin /usr/share/phpMyAdmin
ez a két sor az álneveink, ami azt jelenti, hogy ha hozzáférünk webhelyünk domain nevéhez vagy IP-címéhez, amelyet a /phpMyAdmin
vagy a /phpmyadmin
követ, akkor a tartalmat a /usr/share/phpMyAdmin
címen fogjuk kiszolgálni.
le akarjuk tiltani ezeket a speciális álneveket, mivel erősen megcélozzák őket a botok és a rosszindulatú felhasználók. Ehelyett a saját álnevünket kell választanunk. Könnyen megjegyezhetőnek kell lennie, de nem könnyű kitalálni. Nem szabad jeleznie az URL helyének célját. A mi esetünkben, megyünk /nothingtosee
.
a tervezett módosítások alkalmazásához el kell távolítanunk vagy kommentálnunk kell a meglévő sorokat, és hozzá kell adnunk a sajátunkat:
# Alias /phpMyAdmin /usr/share/phpMyAdmin# Alias /phpmyadmin /usr/share/phpMyAdminAlias /nothingtosee /usr/share/phpMyAdmin
ha végzett, mentse és zárja be a fájlt.
a módosítások végrehajtásához indítsa újra a webszolgáltatást:
sudo systemctl restart httpd.service
most, ha a phpMyAdmin telepítésének előző helyére lép, 404-es hibát kap:
http://server_domain_or_IP/phpMyAdmin
a phpMyAdmin felület azonban elérhető lesz az általunk kiválasztott új helyen:
http://server_domain_or_IP/nothingtosee
webkiszolgáló hitelesítési kapu beállítása
a telepítéshez a következő funkció egy hitelesítési prompt volt, amelyet a felhasználónak át kell adnia, mielőtt valaha is meglátná a phpMyAdmin bejelentkezési képernyőt.
szerencsére a legtöbb webszerver, beleértve az Apache-t is, natív módon biztosítja ezt a képességet. Csak módosítanunk kell az Apache konfigurációs fájlunkat egy engedélyezési fájl használatához.
nyissa meg újra a phpMyAdmin Apache konfigurációs fájlt a szövegszerkesztőben:
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
a /usr/share/phpMyAdmin
könyvtárblokkon belül, de a belső blokkok bármelyikén kívül felülbírálási irányelvet kell hozzáadnunk. Ez így fog kinézni:
. . .<Directory /usr/share/phpMyAdmin/> AllowOverride All <IfModule mod_authz_core.c> . . .</Directory>. . .
ez lehetővé teszi számunkra, hogy további konfigurációs részleteket adjunk meg egy .htaccess
nevű fájlban, amely magában a phpMyAdmin könyvtárban található. Ezt a fájlt fogjuk használni a jelszó-hitelesítés beállításához.
mentse és zárja be a fájlt, ha végzett.
indítsa újra a webszolgáltatást a módosítás végrehajtásához:
sudo systemctl restart httpd.service
hozzon létre egy .htaccess fájl
most, hogy megvan a felülbírálási irányelv a konfigurációnkban, az Apache egy .htaccess
nevű fájlt keres a /usr/share/phpMyAdmin
könyvtárban. Ha talál egyet, akkor a benne található irányelveket használja a korábbi konfigurációs adatok kiegészítésére.
következő lépésünk a .htaccess
fájl létrehozása ebben a könyvtárban. Használja a szövegszerkesztőt most:
sudo nano /usr/share/phpMyAdmin/.htaccess
ebben a fájlban a következő információkat kell megadnunk:
AuthType BasicAuthName "Admin Login"AuthUserFile /etc/httpd/pma_passRequire valid-user
menjünk át, mit jelentenek ezek a sorok:
- AuthType Basic: Ez a sor határozza meg az általunk végrehajtott hitelesítési típust. Ez a típus jelszó-hitelesítést hajt végre egy jelszófájl használatával.
- AuthName: ez beállítja a hitelesítés párbeszédpanel üzenetét. Meg kell tartani ezt az általános, hogy a jogosulatlan felhasználók nem kapnak ismereteket arról, hogy mi védett.
- AuthUserFile: ez adja meg a hitelesítéshez használt tényleges jelszófájl helyét. Ennek a kiszolgálandó könyvtárakon kívül kell lennie. Egy pillanat alatt elkészítjük ezt a fájlt.
- érvényes felhasználó szükséges: Ez azt határozza meg, hogy csak hitelesített felhasználók férhetnek hozzá ehhez az erőforráshoz. Ez valójában megakadályozza az illetéktelen felhasználók belépését.
ha befejezte az adatok megadását, mentse és zárja be a fájlt.
hozzon létre egy jelszófájlt a hitelesítéshez
most, hogy megadtuk a jelszófájl helyét a AuthUserFile
irányelv használatával a .htaccess
fájlunkban, létre kell hoznunk és fel kell töltenünk a jelszófájlt.
ez egy htpasswd
nevű Apache segédprogram használatával érhető el. Meghívjuk a parancsot úgy, hogy átadjuk neki azt a helyet, ahová a fájlt szeretnénk létrehozni, valamint azt a felhasználónevet, amelyhez hitelesítési adatokat szeretnénk megadni:
sudo htpasswd -c /etc/httpd/pma_pass username
a -c
jelző azt jelzi, hogy ez létrehoz egy kezdeti fájlt. A könyvtár helye A fájlhoz használt elérési út és fájlnév. A felhasználónév az első felhasználó, akit hozzá szeretnénk adni. A rendszer kéri, hogy adja meg és erősítse meg a felhasználó jelszavát.
ha további felhasználókat szeretne hozzáadni a hitelesítéshez, újra meghívhatja ugyanazt a parancsot a -c
jelző nélkül, új felhasználónévvel:
sudo htpasswd /etc/httpd/pma_pass seconduser
a jelszófájl létrehozásával egy hitelesítési átjáró valósult meg, és most látnunk kell egy jelszót, amikor legközelebb meglátogatjuk webhelyünket:
http://server_domain_or_IP/nothingtosee
miután megadta a hitelesítő adatait, a normál phpMyAdmin bejelentkezési oldalra kerül. Ez a hozzáadott védelmi réteg segít megőrizni a MySQL naplók tiszta hitelesítési kísérletek mellett a hozzáadott biztonsági előny.
következtetés
mostantól kezelheti a MySQL adatbázisokat egy ésszerűen biztonságos webes felületről. Ez a felhasználói felület kiteszi a MySQL parancssorból elérhető funkciók nagy részét. Megtekintheti az adatbázisokat és sémákat, lekérdezéseket hajthat végre, és új adatkészleteket és struktúrákat hozhat létre.