Хајде да шифрујемо (Цертбот)
Инсталирајте НодеЈС
Инсталирајте Нгинк
Инсталирајте Гхост
Покрени Гхост упорно
Закључак
Гхост је платформа за блогове отвореног кода која постаје све популарнија међу програмерима и обичним корисницима од свог издања 2013. године. Фокусира се на садржај и блоговање . Најпривлачнија ствар код Гхост-а је његов једноставан, чист и прилагодљив дизајн. Своје постове на блогу можете писати са мобилног телефона. Садржај за Гхост је написан користећи Маркдовн језик.
У овом водичу ћемо поставити и применити сигуран Гхост блог на ЦентОС 7 ВПС користећи Лет'с Енцрипт, Ноде.јс и Нгинк.
Хајде да шифрујемо (Цертбот)
Пре него што започнете овај корак, уверите се да сте поставили ДНС записе за свој домен.
Користићемо Лет'с Енцрипт Цертифицате Аутхорити и његов Цертбот клијент за добијање ТЛС сертификата за наш блог Гхост. Не заборавите да замените све инстанце example.comса именом вашег домена.
Систем ажурирања:
yum check-update && yum update
Инсталирајте развојне алате:
yum groupinstall -y 'Development Tools'
Омогућите ЕПЕЛ (Ектра Пацкагес фор Ентерприсе Линук) спремиште.
# 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
Инсталирајте Цертбот (ака Лет'с Енцрипт клијент):
yum install -y certbot
Проверите верзију:
certbot --version
# certbot 0.9.3
Добити сертификат:
certbot certonly -d example.com -d www.example.com --email john.doe@mail.com --agree-tos --standalone
Након проласка кроз претходне кораке, ваш сертификат и приватни кључ ће бити у /etc/letsencrypt/live/example.comдиректоријуму.
Инсталирајте НодеЈС
Гхост тренутно подржава само верзије чвора 0.12.к , 4.2+ и 6.9+ .
Инсталираћемо препоручену верзију за Гхост која је Node v4.x argon LTSу време писања овог текста .
Преузмите и инсталирајте ЛТС верзију Ноде.јс:
curl --silent --location https://rpm.nodesource.com/setup_4.x | bash -
yum --disablerepo "*" --enablerepo "nodesource" install -y nodejs
Проверите верзију чвора и НПМ-а:
node -v && npm -v
# v4.7.2
# 2.15.11
Инсталирајте Нгинк
Покрените vi /etc/yum.repos.d/nginx.repoи копирајте/налепите доле наведене директиве и сачувајте и изађите:
[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1
Преузмите и инсталирајте Нгинк:
yum install -y nginx
Проверите верзију Нгинк-а:
nginx -v
# nginx version: nginx/1.11.8
Покрените Нгинк процес и проверите статус:
systemctl start nginx
systemctl status nginx
Конфигуришите Нгинк као обрнути прокси:
vi /etc/nginx/conf.d/ghost.conf
Додајте следеће у /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;
}
}
Проверите синтаксу:
nginx -t
Поново покрените Нгинк:
systemctl restart nginx
Инсталирајте Гхост
Ако желите да угостите више Гхост блогова на истом ВПС-у, свака Гхост инстанца мора да ради на посебном порту.
Направите webrootдиректоријум:
mkdir -p /var/www/
Креирајте Гхост корисника:
useradd -c "Ghost Application" 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
Пребаците се на ghostкорисника:
su - ghost
Инсталирајте Гхост:
cd /var/www/ghost
npm install --production
Конфигуришите Гхост променом urlсвојства productionобјекта унутар config.jsдатотеке:
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',
...
}
...
...
Сачувајте config.jsдатотеку и изађите.
Старт Гхост:
npm start --production
Дух ће сада трчати. И фронт-енд блога и интерфејс администратора су заштићени ХТТПС-ом, а ХТТП/2 такође ради. Можете отворити свој претраживач и посетити сајт на https://example.com. Не заборавите да замените example.comсвојим именом домена.
Покрени Гхост упорно
Ако затворите своју терминалску сесију са својим ВПС-ом , ваш блог ће такође бити угашен. То није добро. Да бисмо ово избегли, користићемо Форевер менаџер процеса. То ће одржати наш блог активним 24/7.
Пребаците се на ghostкорисника ако нисте:
su - ghost
Иди у ghostфасциклу
cd /var/www/ghost
Инсталирајте Форевер менаџер процеса:
npm install forever
Додајте нову foreverкоманду на своју путању:
echo "export PATH=/var/www/ghost/node_modules/forever/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
Започните Гхост са заувек:
NODE_ENV=production /var/www/ghost/node_modules/forever/bin/forever start index.js
У овом тренутку, foreverтребало је да покрене Гхост.
Идите на https://example.com/ghostи креирајте Гхост администраторски налог. Урадите ово што је пре могуће. Да бисте проверили покренуту верзију Гхост-а, идите на https://example.com/ghost/about/након креирања администраторског налога.
Закључак
То је то. Сада имамо потпуно функционалан Гхост блог. Ако желите да промените подразумевану Гхост тему под називом Цаспер у прилагођену, можете само да преузмете и распакујете тему у /var/www/ghost/content/themesфасциклу и изаберете је преко Гхост администраторског интерфејса, који се налази на https://example.com/ghost.