Hoe phpMyAdmin op Debian 9 te installeren en te beveiligen

Er zijn verschillende oplossingen die we kunnen nemen om de schaalmogelijkheden van onze servers en de applicaties die daar worden gehost te vergroten, gericht op het verbeteren van de alternatieven voor elke gebruiker in de organisatie.
Binnen deze hele wereld van applicaties hebben we een segment dat opvalt en dat zijn databases, hoewel het tegenwoordig normaal is om gebruik te maken van een databasebeheersysteem zoals MariaDB, zijn veel gebruikers en programmeurs niet helemaal op hun gemak met de interface en daarom zijn ze kies ervoor om een ​​van de meest populaire applicaties te gebruiken, zoals phpMyAdmin.

Door middel van deze tutorial zal Solvetic uitleggen hoe de installatie van phpMyAdmin in Debian 9 moet worden geïnstalleerd en beveiligd om zo het meeste uit de functies te halen en tegelijkertijd de integriteit ervan te beschermen tegen ongeoorloofde toegang.

Wat is phpMyAdminphpMyAdmin is ontwikkeld als een gratis softwaretool die is geschreven in PHP en die tot doel heeft het beheer van MySQL via het web te helpen verbeteren.

phpMyAdmin is compatibel met verschillende bewerkingen in MySQL en MariaDB, op dit gebied alle veelgebruikte bewerkingen zoals het beheer van databases, tabellen, kolommen, relaties, indexen, gebruikers, machtigingen, we kunnen ze uitvoeren via de interface en tegelijkertijd het zal mogelijk zijn om elke SQL-instructie rechtstreeks te gebruiken.

FunctiesEnkele van de functies die we vinden wanneer we phpMyAdmin gebruiken zijn:

  • Intuïtieve webinterface
  • Het biedt ondersteuning voor veel van de MySQL-functies, zoals het verkennen en verwijderen van databases, tabellen, views, velden en indexen, het maken, kopiëren, hernoemen en wijzigen van databases, tabellen, velden en indexen, het uitvoeren van onderhoudsservertaken, databases, tabellen en meer.
  • We kunnen elke SQL-instructie uitvoeren, bewerken en markeren, inclusief batchquery's
  • Maakt het gemakkelijk om MySQL-gebruikersaccounts en privileges te beheren
  • Beheer opgeslagen procedures en triggers
  • Voert globale zoekopdrachten uit op een database of een subset hiervan
  • U kunt databasediagrammen in verschillende formaten maken
  • Je bent in staat om complexe queries te maken met behulp van Query-by-example (QBE)
  • Het kan gegevens die in elk formaat zijn opgeslagen transformeren op basis van een reeks vooraf gedefinieerde functies
  • Kan meerdere servers beheren
  • phpMyAdmin kan gegevens exporteren naar verschillende formaten zoals CSV, SQL, XML, PDF, ISO / IEC 26300 - OpenDocument Tekst en Spreadsheet, Word, LATEX en meer
  • Kan gegevens importeren uit CSV en SQL

Eerdere vereistenVoordat we weten hoe we phpMyAdmin moeten installeren en beveiligen, moeten we aan de volgende vereisten voldoen:

Heb de LAMP-installatie (Linux, Apache, MariaDB en PHP) op de Debian 9-server, om ons in dit proces te begeleiden, kunnen we de volgende link bezoeken:

Daarnaast moeten we een firewall hebben geconfigureerd met ufw.

Hoe het systeem te updaten?De eerste stap die u moet nemen, is het bijwerken van de Debian 9-pakketten, hiervoor voeren we de volgende opdracht uit:

 geschikte update

1. Hoe installeer ik phpMyAdmin Debian 9

Stap 1
Nadat het systeem is bijgewerkt, gaan we verder met het installeren van PHP samen met enkele afhankelijkheden door de volgende opdracht uit te voeren:

 apt install phpmyadmin php-mbstring php-gettext

Stap 2
Daar zullen we de letter S invoeren om de download en installatie van PHP te bevestigen en tijdens dit proces wordt het volgende weergegeven:

Stap 3
Daar selecteren we apache2 als de webserver, voor deze selectie drukken we op de spatiebalk en met de Tab-toets selecteren we OK, we drukken op Enter om door te gaan met het installatieproces:

Stap 4
Later moeten we het MySQL-toepassingswachtwoord definiëren:

Stap 5
We drukken op Enter en we moeten het bevestigen:

Stap 6
Vervolgens bevestigen we het wachtwoord van de rootgebruiker voor de database. Hiermee is het installatieproces van phpMyAdmin voltooid.

Het installatieproces zorgt voor het toevoegen van het phpMyAdmin Apache-configuratiebestand in de / etc / apache2 / conf-enabled / directory, die automatisch wordt gelezen.

Stap 7
Nu moeten we expliciet de PHP-extensie mbstring inschakelen die wordt gebruikt om niet-ASCII-strings te beheren en strings naar verschillende coderingen te converteren, we doen dit door het volgende uit te voeren:

 phpenmod mbstring
Ten slotte herstarten we de service om de wijzigingen toe te passen:
 systemctl herstart apache2

2. Hoe phpMyAdmin Debian 9 gebruikers en privileges te configureren


Bij het installeren van phpMyAdmin op de server werd automatisch een databasegebruiker met de naam phpmyadmin aangemaakt die bepaalde onderliggende processen voor het programma kan uitvoeren, om veiligheidsredenen is het ideaal, in plaats van in te loggen met deze gebruiker en het administratieve wachtwoord dat tijdens de installatie is ingesteld, teken met een ander account.

