In questu articulu, vi daremu struzzioni passu per passu nantu à cumu cunfigurà l'ambiente web in un servitore chì funziona Linux. Prima di tuttu, avete bisognu di capiscenu chì un servitore web tipicu hè custituitu da uni pochi di cumpunenti interattivi:
- Servitore HTTP
- interprete di lingua di prugrammazione
- sistema di gestione di basa di dati (DBMS)
Per gestisce u vostru situ web, avete ancu bisognu di stabilisce un sistema di gestione di cuntenutu (CMS), una interfaccia web per a gestione di basa di dati, è accessu FTP.
Pensemu à creà una cunfigurazione assai populari Apache-PHP-MySQL (MariaDB) in Linux. Stallaremu ancu vsftpd ftp server, phpMyAdmin - una interfaccia web per a gestione di basa di dati, è un sistema di gestione di cuntenutu WordPress.
Per principià, ordinate un servitore VPS o un servitore dedicatu . Per esempiu, avemu utilizatu un servitore virtuale cù un indirizzu IP staticu chì esegue Ubuntu Server 18.04. Tutti i cumandamenti sò stati eseguiti da l'utilizatore root.
Configurazione Apache HTTP Server
1. stallanu
apt install apache2
Quandu l'installazione hè finita, apre un navigatore è verificate "http://[indirizzu_ip_di_u_servitore]"
Se vede una pagina di benvenuta cum'è questa nantu à a screenshot sopra, questu significa chì u vostru servitore HTTP funziona.
2. Crea una pagina di prova
U cartulare radice predefinitu per u situ web hè "/var/www/html" . Quì hè induve pudete truvà a pagina di benvenuta chì avete appena vistu. Creemu un cartulare separatu "/var/www/sites" per l'ospiti virtuali è una sottucartella "/var/www/sites/site1" cù a pagina indice di u vostru situ web di prova.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
In u risultatu, u schedariu "/var/www/sites/site1/index.html" deve cuntene solu una linea di codice html:
<H1>Welcome</H1>
3. Cunfigurazione di u servitore Apache
I fugliali di cunfigurazione di i siti web sò in u catalogu "/etc/apache2/sites-available/" . Creemu un fugliale di cunfigurazione per un novu host virtuale pigliendu cum'è basa a cunfigurazione predefinita da u fugliale "000-default.conf" .
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Aprite u schedariu "site1.conf" è cambiate l' attributu "DocumentRoot" . Mette u percorsu di u vostru situ web cum'è valore, dunque in u nostru casu hè "/var/www/sites/site1".
In questa fase ùn avemu micca bisognu di cunfigurà l'operazione simultanea di parechji siti web, cusì pudemu disattivà u situ web predeterminatu è attivà u novu situ. Ricaricate a cunfigurazione di u servitore per applicà i cambiamenti.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Aprite torna u ligame "http://[indirizzu_ip_di_u_server]" è assicuratevi chì invece di a pagina di benvenuta predefinita avemu a nostra nova pagina.
Avemu finitu a cunfigurazione di u nostru servitore HTTP è pudemu passà à u prossimu passu.
Cunfigurazione di u servitore FTP
1. stallanu
Installemu u nostru servitore ftp è un pacchettu supplementu "db-util" , chì ci servirà per cunfigurà l'utilizatori virtuali.
apt install vsftpd db-util
2. Crea contu lucale
U servitore vsftpd ci permette di cunfigurà i permessi di accessu in una manera assai flexible. Per i nostri compiti avemu bisognu di furnisce l'utilizatori ftp cù i seguenti:
- accessu cumpletu à u cuntenutu di "/var/www/sites/";
- disattivà tuttu ciò chì hè sopra "/var/www/";
- cunnessione cù un contu virtuale;
Crea un contu lucale "virtuale" senza permessu di cunnessione ma cù accessu à u cartulare principale "/var/www/" . Stu contu serà utilizatu da l'utilizatori ftp per cunnette si à u servitore.
useradd -d /var/www virtual
«Root» serà u pruprietariu di a cartella «/var/www» per difettu. Per permette à l'utilizatori ftp di mudificà u cuntenutu di i siti web, cambiamu u pruprietariu di «/var/www/sites/» cumprese e sottocartelle di «virtual».
chown -R virtual:root /var/www/sites
Cusì, l'utilizatore "virtuale" puderà vede u cuntenutu di "/var/www/" è scrive in a sottucartella "/var/www/sites/".
3. A cunfigurazione
A cunfigurazione principale hè in u schedariu "/etc/vsftpd.conf" , dunque apremula è mudificemula cusì:
#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. Crea a basa di dati
Avete bisognu di una basa di dati per almacenà e dati di cunti virtuali.
Prima, creemu un simplice schedariu di testu "users.txt" in u cartulare principale è salvemu i dettagli d'accessu (login è password) di l'utilizatori virtuali in ogni altra linea. Per esempiu, averemu bisognu di un utilizatore virtuale cù u login "ftp" è a password "Qwe123" . Allora u schedariu serà cusì:
ftp
Qwe123
Creemu a basa di dati
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Mudificemu u schedariu PAM predefinitu "/etc/pam.d/vsftp" cusì:
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
Attenti, u percorsu di a biblioteca "pam_userdb.so" pò esse differente, ma pudete cambiallu se necessariu.
Ricaricate u servitore vsftpd per applicà cambiamenti.
systemctl restart vsftpd
Avemu finitu di cunfigurà u servitore FTP.
Dettagli di cunnessione:
- ftp://[indirizzu_ip_server]
- login: ftp
- password: Qwe123
Cunfigurazione di u servitore PHP
1. Installazione di PHP
Oghje l'ultima versione stabile di PHP hè php 7.4.5 chì ùn hè micca inclusu in i repositori ufficiali di Ubuntu. Cunnetteremu un repositoriu di terzu è installate l'ultima versione di PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Verificate
Per chì PHP sia eseguitu, u schedariu di pagina web deve avè l'estensione ".php" . Rinominemu a nostra pagina di prova:
cd /var/www/sites/site1/
mv index.html index.php
Aghjunghjite a seguente linea php à u schedariu "/var/www/sites/site1/index.php" , cusì u schedariu duveria esse cusì:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Salvà i cambiamenti è verificate u risultatu in u navigatore.
Sè vo vede u risultatu di a funzione "phpinfo()" , l'interprete PHP funziona currettamente. Avà passemu à u passu prossimu.
Cunfigurazione MySQL (MariaDB).
1. stallanu
Stallà MariaDB è un modulu PHP per MySQL è poi ricaricà Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Aggiornate a pagina di prova è andate à a sezione PDO in a tabella di cunfigurazione PHP. Sè pudete truvà a sezione "PDO_mysql" , significa chì u driver per Mysql hè installatu currettamente.
Dopu, averemu bisognu di fà a cunfigurazione di sicurezza iniziale di MariaDB è di definisce a password per l' utente "root" , disattivà l'accessu remotu è sguassà tutti i conti invitati.
mysql_secure_installation
À u primu passu, duvemu inserisce a password di l'utilizatore "root" per accede à u DBMS o appughjà Enter s'ellu ùn ci hè micca password. Siccomu ùn ci hè micca password impostata per l' utilizatore "root" dopu l'installazione, basta à appughjà "Enter".
Attenti, in MariaDB ci sò digià i so propri conti chì ùn anu nunda à chì vede cù i conti di u sistema operativu. Dunque, l'unicu utilizatore cù u quale avemu da trattà in MariaDB hè "root".
Dopu à quessa, u cunfiguratore ci dumanderà di definisce a password per l'utilizatore root. Scrivite "Y" per cunfirmà è inserisce a nova password. In u nostru casu, hè "Qwe123".
Rispondi "I" à tutte e altre dumande finu à a fine.
A cunfigurazione hè fatta!
Dettagli di accessu à MariaDB:
- Login: root
- Password: Qwe123
phpMyAdmin cunfigurazione
1. stallanu
Installemu l'estensione necessaria per PHP - mbstring.
apt install php-mbstring
In u repositoriu ufficiale ci hè solu una versione obsoleta di phpMyAdmin, allora stallà a nova manualmente.
Aprite u situ ufficiale di u prugettu " https://www.phpmyadmin.net/ " è scaricate l'ultimu archiviu.
Cupiate l'archiviu nant'à u servitore in u cartulare "/var/www/sites/" cù qualsiasi cliente ftp.
Disarchivate u cartulare è rinominatelu "phpMyAdmin" . Ùn vi scurdate d'installà l' utilità "unzip" . Pudete sguassà l'archiviu dopu avè lu disarchivatu.
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
Crea a seguente cartella "/var/www/sites/phpMyAdmin/tmp" per i fugliali tempuranei è permette l'accessu per tutti. Sè ùn fate micca questu, phpMyAdmin signalerà l'accessu rifiutatu à a cartella tempuranee.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Crea un alias
Siccomu phpMyAdmin ùn hè micca un host virtuale separatu è si trova fora di u cartulare radicale, cunfiguremu l'alias.
Aprite u schedariu "/etc/apache2/mods-available/alias.conf" è aghjunghjite sta linea:
Alias /pma “/var/www/sites/phpMyAdmin"
in sta sezione:
<IfModule alias_module>
</IfModule>
Ricaricate Apache per applicà i cambiamenti.
systemctl reload apache2
L'alias hè impostu, cusì pudemu accede à phpMyAdmin quì "http://[indirizzu_ip_di_u_server]/pma".
3. Preparate a basa di dati
Siccomu avemu limitatu l'usu di root durante a cunfigurazione iniziale di MariaDB, avemu da creà un novu contu cù tutti i permessi chì seranu utilizati per accede à phpMyAdmin.
Inoltre, per attivà e funzioni supplementari di phpMyAdmin avemu bisognu di una basa di dati di serviziu è di un contu per accede.
Creemu i cunti
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
Attenti, u nome di a basa di dati in a seconda dumanda hè in back sparks "... ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY ...",
In u risultatu, ci saranu dui cunti creati in MariaDB:
- Login: pma, Password: Qwe123 Accessu cumpletu, serà utilizatu per accede à phpMyAdmin
- Login: pmaservice, Password: Qwe123U contu di serviziu hè necessariu per funzioni supplementari per travaglià
À u prossimu passu, stabiliremu sti ditaglii in u schedariu di cunfigurazione "config.inc.php".
Dopu, averemu bisognu di impurtà a basa di dati da u schedariu "phpMyAdmin/sql/create_tables.sql".
Impurtamu cù l'aiutu di phpMyAdmin.
Aprite u ligame "http://[indirizzu_ip_di_u_server]/pma"
Inserite u login "pma" è a password "Qwe123"
Andate à "Impurtà" , cliccate nant'à "Selezziunà schedariu" è selezziunate u schedariu "sql/create_tables.sql" in u cartulare principale di phpMyAdmin. Ci deve esse a cartella "phpMyAdmin" nant'à u vostru PC cù i schedarii. Disarchivatelu s'ellu hè necessariu.
Cliccate "Next" per principià l'impurtazione.
4. A cunfigurazione
Copiemu u schedariu di cunfigurazione da u mudellu
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Apremu u schedariu di cunfigurazione "/var/www/sites/phpMyAdmin/config.inc.php" è facemu i seguenti cambiamenti:
Definite un valore aleatoriu di 32 caratteri per l'attributu "$cfg['blowfish_secret']" . Aduprate qualsiasi generatore di password per questu.
Eliminate i cummenti da tutte e linee di a sezzione "phpMyAdmin configuration storage settings" è impostate u login è a password di u contu di serviziu di MariaDB per l' attributi "controluser" è "controlpass" in cunsequenza. In u nostru casu, hè pmaservice è Qwe123.
Salvà i cambiamenti.
Accedi à i dettagli per phpMyadmin:
- http://[server’s_ip_address]/pma/
- Login: pma
- Password: Qwe123
Cumu installà è cunfigurà WordPress in un servitore Linux
1. U pacchettu di WordPress è u locu di i schedari
Andate à u situ ufficiale di WP " https://ru.wordpress.org/ " è scaricate l'archiviu nant'à u vostru urdinatore lucale.
Caricate l'archiviu nant'à u servitore in a cartella "/var/www/sites/" è disarchivatelu in a cartella "wordpress ".
Cupiate u cuntenutu di a cartella radice "/var/www/sites/wordpress/" di u situ web "/var/www/sites/site1/".
Siccomu avemu copiatu i fugliali via a cunsola cù i permessi di root, cambiamu u pruprietariu di a cartella "/var/www/sites/" cumpresu u cuntenutu di "virtual" . Questu hè necessariu per permette l'accessu cumpletu per a cunnessione ftp via u cliente.
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. Crea una basa di dati per WordPress
Accedi à phpMyAdmin è cliccate "Crea basa di dati". Specificate un nome di basa di dati arbitrariu, in u nostru casu "wordpress_db" è cliccate u buttone "Crea".
Selezziunate a nova basa di dati in a sezzione di manca è cliccate "Privilegi"
Dopu cliccate nant'à "Aghjunghje un contu d'utilizatore".
Inserite u login è a password ( wpservice / Qwe123 ) in a finestra aperta, verificate "Cuncede tutti i privilegi in u wordpress_db" è cliccate "Next".
In a pagina dopu, cliccate nant'à "Annulla tuttu" per resettà tutti i privilegi à u livellu di a basa di dati è cliccate nant'à "Prossimu".
3. Configurazione di WordPress in un servitore Linux
Andate à u repertoriu radicali di u vostru situ web è copiate u schedariu di cunfigurazione da u mudellu
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Aprite u schedariu "wp-config.php" è inserite i parametri di cunnessione à a basa di dati chì avemu creatu à u passu precedente è salvate i cambiamenti.
4. Installa CMS WordPress
Aprite u ligame seguente in u navigatore "http://[indirizzu_ip_di_u_server]/wp-admin/install.php".
Riempite tutti i campi è cliccate "Installà WordPress" . Impostate un nome d'utilizatore è una password aleatorii. In u nostru casu, hè wpadmin è Qwe123 di cunsiguenza.
Questi dettagli seranu utilizati per accede à WordPress.
Dopu avè finitu l'installazione, apre u ligame "http://[indirizzu_ip_di_u_server]/wp-login.php" , inserisci i dettagli d'accessu è cunnettatevi à WordPress.
Duvete vede unu di i mudelli di WordPress in a pagina principale.
A cunfigurazione hè finita.
Dettagli di accessu à WordPress:
- http://[server’s_ip_address]/wp-login.php
- Login: wpadmin
- Password: Qwe123