Le të Enkriptojmë (Certbot)
Instaloni NodeJS
Instaloni Nginx
Instaloni Ghost
Vraponi Ghost me këmbëngulje
konkluzioni
Ghost është një platformë blogimi me burim të hapur që po fiton popullaritet midis zhvilluesve dhe përdoruesve të zakonshëm që nga publikimi i tij në 2013. Ai e vë fokusin në përmbajtje dhe në blog . Gjëja më tërheqëse për Ghost është dizajni i tij i thjeshtë, i pastër dhe i përgjegjshëm. Ju mund të shkruani postimet tuaja në blog nga një telefon celular. Përmbajtja për Ghost është shkruar duke përdorur gjuhën Markdown.
Në këtë udhëzues ne do të konfigurojmë dhe vendosim një blog të sigurt Ghost në një CentOS 7 VPS duke përdorur Let's Encrypt, Node.js dhe Nginx.
Le të Enkriptojmë (Certbot)
Përpara se të filloni këtë hap, sigurohuni që të keni vendosur regjistrime DNS për domenin tuaj.
Ne do të përdorim Let's Encrypt Certificate Authority dhe klientin e tij Certbot për të marrë certifikata TLS për blogun tonë Ghost. Mos harroni të zëvendësoni të gjitha rastet e example.comme emrin e domenit tuaj.
Sistemi i përditësimit:
yum check-update && yum update
Instaloni mjetet e zhvillimit:
yum groupinstall -y 'Development Tools'
Aktivizo depon e EPEL (Paketa Shtesë për Enterprise Linux).
# Certbot is packaged in EPEL (Extra Packages for Enterprise Linux). To use Certbot, you must first enable the EPEL repository.
yum install -y epel-release
Instaloni Certbot (aka Let's Encrypt klient):
yum install -y certbot
Kontrolloni versionin:
certbot --version
# certbot 0.9.3
Merrni certifikatën:
certbot certonly -d example.com -d www.example.com --email john.doe@mail.com --agree-tos --standalone
Pasi të keni kaluar hapat e mëparshëm, certifikata juaj dhe çelësi privat do të jenë në /etc/letsencrypt/live/example.comdrejtori.
Instaloni NodeJS
Ghost aktualisht mbështet vetëm versionet Node 0.12.x , 4.2+ dhe 6.9+ .
Ne do të instalojmë versionin e rekomanduar për Ghost i cili është Node v4.x argon LTSnë kohën e këtij shkrimi.
Shkarkoni dhe instaloni versionin LTS të Node.js:
curl --silent --location https://rpm.nodesource.com/setup_4.x | bash -
yum --disablerepo "*" --enablerepo "nodesource" install -y nodejs
Kontrolloni versionin Node dhe NPM:
node -v && npm -v
# v4.7.2
# 2.15.11
Instaloni Nginx
Ekzekutoni vi /etc/yum.repos.d/nginx.repodhe kopjoni/ngjitni direktivat e mëposhtme dhe ruani dhe dilni:
[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1
Shkarkoni dhe instaloni Nginx:
yum install -y nginx
Kontrolloni versionin Nginx:
nginx -v
# nginx version: nginx/1.11.8
Filloni procesin Nginx dhe kontrolloni statusin:
systemctl start nginx
systemctl status nginx
Konfiguro Nginx si një përfaqësues të kundërt:
vi /etc/nginx/conf.d/ghost.conf
Shtoni sa vijon në /etc/nginx/conf.d/ghost.conf:
server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:2368;
}
}
Kontrollo sintaksën:
nginx -t
Rinisni Nginx:
systemctl restart nginx
Instaloni Ghost
Nëse dëshironi të strehoni shumë blogje Ghost në të njëjtin VPS, çdo shembull Ghost duhet të funksionojë në një port të veçantë.
Krijoni webrootdrejtorinë:
mkdir -p /var/www/
Krijo një përdorues Ghost:
useradd -c "Ghost Application" ghost
Shkarkoni dhe instaloni Ghost:
cd /var/www
wget https://ghost.org/zip/ghost-latest.zip
unzip ghost-latest.zip -d ghost
chown -R ghost:ghost /var/www/ghost/
rm ghost-latest.zip
Kalo te ghostpërdoruesi:
su - ghost
Instaloni Ghost:
cd /var/www/ghost
npm install --production
Konfiguro Ghost duke ndryshuar urlvetinë e productionobjektit brenda config.jsskedarit:
cp config.example.js config.js
vi config.js
config = {
// ### Production
// When running Ghost in the wild, use the production environment.
// Configure your URL and mail settings here
production: {
url: 'https://example.com',
...
}
...
...
Ruani config.jsskedarin dhe dilni.
Start Ghost:
npm start --production
Ghost tani do të funksionojë. Si ndërfaqja e përparme e blogut ashtu edhe ndërfaqja e administratorit janë të siguruara me HTTPS dhe HTTP/2 po funksionon gjithashtu. Mund të hapni shfletuesin tuaj dhe të vizitoni sajtin në https://example.com. Mos harroni të zëvendësoni example.comme emrin e domain.
Vraponi Ghost me këmbëngulje
Nëse mbyllni sesionin tuaj të terminalit me VPS-në tuaj, blogu juaj gjithashtu do të shkojë poshtë. Kjo nuk është mirë. Për të shmangur këtë, ne do të përdorim menaxherin e procesit Forever. Kjo do ta mbajë blogun tonë aktiv 24/7.
Kalo te ghostpërdoruesi nëse nuk je:
su - ghost
Shkoni te ghostdosja
cd /var/www/ghost
Instaloni menaxherin e procesit Forever:
npm install forever
Shtoni foreverkomandën e re në rrugën tuaj:
echo "export PATH=/var/www/ghost/node_modules/forever/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
Fillo Ghost me përgjithmonë:
NODE_ENV=production /var/www/ghost/node_modules/forever/bin/forever start index.js
Në këtë pikë, foreverduhet të kishte filluar Ghost.
Shkoni te https://example.com/ghostdhe krijoni një llogari administratori Ghost. Bëjeni këtë sa më shpejt të jetë e mundur. Për të kontrolluar versionin ekzekutiv të Ghost, shkoni te https://example.com/ghost/about/pas krijimit të llogarisë së administratorit.
konkluzioni
Kjo eshte. Tani kemi një blog Ghost plotësisht funksional. Nëse dëshironi të ndryshoni temën e paracaktuar të Ghost të quajtur Casper në një të personalizuar, thjesht mund ta shkarkoni dhe ta çzipni temën në /var/www/ghost/content/themesdosje dhe ta zgjidhni atë nëpërmjet ndërfaqes së administratorit Ghost, që ndodhet në https://example.com/ghost.