An dësem Artikel ginn mir Iech Schrëtt-fir-Schrëtt Instruktioune wéi Dir Webëmfeld op engem Server mat Linux konfiguréiert. Als éischt musst Dir verstoen datt en typesche Webserver aus e puer interagéierende Komponenten besteet:
- HTTP Server
- Programméiersprooch Dolmetscher
- Datebank Management System (DBMS)
Fir Är Websäit ze verwalten musst Dir och en Inhaltsmanagementsystem (CMS), e Webinterface fir Datebankverwaltung a FTP Zougang opbauen.
Loosst eis betruechten eng ganz populär Konfiguratioun Apache-PHP-MySQL (MariaDB) op Linux opzestellen. Mir wäerten och vsftpd ftp Server installéieren, phpMyAdmin - e Webinterface fir Datebankverwaltung, an en Inhaltsmanagementsystem WordPress.
Fir unzefänken, bestellt w.e.g. e VPS-Server oder e dedizéierten Server . Zum Beispill hu mir e virtuelle Server mat enger statescher IP-Adress benotzt, op deem Ubuntu Server 18.04 leeft. All Kommandoen goufe vum Root-Benotzer ausgeféiert.
Apache HTTP Server Konfiguratioun
1. Installatioun
apt install apache2
Wann d'Installatioun fäerdeg ass, maacht e Browser op a kontrolléiert "http://[server's_ip_address]"
Wann Dir eng Begréissungssäit wéi dës um Screenshot hei uewen gesitt, heescht dat datt Ären HTTP Server funktionnéiert.
2. Schafen eng Test Säit
Den Standard-Root-Verzeichnis fir d'Websäit ass "/var/www/html" . Hei fannt Dir d'Wëllkommenssäit, déi Dir just gesinn hutt. Loosst eis en separaten Verzeichnis "/var/www/sites" fir virtuell Hoster an en Ënnerdossier "/var/www/sites/site1" mat der Indexsäit vun Ärer Testwebsäit erstellen.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Am Resultat soll d'Datei "/var/www/sites/site1/index.html" just eng Zeil HTML-Code enthalen:
<H1>Welcome</H1>
3. Apache Server Configuratioun
D'Konfiguratiounsdateie vun de Websäite sinn am Katalog "/etc/apache2/sites-available/" . Loosst eis eng Konfiguratiounsdatei fir en neie virtuelle Host erstellen andeems mir d'Standardkonfiguratioun aus der Datei "000-default.conf" als Basis huelen.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Öffnet d'Datei „site1.conf“ a verännert den Attribut „DocumentRoot“ . Gitt de Pfad vun Ärer Websäit als Wäert an, also an eisem Fall ass et „/var/www/sites/site1“
Op dëser Etapp brauche mir d'simultan Operatioun vu verschidde Websäiten net ze konfiguréieren, sou datt mir d'Standardwebsäit auszeschalten an den neie Site aktivéieren. Lued d'Serverkonfiguratioun nei fir d'Ännerungen z'applizéieren.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Maacht de Link "http://[server's _ip_address]" nach eng Kéier op a gitt sécher, datt mir amplaz vun der Standard-Wëllkommenssäit eis nei Säit hunn.
Mir hunn d'Konfiguratioun vun eisem HTTP-Server fäerdeg gemaach a mir kënnen op den nächste Schrëtt weidergoen.
FTP Server Konfiguratioun
1. Installatioun
Loosst eis eisen FTP-Server an en zousätzleche Pak "db-util" installéieren , deen mir brauchen fir virtuell Benotzer ze konfiguréieren.
apt install vsftpd db-util
2. Schafen lokal Kont
De vsftpd Server erlaabt eis Zougangsrechter op eng ganz flexibel Manéier ze konfiguréieren. Fir eis Aufgaben musse mir ftp Benotzer déi folgend ubidden:
- voll Zougang zum Inhalt vun "/var/www/sites/";
- deaktivéieren alles wat uewen ass "/var/www/";
- Verbindung mat engem virtuelle Kont;
Erstellt e lokalen "virtuellen" Kont ouni Umeldungsrechter, awer mat Zougang zum Heemordner "/var/www/" . Dëse Kont gëtt vun FTP-Benotzer benotzt fir sech mam Server ze verbannen.
useradd -d /var/www virtual
„Root“ ass standardméisseg de Besëtzer vum Dossier „/var/www“ . Fir datt FTP-Benotzer den Inhalt vun de Websäiten änneren kënnen, loosst eis de Besëtzer vun „/var/www/sites/“ änneren , inklusiv den Ënnerordner vun „virtual“.
chown -R virtual:root /var/www/sites
Doduerch kann de "virtuellen" Benotzer den Inhalt vun "/var/www/" gesinn a kann an den Ënnerordner "/var/www/sites/" schreiwen.
3. Konfiguratioun
Déi Haaptkonfiguratioun ass an der Datei "/etc/vsftpd.conf" , also loosst eis se opmaachen an änneren wéi follegt:
#enable virtual users
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#configure permission
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#launch settings
listen=YES
pasv_min_port=30000
pasv_max_port=30999
4. Schafen der Datebank
Dir braucht eng Datebank fir Daten vu virtuelle Konten ze späicheren.
Als éischt erstellen mir eng einfach Textdatei "users.txt" am Heemdossier a späicheren d'Zougangsdetailer (Login a Passwuert) vun de virtuelle Benotzer an all zweet Zeil. Zum Beispill brauche mir e virtuelle Benotzer mam Login "ftp" a Passwuert "Qwe123" . Dann gesäit d'Datei sou aus:
ftp
Qwe123
Loosst eis d'Datebank erstellen
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Loosst eis déi standard PAM-Datei "/etc/pam.d/vsftp" wéi follegt änneren:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
Maacht weg datt de Pfad vun der Bibliothéik "pam_userdb.so" anescht ka sinn, awer Dir kënnt en änneren, wann néideg.
Reload de vsftpd Server fir Ännerungen z'applizéieren.
systemctl restart vsftpd
Mir hunn d'Konfiguratioun vum FTP Server fäerdeg gemaach.
Verbindung Detailer:
- ftp://[Server's_IP_Address]
- Login: ftp
- Passwuert: Qwe123
PHP Server Konfiguratioun
1. Installatioun vun PHP
Haut ass déi lescht stabil Versioun vu PHP php 7.4.5 déi net an offiziellen Ubuntu Repositories abegraff ass. Loosst eis en Drëtt Partei Repository verbannen an déi lescht Versioun vu PHP installéieren.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Kontrolléieren
Fir datt PHP ausgeführt ka ginn, muss d'Websäitdatei d'Erweiderung ".php" hunn . Loosst eis eis Testsäit ëmbenennen:
cd /var/www/sites/site1/
mv index.html index.php
Füügt déi folgend php Zeil an d'Datei "/var/www/sites/site1/index.php" bäi , sou datt d'Datei sou ausgesäit:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Späichert d'Ännerungen a kontrolléiert d'Resultat am Browser.
Wann Dir d'Resultat vun der Funktioun "phpinfo()" gesitt , funktionéiert den PHP-Interpreter richteg. Elo geet et mam nächste Schrëtt weider.
MySQL (MariaDB) Konfiguratioun
1. Installatioun
Loosst eis MariaDB an e PHP Modul fir MySQL installéieren an dann Apache nei lueden.
apt install mariadb-server php-mysql
systemctl restart apache2
Aktualiséiert d'Testsäit a gitt op d'Sektioun PDO an der PHP-Konfiguratiounstabell. Wann Dir d'Sektioun "PDO_mysql" fannt , dann heescht dat, datt den Treiber fir Mysql richteg installéiert ass.
Dann musse mir déi initial Sécherheetskonfiguratioun vun der MariaDB maachen an de Passwuert fir de "Root" -Benotzer setzen, de Fernzougang deaktivéieren an all Gaaschtkonten läschen.
mysql_secure_installation
Am éischte Schrëtt musse mir d' Passwuert vum "root" -Benotzer aginn, fir Zougang zum DBMS ze kréien, oder Enter drécken, wann et kee Passwuert gëtt. Well no der Installatioun kee Passwuert fir de "root" -Benotzer festgeluecht gouf, dréckt einfach op "Enter".
W.e.g. notéiert datt et a MariaDB schonn eege Konten gëtt, déi näischt mat den OS-Konten ze dinn hunn. Dofir ass deen eenzege Benotzer, mat deem mir a MariaDB ze dinn hunn, "root".
Duerno freet de Konfigurator eis, e Passwuert fir de Root-Benotzer anzestellen. Gitt "Y" an , fir ze bestätegen, an gitt dat neit Passwuert an. An eisem Fall ass et "Qwe123".
Äntwert mat "Y" op all déi aner Froen bis zum Schluss.
Konfiguratioun ass gemaach!
MariaDB Zougang Detailer:
- Login: root
- Passwuert: Qwe123
phpMyAdmin Konfiguratioun
1. Installatioun
Loosst eis déi néideg Extensioun fir PHP installéieren - mbstring.
apt install php-mbstring
Am offiziellen Repository gëtt et nëmmen eng al Versioun vu phpMyAdmin, also loosst eis déi nei manuell installéieren.
Öffnen déi offiziell Websäit vum Projet " https://www.phpmyadmin.net/ " an luet den neisten Archiv erof.
Kopéiert den Archiv mat engem FTP-Client op de Server am Dossier "/var/www/sites/" .
Dearchivéiert den Dossier a nennt en ëm a „phpMyAdmin“ . Vergiesst net den „unzip“ -Utility z'installéieren. Dir kënnt den Archiv läschen nodeems Dir en dearchivéiert hutt.
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
Erstellt de folgende Dossier "/var/www/sites/phpMyAdmin/tmp" fir temporär Dateien a aktivéiert den Zougang fir jiddereen. Wann Dir dat net maacht, mellt phpMyAdmin den Zougang zum temporäre Dossier als verweigert.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Schafen en Alias
Zënter phpMyAdmin ass keen separaten virtuellen Host an ass ausserhalb vum Root-Verzeichnis läit, loosst eis den Alias konfiguréieren.
Öffnet d'Datei "/etc/apache2/mods-available/alias.conf" a füügt dës Zeil derbäi:
Alias /pma “/var/www/sites/phpMyAdmin"
an dëser Rubrik:
<IfModule alias_module>
</IfModule>
Reload Apache fir d'Ännerungen anzesetzen.
systemctl reload apache2
Den Alias ass agestallt, sou datt mir hei "http://[server's_ip_address]/pma" op phpMyAdmin zougräife kënnen.
3. Bereet d 'Datebank
Well mir de Root Benotzer während der initialer Konfiguratioun vu MariaDB beschränkt hunn, musse mir en neie Kont erstellen mat all Permissiounen déi benotzt gi fir Zougang zu phpMyAdmin.
Ausserdeem, fir zousätzlech Features vu phpMyAdmin z'aktivéieren, brauche mir eng Service-Datebank an e Kont fir et z'erreechen.
Loosst eis d'Konten erstellen
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
W.e.g. notéiert datt den Datebanknumm an der zweeter Ufro a Back Sparks "... ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY ..." ass,
Am Resultat ginn et zwee Konten erstallt an MariaDB:
- Login: pma, Passwuert: Qwe123Full Zougang, gëtt benotzt fir op phpMyAdmin umellen
- Login: pmaservice, Passwuert: Qwe123De Servicekonto ass erfuerderlech fir zousätzlech Funktiounen ze schaffen
Am nächste Schrëtt wäerte mir dës Detailer an der Konfiguratiounsdatei "config.inc.php" setzen.
Dann musse mir d'Datebank aus der Datei "phpMyAdmin/sql/create_tables.sql" importéieren.
Loosst eis et mat der Hëllef vu phpMyAdmin importéieren.
Öffnen Sie den Link „http://[server's_ip_address]/pma“
Gitt de Login „pma“ an de Passwuert „Qwe123“ an.
Gitt op "Importéieren" , klickt op "Datei auswielen" a wielt d'Datei "sql/create_tables.sql" am Root-Verzeichnis vu phpMyAdmin. Do soll den Dossier "phpMyAdmin" mat Dateien op Ärem PC sinn. Dearchivéiert en, wann néideg.
Klickt op "Weider" fir den Import unzefänken.
4. Konfiguratioun
Loosst eis d'Konfiguratiounsdatei aus der Schabloun kopéieren
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Loosst eis d'Konfiguratiounsdatei "/var/www/sites/phpMyAdmin/config.inc.php" opmaachen a folgend Ännerunge maachen:
Setzt e zoufällege Wäert vun 32 Zeechen fir den Attribut "$cfg['blowfish_secret']" . Benotzt dofir all Passwuertgenerator.
Läscht d'Kommentarer aus all de Zeilen an der Sektioun "phpMyAdmin configuration storage settings" a setzt de Login a Passwuert vum MariaDB Servicekonto fir d' Attributer "controluser" an "controlpass" deementspriechend. An eisem Fall sinn et pmaservice a Qwe123.
Späichert d'Ännerungen.
Zougang Detailer fir phpMyadmin:
- http://[server’s_ip_address]/pma/
- Login: pma
- Passwuert: Qwe123
Wéi installéiere a konfiguréieren WordPress op engem Linux Server
1. WordPress Package an Dateie Placement
Gitt op déi offiziell WP Websäit " https://ru.wordpress.org/ " a luet den Archiv op Äre lokalen PC erof.
Luet den Archiv op de Server an den Dossier "/var/www/sites/" erop an dearchivéiert en an den Dossier "wordpress ".
Kopéiert den Inhalt vum Root-Ordner "/var/www/sites/wordpress/" vun der Websäit "/var/www/sites/site1/" .
Well mir d'Dateien iwwer d'Konsole mat Root-Rechter kopéiert hunn, loosst eis den Besëtzer vum Dossier "/var/www/sites/" änneren , inklusiv dem Inhalt vu "virtual" . Dëst ass néideg fir de vollen Zougang fir eng FTP-Verbindung iwwer de Client z'erméiglechen.
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
2. Erstellt eng Datebank fir WordPress
Loggt Iech op phpMyAdmin a klickt op "Datebank erstellen". Gitt e arbiträren Datebanknumm un, an eisem Fall "wordpress_db" a klickt op de "Create" Knäppchen.
Wielt déi nei Datebank am lénksen Deel a klickt op "Privilegien".
Klickt dann op "Benotzerkonto derbäisetzen".
Gitt de Login an d'Passwuert ( wpservice / Qwe123 ) an der Fënster déi opmécht an, markéiert d'Këscht "All Rechter an der wordpress_db gewähren" a klickt op "Weider".
Op der nächster Säit klickt op "Alles ofbriechen" fir all Rechter op Datebankniveau zréckzesetzen a klickt op "Weider".
3. WordPress Konfiguratioun op engem Linux Server
Gitt an de Root Verzeechnes vun Ärer Websäit a kopéiert d'Konfiguratiounsdatei aus der Schabloun
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Öffnet d' Datei "wp-config.php" a gitt d'Parameteren fir d'Datebankverbindung an, déi mir am virege Schrëtt erstallt hunn, an späichert d'Ännerungen.
4. Installéiert CMS WordPress
Öffnen Sie folgende Link am Browser : „http://[server's_ip_address]/wp-admin/install.php“.
Fëllt all Felder aus a klickt op "WordPress installéieren" . Gitt e zoufällege Benotzernumm a Passwuert an. An eisem Fall ass et wpadmin an deementspriechend Qwe123 .
Dës Detailer gi benotzt fir Zougang zu WordPress.
Nodeems Dir d'Installatioun fäerdeg hutt, maacht de Link "http://[server's_ip_address]/wp-login.php" op , gitt d'Zougangsdetailer an a loggt Iech bei WordPress an.
Dir sollt ee vun de WordPress Templates op der Haaptsäit gesinn.
D'Konfiguratioun ass fäerdeg.
WordPress Zougang Detailer:
- http://[server’s_ip_address]/wp-login.php
- Login: wpadmin
- Passwuert: Qwe123