Хајде да шифрујемо
Инсталирајте НодеЈС
Инсталирајте Нгинк
Инсталирајте Гхост
Покрени Гхост упорно
Закључак
Гхост је платформа за блогове отвореног кода која постаје све популарнија међу програмерима и обичним корисницима од свог издања 2013. године. Фокусира се на садржај и блоговање . Најпривлачнија ствар код Гхост-а је његов једноставан, чист и прилагодљив дизајн. Своје постове на блогу можете писати са мобилног телефона. Садржај за Гхост је написан користећи Маркдовн језик.
У овом водичу ћемо поставити и применити сигуран Гхост блог на Убунту 16.04 ВПС користећи Лет'с Енцрипт, најновију ЛТС верзију Ноде.јс, најновију главну грану Нгинк-а и најновију верзију Гхост-а.
Хајде да шифрујемо
Пре него што започнете овај корак, уверите се да сте поставили ДНС записе за свој домен.
Користићемо Лет'с Енцрипт за добијање ТЛС сертификата за наш Гхост блог. Не заборавите да замените све инстанце example.comса именом вашег домена.
Систем ажурирања:
apt update && apt upgrade -y
Инсталирајте потребне алате:
apt install -y zip build-essential
Инсталирајте Лет'с Енцрипт клијент:
apt install -y letsencrypt
Проверите верзију:
letsencrypt --version
# letsencrypt 0.4.1
Добити сертификат
letsencrypt 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+ .
Инсталираћемо препоручену верзију за Гхост која је v4 argon LTSу време писања овог текста .
Преузмите и инсталирајте ЛТС верзију Ноде.јс:
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
apt install -y nodejs
Проверите верзију чвора и НПМ-а:
node -v && npm -v
# v4.6.2
# 2.15.11
Инсталирајте Нгинк
Преузмите и инсталирајте Нгинк:
wget https://nginx.org/keys/nginx_signing.key && apt-key add nginx_signing.key
rm nginx_signing.key
printf "deb https://nginx.org/packages/mainline/ubuntu/ xenial nginx \ndeb-src https://nginx.org/packages/mainline/ubuntu/ xenial nginx \n" >> /etc/apt/sources.list.d/nginx.list
apt update && apt install nginx -y
Проверите верзију Нгинк-а:
nginx -v
# nginx version: nginx/1.11.5
Покрените Нгинк процес:
service nginx start
Конфигуришите Нгинк као обрнути прокси:
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
Поново покрените Нгинк:
service nginx restart
Инсталирајте Гхост
Ако желите да угостите више Гхост блогова на истом ВПС-у, свака Гхост инстанца мора да ради на посебном порту.
Направите webrootдиректоријум:
mkdir -p /var/www/
Креирајте Гхост корисника:
adduser 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и креирајте Гхост администраторски налог. Урадите ово што је пре могуће.
Закључак
То је то. Сада имамо потпуно функционалан Гхост блог. Ако желите да промените подразумевану Гхост тему под називом Цаспер у прилагођену, можете само да преузмете и распакујете тему у /var/www/ghost/content/themesфасциклу и изаберете је преко Гхост администраторског интерфејса, који се налази на https://example.com/ghost.