WonderCMS je bezplatný, open source, jednoduchý a lehký systém pro správu obsahu pro vytváření jednoduchých webových stránek a blogů. Je to CMS s plochým souborem a nevyžaduje žádnou databázi. Proces instalace je velmi jednoduchý a nevyžaduje žádnou počáteční konfiguraci. Nabízí bohatou sadu funkcí včetně podpory WYSIWYG, flexibilního rámce CSS, přátelského k SEO a mnoha dalších.
V tomto tutoriálu vám ukážeme, jak nainstalovat WonderCMS na CentOS 8 a zabezpečit jej pomocí Let's Encrypt SSL.
Předpoklady
- Server se systémem CentOS 8.
- Na vašem serveru je nakonfigurováno heslo uživatele root.
Nainstalujte Apache a PHP
Nejprve nainstalujte webový server Apache, PHP a další rozšíření PHP pomocí následujícího příkazu:
dnf install httpd php php-mysqlnd php-curl php-opcache php-xml php-xmlrpc php-gd php-mbstring php-zip php-json wget unzip git -y
Po dokončení instalace otevřete soubor php.ini a změňte některá nastavení:
nano /etc/php.ini
Změňte hodnotu podle svého požadavku:
memory_limit = 128M post_max_size = 32M upload_max_filesize = 16M max_execution_time = 300 date.timezone = Asia/Kolkata
Po dokončení uložte a zavřete soubor. Poté spusťte službu Apache a restartujte ji, aby se spustila po restartu systému pomocí následujícího příkazu:
systemctl start httpd
systemctl enable httpd
Stáhněte si WonderCMS
Nejprve si stáhněte nejnovější verzi WonderCMS z úložiště Git:
cd /var/www/html
git clone https://github.com/robiso/wondercms.git
Po dokončení stahování udělte staženému adresáři správná oprávnění pomocí následujícího příkazu:
chown -R apache:apache /var/www/html/wondercms
chmod -R 775 /var/www/html/wondercms
Konfigurace Apache pro WonderCMS
Nejprve vytvořte nový konfigurační soubor virtuálního hostitele Apache pro WonderCMS pomocí následujícího příkazu:
nano /etc/httpd/conf.d/wondercms.conf
Přidejte následující řádky:
<VirtualHost *:80> ServerName wonder.linuxbuz.com DirectoryIndex index.php DocumentRoot /var/www/html/wondercms Redirect /wondercms/loginURL /loginURL ErrorLog /var/log/httpd/linuxbuz.com-error.log CustomLog /var/log/httpd/linuxbuz.com-access.log combined <Directory /var/www/html/wondercms> Options FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
Uložte a zavřete soubor. Poté restartujte službu Apache pomocí následujícího příkazu:
systemctl restart httpd
Stav služby Apache můžete také zkontrolovat pomocí následujícího příkazu:
systemctl status httpd
Měli byste vidět následující výstup:
? httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/httpd.service.d ??php-fpm.conf Active: active (running) since Wed 2020-02-19 08:51:34 EST; 1min 25s ago Docs: man:httpd.service(8) Main PID: 4716 (httpd) Status: "Total requests: 6; Idle/Busy workers 100/0;Requests/sec: 0.0759; Bytes served/sec: 812 B/sec" Tasks: 278 (limit: 12558) Memory: 43.1M CGroup: /system.slice/httpd.service ??4716 /usr/sbin/httpd -DFOREGROUND ??4718 /usr/sbin/httpd -DFOREGROUND ??4719 /usr/sbin/httpd -DFOREGROUND ??4720 /usr/sbin/httpd -DFOREGROUND ??4721 /usr/sbin/httpd -DFOREGROUND ??4935 /usr/sbin/httpd -DFOREGROUND Feb 19 08:51:34 centos8 systemd[1]: Starting The Apache HTTP Server...
Zabezpečte WonderCMS pomocí Let's Encrypt SSL
Dále nainstalujte klienta Certbot Let's Encrypt pomocí následujícího příkazu:
wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto
Nyní spusťte následující příkaz, abyste získali a nainstalovali certifikát SSL pro svůj web WonderCMS.
certbot-auto --apache -d wonder.linuxbuz.com
Výše uvedený příkaz nejprve nainstaluje všechny požadované závislosti na váš server. Po instalaci budete požádáni o zadání e-mailové adresy a přijetí podmínek služby, jak je uvedeno níže:
Poznámka :Pokud se zobrazí jakákoli chyba související s certifikátem SSL, restartujte službu Apache a znovu spusťte výše uvedený příkaz.
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Obtaining a new certificate Performing the following challenges: http-01 challenge for wonder.linuxbuz.com Waiting for verification... Cleaning up challenges Deploying Certificate to VirtualHost /etc/nginx/conf.d/wondercms.conf
Dále budete muset zvolit, zda chcete přesměrovat provoz HTTP na HTTPS, jak je znázorněno níže:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Zadejte 2 a stiskněte Enter pokračovat. Po dokončení instalace byste měli vidět následující výstup:
Redirecting all traffic on port 80 to ssl in /etc/nginx/conf.d/wondercms.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://wonder.linuxbuz.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=wonder.linuxbuz.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/wonder.linuxbuz.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/wonder.linuxbuz.com/privkey.pem Your cert will expire on 2020-03-23. To obtain a new or tweaked version of this certificate in the future, simply run certbot-auto again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot-auto renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Konfigurace brány firewall a SELinux
Dále budete muset vytvořit pravidlo brány firewall pro povolení služeb HTTP a HTTPS z externích sítí. Můžete to povolit pomocí následujícího příkazu:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
Dále budete muset nakonfigurovat SELinux pro WonderCMS. SELinux můžete nakonfigurovat pomocí následujícího příkazu:
setsebool httpd_can_network_connect on -P
chcon -R -u system_u -t httpd_sys_rw_content_t -r object_r /var/www/html/wondercms
Nakonec restartujte službu Apache, aby se změny projevily:
systemctl restart httpd
Přístup k WonderCMS
Nyní otevřete webový prohlížeč a zadejte adresu URL https://wonder.linuxbuz.com. Budete přesměrováni na domovskou stránku WonderCMS:
Nyní zkopírujte heslo z výše uvedené stránky a klikněte na Click pro přihlášení knoflík. Měli byste vidět následující stránku:
Vložte heslo a klikněte na Přihlásit knoflík. Měli byste vidět následující stránku:
Dále klikněte na Nastavení => Zabezpečení . Měli byste vidět následující stránku:
Změňte svou přihlašovací URL, heslo a klikněte na ZMĚNIT HESLO knoflík.
Závěr
Gratulujeme! úspěšně jste nainstalovali a zabezpečili WonderCMS na CentOS 8 pomocí Let's Encrypt SSL. Nyní můžete snadno hostovat svůj vlastní blog a webové stránky pomocí WonderCMS.