En ĉi tiu artikolo, ni donos al vi paŝon post paŝo instrukciojn pri kiel agordi retan medion sur servilo funkcianta Linukso. Unue, vi devas kompreni, ke tipa retservilo konsistas el kelkaj interagaj komponantoj:
- HTTP-servilo
- interpretisto de programlingvo
- datumbaza mastruma sistemo (DBMS)
Por administri vian retejon, vi ankaŭ devos agordi sistemon pri enhavo-administrado (CMS), interfaco por administrado de datumbazoj kaj aliro por FTP.
Ni konsideru starigi tre popularan agordon Apache-PHP-MySQL(MariaDB) en Linukso. Ni ankaŭ instalos vsftpd ftp-servilon, phpMyAdmin - retan interfacon por datumbaza administrado, kaj enhavadministradsistemon WordPress.
Por komenci, bonvolu mendi VPS-servilon aŭ dediĉitan servilon . Ekzemple, ni uzis virtualan servilon kun statika IP-adreso funkcianta per Ubuntu Server 18.04. Ĉiujn komandojn plenumis la administranto.
Agordo de Apache HTTP Server
1. instalado
apt install apache2
Kiam la instalado finiĝos, malfermu retumilon kaj kontrolu “http://[ip-adreso de la servilo]”
Se vi vidas bonvenan paĝon kiel ĉi tiu sur la supra ekrankopio, tio signifas, ke via HTTP-servilo funkcias.
2. Kreu testan paĝon
La defaŭlta radika dosierujo por la retejo estas “/var/www/html” . Tie vi povas trovi la bonvenan paĝon, kiun vi ĵus vidis. Ni kreu apartan dosierujon “/var/www/sites” por virtualaj gastigantoj kaj subdosierujon “/var/www/sites/site1” kun la indeksa paĝo de via testa retejo.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Rezulte, la dosiero “/var/www/sites/site1/index.html” devus enhavi nur unu linion de html-kodo:
<H1>Welcome</H1>
3. Apache-servila agordo
Agorddosieroj de la retejoj troviĝas en la katalogo “/etc/apache2/sites-available/” . Ni kreu agordodosieron por nova virtuala gastiganto, prenante la defaŭltan agordon el la dosiero “000-default.conf” kiel bazon.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Malfermu la dosieron “site1.conf” kaj ŝanĝu la atributon “DocumentRoot” . Metu la vojon al via retejo kiel valoron, do en nia kazo ĝi estas “/var/www/sites/site1”
En ĉi tiu etapo ni ne bezonas agordi la samtempan funkciadon de pluraj retejoj, do ni povas malŝalti la defaŭltan retejon kaj ebligi la novan retejon. Reŝargi la servilan agordon por apliki la ŝanĝojn.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Malfermu la ligilon “http://[servila_ip_adreso]” denove kaj certigu, ke anstataŭ la defaŭlta bonveniga paĝo ni havas nian novan paĝon.
Ni finis agordon de nia HTTP-servilo kaj ni povas daŭrigi al la sekva paŝo.
Agordo de FTP-servilo
1. instalado
Ni instalu nian ftp-servilon kaj aldonan pakaĵon "db-util" , kiun ni bezonos por agordi virtualajn uzantojn.
apt install vsftpd db-util
2. Kreu lokan konton
La vsftpd-servilo permesas al ni agordi alirpermesojn en tre fleksebla maniero. Por niaj taskoj ni devas provizi ftp-uzantojn per la sekvanta:
- plena aliro al la enhavo de "/var/www/sites/";
- malŝalti ĉion supre "/var/www/";
- konekto kun virtuala konto;
Kreu lokan konton "virtualan" sen ensaluta permeso sed kun aliro al la hejma dosierujo "/var/www/" . Ĉi tiu konto estos uzata de ftp-uzantoj por konektiĝi al la servilo.
useradd -d /var/www virtual
"Root" defaŭlte estos la posedanto de la dosierujo "/var/www" . Por ebligi al ftp-uzantoj modifi la enhavon de la retejoj, ni ŝanĝu la posedanton de "/var/www/sites/" inkluzive de subdosierujoj de "virtual".
chown -R virtual:root /var/www/sites
Rezulte, la uzanto "virtuala" povos vidi la enhavon de "/var/www/" kaj skribi en la subdosierujon "/var/www/sites/" .
3. Agordo
La ĉefa agordo estas en la dosiero “/etc/vsftpd.conf” , do ni malfermu ĝin kaj redaktu ĝin jene:
#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. Kreu la datumbazon
Vi bezonos datumbazon por konservi datumojn de virtualaj kontoj.
Unue, ni kreu simplan tekstdosieron "uzantoj.txt" en la hejma dosierujo kaj konservu la alirdetalojn (salutnomo kaj pasvorto) de virtualaj uzantoj en ĉiun duan linion. Ekzemple, ni bezonos virtualan uzanton kun la salutnomo "ftp" kaj pasvorto "Qwe123" . Tiam la dosiero aspektos jene:
ftp
Qwe123
Ni kreu la datumbazon
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Ni modifu la defaŭltan PAM-dosieron “/etc/pam.d/vsftp” jene:
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
Bonvolu noti, ke la dosierpado de la biblioteko "pam_userdb.so" povas esti malsama, sed vi povas ŝanĝi ĝin se necese.
Reŝargi la vsftpd-servilon por apliki ŝanĝojn.
systemctl restart vsftpd
Ni finis agordi la FTP-servilon.
Detaloj pri konekto:
- ftp://[ip_adreso_de_servilo]
- ensalutu: ftp
- pasvorto: Qwe123
PHP-servila agordo
1. Instalado de PHP
Hodiaŭ la plej nova stabila versio de PHP estas php 7.4.5 kiu ne estas inkluzivita en oficialaj Ubuntu-deponejoj. Ni konektu triapartan deponejon kaj instalu la lastan version de PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. Kontrolu
Por ke PHP estu ekzekutita, la retpaĝa dosiero devas havi la finaĵon ".php" . Ni renomu nian testpaĝon:
cd /var/www/sites/site1/
mv index.html index.php
Aldonu la jenan php-linion al la dosiero “/var/www/sites/site1/index.php” , do la dosiero aspektu jene:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Konservu la ŝanĝojn kaj kontrolu la rezulton en la retumilo.
Se vi vidas la rezulton de la funkcio "phpinfo()" , la PHP-interpretilo funkcias ĝuste. Nun ni daŭrigu al la sekva paŝo.
MySQL (MariaDB) agordo
1. instalado
Ni instalu MariaDB kaj PHP-modulon por MySQL kaj poste reŝargu Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Refreŝigu la testpaĝon kaj iru al la sekcio PDO en la PHP-agorda tabelo. Se vi povas trovi la sekcion "PDO_mysql" , tiam tio signifas, ke la pelilo por Mysql estas ĝuste instalita.
Poste ni devos fari la komencan sekurecan agordon de MariaDB kaj agordi la pasvorton por la "root" uzanto, malŝalti malproksiman aliron kaj forigi ĉiujn gastajn kontojn.
mysql_secure_installation
En la unua paŝo, ni devas enigi la pasvorton de la "root" -uzanto por aliri la DBMS-on aŭ premi Enter se ne estas pasvorto. Ĉar ne estas pasvorto agordita por la "root" -uzanto post la instalado, simple premu "Enter".
Bonvolu noti, ke en MariaDB jam ekzistas propraj kontoj, kiuj tute ne rilatas al la kontoj de la operaciumo. Do la sola uzanto, kiun ni traktas en MariaDB, estas "root" (root-uzanto).
Post tio, la agordilo petos nin agordi la pasvorton por la administra uzanto. Tajpu "Y" por konfirmi kaj enigi la novan pasvorton. En nia kazo, ĝi estas "Qwe123".
Respondu "J" al ĉiuj ceteraj demandoj ĝis la fino.
Agordo estas farita!
MariaDB-alirdetaloj:
- Ensaluto: radiko
- Pasvorto: Qwe123
phpMyAdmin agordo
1. instalado
Ni instalu la necesan kromprogramon por PHP - mbstring.
apt install php-mbstring
En la oficiala deponejo estas nur malmoderna versio de phpMyAdmin, do ni instalu la novan permane.
Malfermu la oficialan retejon de la projekto “ https://www.phpmyadmin.net/ ” kaj elŝutu la plej novan arkivon.
Kopiu la arkivon al la servilo en la dosierujo "/var/www/sites/" uzante iun ajn ftp-klienton.
Malarkivigu la dosierujon kaj renomigu ĝin al "phpMyAdmin" . Ne forgesu instali la ilon "unzip" . Vi povas forigi la arkivon post kiam vi malarkivigis ĝin.
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
Kreu la jenan dosierujon “/var/www/sites/phpMyAdmin/tmp” por provizoraj dosieroj kaj ebligu aliron por ĉiuj. Se vi ne faros tion, phpMyAdmin raportos aliron rifuzitan al la provizora dosierujo.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Kreu kaŝnomon
Ĉar phpMyAdmin ne estas aparta virtuala gastiganto kaj situas ekster la radika dosierujo, ni agordu la kaŝnomon.
Malfermu la dosieron “/etc/apache2/mods-available/alias.conf” kaj aldonu ĉi tiun linion:
Alias /pma “/var/www/sites/phpMyAdmin"
ene de ĉi tiu sekcio:
<IfModule alias_module>
</IfModule>
Reŝargi Apache por apliki la ŝanĝojn.
systemctl reload apache2
Kaŝnomo estas agordita, do ni povas aliri phpMyAdmin ĉi tie “http://[ip-adreso de la servilo]/pma”.
3. Preparu la datumbazon
Ĉar ni limigis uzi radikan uzanton dum la komenca agordo de MariaDB, ni devos krei novan konton kun ĉiuj permesoj, kiuj estos uzataj por aliri phpMyAdmin.
Krome, por ebligi pliajn funkciojn de phpMyAdmin ni bezonos servodatumbazon kaj konton por aliri ĝin.
Ni kreu la kontojn
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
Bonvolu noti, ke la datumbaza nomo en la dua peto estas en la spuroj "... ON `phpmyadmin` .* TO 'pma'@'localhost' IDENTIFIED BY ...",
En la rezulto, estos du kontoj kreitaj en MariaDB:
- Ensalutu: pma, Pasvorto: Qwe123Plena aliro, estos uzata por ensaluti al phpMyAdmin
- Ensalutu: pmaservice, Pasvorto: Qwe123La servokonto estas bezonata por ke aldonaj funkcioj funkciu
Ĉe la sekva paŝo, ni agordos ĉi tiujn detalojn en la agordodosiero “config.inc.php”.
Poste ni devos importi la datumbazon el la dosiero “phpMyAdmin/sql/create_tables.sql”.
Ni importu ĝin helpe de phpMyAdmin.
Malfermu la ligilon “http://[ip-adreso de la servilo]/pma”
Enigu la ensaluton “pma” kaj la pasvorton “Qwe123”
Iru al "Importi" , alklaku "Elekti dosieron" kaj elektu la dosieron "sql/create_tables.sql" en la radika dosierujo de phpMyAdmin. Tie supozeble estas la dosierujo "phpMyAdmin" sur via komputilo kun dosieroj. Malarkivigu ĝin se necese.
Alklaku "Sekva" por komenci importadon.
4. Agordo
Ni kopiu la agordan dosieron el la ŝablono
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Ni malfermu la agordodosieron “/var/www/sites/phpMyAdmin/config.inc.php” kaj faru la jenajn ŝanĝojn:
Agordu hazardan 32-signan valoron por la atributo “$cfg['blowfish_secret']” . Uzu por ĝi iun ajn pasvortgeneratoron.
Forigu komentojn el ĉiuj linioj de la sekcio "phpMyAdmin configuration storage settings" kaj agordu la salutnomon kaj pasvorton de la serva konto de MariaDB por la atributoj "controluser" kaj "controlpass" laŭe. En nia kazo, temas pri pmaservice kaj Qwe123.
Konservu la ŝanĝojn.
Aliri detalojn por phpMyadmin:
- http://[server’s_ip_address]/pma/
- Ensalutu: pma
- Pasvorto: Qwe123
Kiel instali kaj agordi WordPress sur Linuksa servilo
1. WordPress pako kaj dosieroj lokigo
Iru al la oficiala retejo de WP “ https://ru.wordpress.org/ ” kaj elŝutu la arkivon al via loka komputilo.
Alŝutu la arkivon al la servilo en la dosierujon "/var/www/sites/" kaj malarkivigu ĝin en la dosierujon "wordpress ".
Kopiu la enhavon de la radika dosierujo “/var/www/sites/wordpress/” de la retejo “/var/www/sites/site1/” .
Ĉar ni kopiis la dosierojn per la konzolo kun administraj permesoj, ni ŝanĝu la posedanton de la dosierujo "/var/www/sites/" inkluzive de la enhavo de "virtual" . Ĉi tio estas necesa por ebligi plenan aliron por ftp-konekto per la kliento.
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. Krei datumbazon por WordPress
Ensalutu al phpMyAdmin kaj alklaku "Krei datumbazon". Specifu arbitran datumbazan nomon, en nia kazo "wordpress_db" kaj alklaku la butonon "Krei".
Elektu la novan datumbazon en la maldekstra sekcio kaj alklaku "Privilegioj"
Poste alklaku "Aldoni uzantokonton".
Enigu la salutnomon kaj pasvorton ( wpservice / Qwe123 ) en la malfermita fenestro, marku "Donu ĉiujn privilegiojn en la wordpress_db" kaj alklaku "Sekva".
Sur la sekva paĝo, alklaku "Nuligi ĉion" por restarigi ĉiujn privilegiojn je la datumbaza nivelo kaj alklaku "Sekva".
3. WordPress-agordo sur Linuksa servilo
Iru al la radika dosierujo de via retejo kaj kopiu la agordan dosieron el la ŝablono
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Malfermu la dosieron "wp-config.php" kaj enigu la datumbazajn konektoparametrojn, kiujn ni kreis ĉe la antaŭa paŝo, kaj konservu la ŝanĝojn.
4. Instalu CMS WordPress
Malfermu la jenan ligilon en la retumilo “http://[ip-adreso de la servilo]/wp-admin/install.php”.
Plenigu ĉiujn kampojn kaj alklaku "Instali WordPress" . Agordu hazardan uzantnomon kaj pasvorton. En nia kazo, ĝi estas wpadmin kaj Qwe123 laŭe.
Ĉi tiuj detaloj estos uzataj por aliri WordPress.
Post kiam vi finos la instaladon, malfermu la ligilon “http://[ip-adreso de la servilo]/wp-login.php” , enigu la alirdetalojn, kaj ensalutu al WordPress.
Vi devus vidi unu el la WordPress-ŝablonoj sur la ĉefa paĝo.
La agordo estas finita.
Detaloj pri aliro de WordPress:
- http://[server’s_ip_address]/wp-login.php
- Ensalutu: wpadmin
- Pasvorto: Qwe123