Ghost - pradžios vadovas
Ghost yra atvirojo kodo tinklaraščių ir publikavimo platforma su moderniu redaktoriumi, narystėmis, naujienlaiškiais ir integruotu SEO. Šiame serveryje iš anksto įdiegti Ghost, MySQL, Nginx ir Certbot – domenas, administratoriaus el. paštas ir slaptažodis, kuriuos nurodėte užsakydami, jau sukonfigūruoti.
1 žingsnis – Patikrinkite, ar Ghost veikia
Jūsų serverio IP adresas ir root slaptažodis nurodyti kliento skydelio puslapyje Server Details. Tinklaraštis jau pasiekiamas IP adresu:
- Tinklaraštis:
http://your.server.ip - Administravimo skydelis:
http://your.server.ip/ghost/
Prie administravimo skydelio prisijunkite el. paštu ir slaptažodžiu, kuriuos įvedėte užsakydami. Jei puslapis įsikelia ir galite prisijungti, Ghost veikia teisingai.
Jei serverį patalpinote už VyOS maršrutizatoriaus privačiame tinkle, nustatykite 22 (SSH), 80 (HTTP) ir 443 (HTTPS) prievadų peradresavimą. Ghost yra viešas tinklaraštis, kuris turi būti pasiekiamas iš interneto.
2 žingsnis – Domeno ir SSL konfigūravimas (rekomenduojama)
Jei užsakydami nurodėte domeną, jis jau sukonfigūruotas Ghost. Nukreipkite domeno DNS A įrašą į serverio IP, tada prisijunkite per SSH ir įjunkite SSL:
ssh root@your.server.ip
/opt/setup/get-ssl.sh your-domain.com
Scenarijus gaus Let’s Encrypt sertifikatą, sukonfigūruos Nginx HTTPS ir automatiškai atnaujins Ghost URL. Baigus:
https://your-domain.com (blog)
https://your-domain.com/ghost/ (admin panel)
Domeno keitimas vėliau
Jei po sąrankos reikia pakeisti domeną:
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
Tada paleiskite /opt/setup/get-ssl.sh new-domain.com , kad gautumėte SSL sertifikatą naujam domenui.
Po įdiegimo
Fail2Ban – apsauga nuo slaptažodžių spėjimo atakų
Jūsų serveryje įdiegta Fail2Ban iš anksto sukonfigūruotas apsaugoti SSH nuo slaptažodžių spėjimo atakų.
| Taisyklė | Maks. bandymų | Blokavimo trukmė |
|---|---|---|
| SSH | 5 nesėkmingi prisijungimai | 10 minučių |
Naudingos komandos:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
Jei netyčia užsiblokavote, prisijunkite per VNC konsolę kliento skydelyje ir atblokuokite savo IP.
Turinio valdymas
Administravimo skydelyje galite:
- Posts – kurti tinklaraščio straipsnius raiškiuoju redaktoriumi (Markdown, paveikslėliai, įterpimai, kortelės)
- Pages – kurti statinius puslapius (Apie, Kontaktai ir kt.)
- Tags – tvarkyti turinį žymėmis ir vidinėmis žymėmis
- Members – valdyti prenumeratorius ir mokamas narystes
- Newsletters – siųsti el. pašto naujienlaiškius prenumeratoriams
Temos pritaikymas
Pagal numatytuosius nustatymus Ghost pateikiamas su tema Casper . Norėdami keisti ar pritaikyti temas:
- Settings > Design – pritaikykite spalvas, šriftus ir prekės ženklą
- Settings > Design > Change theme – įdiekite naują temą iš Ghost Marketplace arba įkelkite ZIP failą
Temų failai saugomi /var/www/ghost/content/themes/.
Atsarginės kopijos
Ghost turi integruotą eksportą skiltyje Settings > Labs > Export (įrašų ir nustatymų JSON kopija). Pilnai kopijai su paveikslėliais ir duomenų baze:
# 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
Paslaugų valdymas
# 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
Atnaujinimai
# Update Ghost
cd /var/www/ghost
sudo -u ghost ghost update
# Update OS packages
apt update && apt upgrade -y
Įdiegta programinė įranga
| Komponentas | Versija |
|---|---|
| Ubuntu | 24.04 LTS |
| Ghost | 5.x |
| Node.js | 22.x LTS |
| MySQL | 8.x |
| Nginx | 1.24 |
| Certbot | Naujausia |
| Fail2Ban | 1.0.2 |
Trikčių šalinimas
| Problema | Sprendimas |
|---|---|
| 502 Bad Gateway | Ghost galbūt neveikia. Paleiskite iš naujo: cd /var/www/ghost && sudo -u ghost ghost restart |
| Nepavyksta prisijungti prie administravimo skydelio | Naudokite el. paštą ir slaptažodį iš užsakymo. Slaptažodis turi būti bent 10 simbolių |
| SSL sertifikato gauti nepavyko | Patikrinkite, ar DNS A įrašas nukreiptas į serverio IP. Išsamiau žr. /opt/setup/get-ssl.log |
| Ghost atnaujinimas nepavyksta | Patikrinkite Node.js suderinamumą: node --version. Žr. Ghost Node.js support |
| MySQL prisijungimo klaida | Patikrinkite MySQL: systemctl status mysql. Jei reikia, paleiskite iš naujo: systemctl restart mysql |
| No space left on device | Patikrinkite diską: df -h /. Išvalykite nenaudojamas temas kataloge /var/www/ghost/content/themes/ |
| Užblokavo Fail2Ban | Atblokuokite savo IP per VNC konsolę kliento skydelyje |
| Pamiršote root slaptažodį | Atkurkite jį per VNC konsolę kliento skydelyje |