Table of Contents

Ghost - ghid de inițiere

Ghost este o platformă open-source de blog și publicare, cu editor modern, abonamente, newslettere și SEO integrat. Serverul vine cu Ghost, MySQL, Nginx și Certbot preinstalate – domeniul, e-mailul de administrator și parola specificate la comandă sunt deja configurate.


Pasul 1 – Verificați funcționarea Ghost

Adresa IP și parola root a serverului sunt afișate pe pagina Server Details din panoul clientului. Blogul este deja accesibil prin adresa IP:

  • Blog: http://your.server.ip
  • Panou de administrare: http://your.server.ip/ghost/

Autentificați-vă în panoul de administrare cu e-mailul și parola introduse la comandă. Dacă pagina se încarcă și vă puteți conecta, Ghost funcționează corect.

Dacă ați plasat serverul în spatele unui router VyOS într-o rețea privată, configurați redirecționarea porturilor 22 (SSH), 80 (HTTP) și 443 (HTTPS). Ghost este un blog public care trebuie să fie accesibil de pe internet.


Pasul 2 – Configurarea domeniului și SSL (recomandat)

Dacă ați introdus un domeniu la comandă, acesta este deja configurat în Ghost. Direcționați înregistrarea DNS A a domeniului către IP-ul serverului, apoi conectați-vă prin SSH și activați SSL:

ssh root@your.server.ip
/opt/setup/get-ssl.sh your-domain.com

Scriptul va obține un certificat Let’s Encrypt, va configura Nginx pentru HTTPS și va actualiza automat URL-ul Ghost. După finalizare:

https://your-domain.com          (blog)
https://your-domain.com/ghost/   (admin panel)

Schimbarea ulterioară a domeniului

Dacă trebuie să schimbați domeniul după configurare:

cd /var/www/ghost
sudo -u ghost ghost config url http://new-domain.com
sudo -u ghost ghost restart
sed -i "s/server_name .*/server_name new-domain.com;/" /etc/nginx/sites-available/ghost
nginx -t && systemctl reload nginx

Apoi rulați /opt/setup/get-ssl.sh new-domain.com pentru a obține un certificat SSL pentru noul domeniu.


După instalare

Fail2Ban – protecție împotriva atacurilor brute-force

Serverul dumneavoastră include Fail2Ban preconfigurat pentru a proteja SSH împotriva atacurilor brute-force.

Regulă Încercări maxime Durata blocării
SSH5 autentificări eșuate10 minute

Comenzi utile:

# Check banned IPs
fail2ban-client status sshd

# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4

Dacă vă blocați accidental, conectați-vă prin consola VNC din panoul clientului și deblocați-vă IP-ul.

Administrarea conținutului

În panoul de administrare puteți:

  • Posts – crea articole de blog cu editorul avansat (Markdown, imagini, conținut încorporat, carduri)
  • Pages – crea pagini statice (Despre, Contact etc.)
  • Tags – organiza conținutul cu etichete și etichete interne
  • Members – administra abonații și abonamentele plătite
  • Newsletters – trimite newslettere prin e-mail abonaților

Personalizarea temei

Ghost vine implicit cu tema Casper . Pentru a schimba sau personaliza temele:

  • Settings > Design – personalizați culorile, fonturile și branding-ul
  • Settings > Design > Change theme – instalați o temă nouă din Ghost Marketplace sau încărcați un fișier ZIP

Fișierele temelor sunt stocate în /var/www/ghost/content/themes/.

Backup-uri

Ghost are un export integrat în Settings > Labs > Export (backup JSON al articolelor și setărilor). Pentru un backup complet, inclusiv imagini și baza de date:

# Content and themes
tar czf /root/ghost-backup-$(date +%Y%m%d).tar.gz /var/www/ghost/content

# MySQL database
mysqldump ghost > /root/ghost-db-$(date +%Y%m%d).sql

Administrarea serviciilor

# Check Ghost status
cd /var/www/ghost && sudo -u ghost ghost status

# Restart Ghost
cd /var/www/ghost && sudo -u ghost ghost restart

# View Ghost logs
cd /var/www/ghost && sudo -u ghost ghost log

# Stack services (managed by systemd)
systemctl status mysql nginx

Actualizări

# Update Ghost
cd /var/www/ghost
sudo -u ghost ghost update

# Update OS packages
apt update && apt upgrade -y

Software inclus

Componentă Versiune
Ubuntu24.04 LTS
Ghost5.x
Node.js22.x LTS
MySQL8.x
Nginx1.24
CertbotCea mai recentă
Fail2Ban1.0.2

Depanare

Problemă Soluție
502 Bad Gateway Este posibil ca Ghost să nu ruleze. Reporniți: cd /var/www/ghost && sudo -u ghost ghost restart
Nu vă puteți autentifica în panoul de administrare Folosiți e-mailul și parola din comandă. Parola trebuie să aibă cel puțin 10 caractere
Certificatul SSL a eșuat Verificați că înregistrarea DNS A indică IP-ul serverului. Detalii în /opt/setup/get-ssl.log
Actualizarea Ghost eșuează Verificați compatibilitatea Node.js: node --version. Vedeți Ghost Node.js support
Eroare de conectare la MySQL Verificați MySQL: systemctl status mysql. Reporniți dacă este necesar: systemctl restart mysql
No space left on device Verificați discul: df -h /. Ștergeți temele nefolosite din /var/www/ghost/content/themes/
Blocat de Fail2Ban Deblocați-vă IP-ul prin consola VNC din panoul clientului
Ați uitat parola root Resetați-o prin consola VNC din panoul clientului