sql >> Databasteknik >  >> Database Tools >> phpMyAdmin

Installera phpMyAdmin med Apache på CentOS 7

phpMyAdmin är ett gratis och öppen källkodsadministrationsverktyg för MySQL och MariaDB. Som en bärbar webbapplikation som huvudsakligen är skriven i PHP, har den blivit ett av de mest populära MySQL-administrationsverktygen, särskilt för webbhotelltjänster. I den här guiden kommer vi att installera phpMyAdmin med Apache på CentOS 7.

En viktig förutsättning innan du använder den här guiden är att installera en LAMP-stack (Linux, Apache, MariaDB och PHP) på din CentOS 7-server. LAMP-stacken är plattformen som kommer att användas för att betjäna vårt phpMyAdmin-gränssnitt (MariaDB är också programvaran för databashantering som vi vill hantera). Om du ännu inte har en LAMP-installation på din server, klicka här för att läsa vår handledning om att installera LAMP på CentOS 7.

Steg 1:Lägg till EPEL repo:
Vi måste lägga till EPEL-repo (Extra Packages for Enterprise Linux) till vår server innan vi fortsätter med installationen om den innehåller många ytterligare paket, inklusive phpMyAdmin-paketet vi letar efter. För att installera, skriv kommandot nedan:

sudo yum install epel-release

Steg 2:Installera phpMyAdmin:
Skriv kommandot nedan för att installera phpMyAdmin-paketet med yum-paketeringssystemet följt av y för att fortsätta:

sudo yum install phpmyadmin

Efter framgångsrik installation bör du få ett liknande resultat som visas nedan:

Installationen inkluderar en Apache-konfigurationsfil som har placerats i dess lämpliga katalog. Vi måste ändra den här konfigurationsfilen för att vår installation ska fungera perfekt för våra behov.

Öppna phpMyAdmin.conf i /etc/httpd fil i textredigeraren (nano i den här guiden) för att göra några ändringar:

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

För närvarande är inställningen i konfigurationsfilen konfigurerad för att neka åtkomst till alla anslutningar som inte görs från själva servern. Eftersom vi utvärderar vår server på distans (via ssh), måste vi ändra några rader för att ange IP-adressen för din hemanslutning.

Den första platsen är <Directory /usr/share/phpMyAdmin/> avsnitt som visas nedan:

Ändra alla rader som läser Require ip 127.0.0.1 eller Allow from 127.0.0.1 för att referera till din hemanslutnings IP-adress.

Obs! Om du behöver hjälp med att hitta din hemanslutnings IP, klicka här för att kontrollera.

Den andra platsen är <Directory /usr/share/phpMyAdmin/setup/> avsnitt som visas nedan:

Ändra också alla rader som läser Require ip 127.0.0.1 eller Allow from 127.0.0.1 för att referera till din hemanslutnings IP-adress.

Obs! Dina hemanslutningars IP-adress skiljer sig från IP-adressen för din VPS.

Efter att ha gjort konfigurationerna, starta om Apache-webbservern genom att skriva:

sudo systemctl restart httpd.service

För att komma åt gränssnittet, besök din offentliga IP-adress eller serverns domännamn följt av /phpMyAdmin, i din webbläsare:

http://server_domain_or_IP/phpMyAdmin 

Logga in på phpmyadmin-gränssnittet med hjälp av root-användarnamnet och det administrativa lösenordet du ställde in under MySQL-installationen. Efter att ha loggat in ser användargränssnittet ut som på skärmdumpen nedan:

SÄKRA DIN PHPMYADMIN-INSTANS

Att säkra din phpmyadmin är viktigt för att förhindra obehörig åtkomst. Ett enkelt sätt att göra detta är att ändra platsen för gränssnittet från /phpMyAdmin till något annat för att förhindra automatiska bot-brute-force-försök.

Öppna konfigurationsfilen med kommandot nedan:

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf

De två raderna nedan är standardaliasen som visar oss innehåll från /usr/share/phpMyAdmin plats om vi kommer åt vår webbplats domännamn eller IP-adress, följt av antingen /phpMyAdmin eller /phpmyadmin .

Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

Vi kommer att inaktivera dessa standardalias på grund av den höga hastigheten med vilken de riktas mot av botar och skadliga användare. Av säkerhetsskäl bör vi besluta om vårt eget alias med dessa två regler i åtanke:

  • Det bör inte ange syftet med URL-platsen.
  • Det ska vara lätt att komma ihåg men inte lätt att gissa.

I den här guiden kommer vi att använda /somethingelse .

För att tillämpa våra ändringar kommer vi att kommentera de befintliga raderna (du kan ta bort dem helt) och lägga till våra egna:

#Alias /phpMyAdmin /usr/share/phpMyAdmin
#Alias /phpmyadmin /usr/share/phpMyAdmin
Alias /somethingelse /usr/share/phpMyAdmin

Spara och stäng filen och fortsätt sedan för att starta om httpd med kommandot nedan:

sudo systemctl restart httpd.service

Om du besöker den tidigare platsen för din phpMyAdmin-installation får du ett 404-fel:

http://server_domain_or_IP/phpMyAdmin

http://server_domain_or_IP/nothingtosee

Du kan också säkra att phpMyAdmin placerar en gateway framför hela applikationen genom att använda Apaches inbyggda .htaccess autentiserings- och auktoriseringsfunktioner.

För det första måste vi aktivera användningen av .htaccess-filöverstyrningar genom att redigera vår Apache-konfigurationsfil. Öppna phpmyadmin.conf med kommandot nedan:

sudo nano /etc/httpd/conf.d/phpMyAdmin.conf 

Lägg till AllowOverride All längst ner i <Directory /usr/share/phpmyadmin> avsnitt av konfigurationsfilen enligt nedan:

Spara filen innan du stänger och fortsätt sedan för att starta om Apache med kommandot:

sudo systemctl restart apache2

Efter att ha aktiverat .htaccess-användning måste vi skapa filen för att fullt ut implementera säkerheten genom att skriva kommandot nedan:

sudo nano /usr/share/phpmyadmin/.htaccess

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

Du kan läsa mer på htaccess här.

Skriv kommandot nedan för att lägga till lösenordet till htaccess fil:

sudo htpasswd -c /etc/httpd/pma_pass username

För att lägga till ytterligare användare att autentisera, skriv samma kommando igen men denna gång utan -c flagga och med ett nytt användarnamn:

sudo htpasswd /etc/httpd/pma_pass seconduser

Med detta, när du kommer åt phpMyAdmin på din domän, kommer du att bli tillfrågad om det ytterligare kontonamnet och lösenordet som du just konfigurerade enligt nedan:
Med detta, när du kommer åt phpMyAdmin på din domän, kommer du att bli tillfrågad om det extra kontonamnet och lösenordet som du just konfigurerade enligt nedan:

När du har skrivit in Apache-autentiseringslösenordet omdirigeras du till den ursprungliga phpMyAdmin-autentiseringssidan för att ange dina andra referenser.


  1. Hur man använder git som källkontrollleverantör för SQL Server Management Studio

  2. Kan jag ställa in ett MySQL-händelseschema med phpMyAdmin?

  3. Hur kan jag köra en fråga flera gånger i phpmyadmin?

  4. Hur aktiverar jag phpMyAdmins designervy?