Bij nieuwe installaties op Debian 9-systemen is de MariaDB-rootgebruiker geconfigureerd om standaard te authenticeren met de unix_socket-plug-in in plaats van met een wachtwoord, aangezien phpMyAdmin vereist dat gebruikers zich authenticeren met een wachtwoord. webinterface van de applicatie.

Stap 1
We kunnen de toegang tot phpMyAdmin controleren door de volgende syntaxis in een webbrowser uit te voeren:

 https: // Server_IP / phpmyadmin

Stap 2
Daar komen we binnen met de standaard gebruiker en krijgen we toegang tot het phpMyAdmin platform. We kunnen een nieuwe gebruiker voor phpMyAdmin aanmaken door de volgende regel in de Debian 9-terminal in te voeren:

 mariadb
Stap 3
In het geval dat wachtwoordverificatie actief is, gaan we de volgende opdracht uitvoeren om beheerdersrechten binnen de database te verkrijgen:
 mariadb -u gebruiker -p
In de databaseconsole zullen we het volgende invoeren:

Stap 4
We gaan de gebruiker aanmaken en het gewenste wachtwoord toewijzen:

 MAAK GEBRUIKER 'gebruiker @' localhost 'GEDENTIFICEERD DOOR' wachtwoord ';
Nu verlenen we de nieuwe gebruiker de juiste privileges:
 VERLENEN ALLE VOORRECHTEN OP *.* AAN 'gebruiker' @ 'localhost' MET SUBSIDIEOPTIE;
We verlaten de database:
 Uitgang

Stap 5
Nu hebben we toegang tot phpMyAdmin met de nieuwe gebruiker aangemaakt:

Stap 6
Klik op Doorgaan en dit wordt de phpMyAdmin-omgeving:

VERGROTEN

Tot nu toe hebben we toegang tot het phpMyAdmin-platform en de slechtste omgeving is nog steeds onveilig.

3. Hoe de phpMyAdmin-instantie te beveiligen


phpMyAdmin is een traditioneel en frequent doelwit geworden voor aanvallers vanwege de gemakkelijke toegang. Om dit te voorkomen, kunnen we een gateway voor de applicatie implementeren die gebruik zal maken van Apache's geïntegreerde .htaccess authenticatie- en autorisatiefunctionaliteiten

Stap 1
Om dit te doen, gaan we het gebruik van .htaccess-bestandsoverschrijvingen inschakelen door het Apache-configuratiebestand via de volgende regel te bewerken:

 sudo nano /etc/apache2/conf-available/phpmyadmin.conf

Stap 2
Daar zullen we de volgende regel in de sectie invoeren:

 ToestaanAlles overschrijven

Stap 3
We slaan de wijzigingen op met de toetsencombinatie Ctrl + O en verlaten de editor met de toetsen Ctrl + X.
Hierna herstarten we de Apache-server door het commando uit te voeren:

 systemctl herstart apache2
Stap 4
We hebben het gebruik van .htaccess voor de phpMyAdmin-applicatie ingeschakeld, nu gaan we een gebruiker maken om de algemene beveiliging van de omgeving te implementeren, dit bestand moet worden gemaakt in de applicatiemap, hiervoor gaan we het bestand maken en open het als volgt met de gewenste editor:
 sudo nano /usr/share/phpmyadmin/.htaccess
In het nieuwe bestand plakken we het volgende:
 AuthType Basic AuthName "Beperkte bestanden" AuthUserFile /etc/phpmyadmin/.htpasswd Valid-user vereisen

Stap 5
We slaan de wijzigingen op met de toetsencombinatie Ctrl + O en verlaten de editor met de toetsen Ctrl + X.

De lijnen die we hebben ingevoerd vertegenwoordigen:

AuthType BasisSpecificeer het type authenticatie dat we implementeren, dit type parameter implementeert wachtwoordauthenticatie met behulp van een wachtwoordbestand.

AuthNaamDeze regel bepaalt het bericht voor het authenticatiedialoogvenster dat wordt weergegeven. Het is ideaal om deze generieke vorm te behouden, zodat onbevoegde gebruikers geen toegang hebben tot enige informatie van de beschermde gegevens.

AuthUserFileDeze regel stelt de locatie in van het wachtwoordbestand dat zal worden gebruikt voor authenticatie.

Geldige gebruiker vereisenDeze optie geeft aan dat alleen geverifieerde gebruikers toegang hebben tot deze bron, waardoor onbevoegde toegang wordt voorkomen.

De locatie die we hebben geselecteerd voor het wachtwoordbestand is /etc/phpmyadmin/.htpasswd, we gaan dit bestand maken en toewijzen aan een eerste gebruiker met behulp van het htpasswd-hulpprogramma:

 htpasswd -c /etc/phpmyadmin/.htpasswd "gebruiker"

Stap 6
We voeren het gewenste wachtwoord in en op deze manier heeft deze nieuwe gebruiker veilige toegang tot phpMyAdmin. Wanneer we nu opnieuw proberen toegang te krijgen tot phpMyAdmin via de browser, wordt het volgende pop-upvenster weergegeven:

Stap 7
Daar voeren we de inloggegevens in van de gebruiker die we hebben aangemaakt en door op de knop Toegang te klikken komen we in de phpMyAdmin-omgeving:

VERGROTEN

Op deze manier hebben we geleerd om phpMyAdmin op Debian 9 te installeren en te beveiligen.

wave wave wave wave wave