Креирање Јекилл блога на Убунту 16.04
Користите другачији систем? Јекилл је одлична алтернатива ВордПресс-у за блоговање или дељење садржаја. Не захтева никакве базе података и веома је лако и
Гхост је платформа за блогове отвореног кода која постаје све популарнија међу програмерима и обичним корисницима од свог издања 2013. године. Фокусира се на садржај и блоговање. Најпривлачнија ствар код Гхост-а је његов једноставан, чист и прилагодљив дизајн. Своје постове на блогу можете писати са мобилног телефона. Садржај за Гхост је написан користећи Маркдовн језик. Гхост је савршен за појединце или мале групе писаца.
У овом упутству ћемо поставити и распоредити сигурну Гхост в0.11.к ЛТС блог на ЦентОС 7.3 ВПС користећи Лет је Шифруј , Цертбот , Ноде.јс , НПМ , Апацхе и МиСКЛ .
Проверите верзију ЦентОС-а:
cat /etc/centos-release
# CentOS Linux release 7.3.1611 (Core)
Креирајте новог корисника који није роот :
useradd -c "John Doe" johndoe && passwd johndoe
Учините га суперкорисником додавањем у wheel
групу:
usermod -aG wheel johndoe
Пређи на новог корисника:
su - johndoe
Ажурирајте софтвер свог оперативног система:
sudo yum check-update || sudo yum update -y
Подесите временску зону:
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Инсталирајте развојне алате:
sudo yum groupinstall -y 'Development Tools'
Инсталирајте Вим уређивач текста:
sudo yum install -y vim
Поново покрените систем ако је потребно:
sudo shutdown -r now
NOTE: Before starting this step, ensure that you have set DNS records for your domain.
Користићемо Лет'с Енцрипт ЦА и ЕФФ Цертбот клијент да добијемо ССЛ/ТЛС сертификат за наш Гхост блог. Не заборавите да замените све инстанце blog.domain.tld
са именом вашег домена.
Омогућите складиште додатних пакета за Ентерприсе Линук (ЕПЕЛ):
# Certbot is packaged in Extra Packages for Enterprise Linux (EPEL) repository. To use Certbot, you must first enable the EPEL repository.
sudo yum install -y epel-release
Инсталирајте Цертбот (раније Лет'с Енцрипт цлиент ) софтвер за управљање сертификатима направљен са Питхон-ом:
sudo yum install -y certbot
Проверите верзију Цертбота:
certbot --version
# certbot 0.14.1
Набавите РСА сертификат користећи самосталну методу аутентификације (додатак):
sudo certbot certonly --standalone --domains blog.domain.tld --rsa-key-size 2048 --must-staple --email [email protected] --no-eff-email --agree-tos
# IMPORTANT NOTES:
# - Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/blog.domain.tld/fullchain.pem.
# Your cert will expire on YYYY-MM-DD. . . .
# . . .
Након проласка кроз претходне кораке, ваш сертификат и приватни кључ ће бити у /etc/letsencrypt/live/blog.domain.tld
директоријуму.
NOTE: Ghost currently supports Node.js versions 4.5+ and 6.9+ only.
Гхост је изграђен на Ноде.јс. Инсталираћемо препоручену верзију за Гхост која је v6 Boron LTS
у време писања овог текста .
Преузмите и инсталирајте Ноде.јс в6 ЛТС:
sudo curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -
sudo yum install -y nodejs
Проверите Ноде.јс и НПМ верзију:
node -v && npm -v
# v6.11.2
# 3.10.10
Гхост подразумевано долази конфигурисан да користи СКЛите базу података, која не захтева никакву конфигурацију.
Алтернативно, Гхост се такође може користити са МиСКЛ базом података променом конфигурације базе података. Прво морате да креирате базу података и корисника, а затим можете да промените постојећу склите3 конфигурацију.
Преузмите и инсталирајте најновију верзију МиСКЛ-а (тренутно 5.7 ) из званичног МиСКЛ Иум спремишта:
cd /tmp
# Adding the MySQL Yum Repository
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
sudo yum localinstall -y mysql57-community-release-el7-11.noarch.rpm
# Installing MySQL
sudo yum install -y mysql-community-server
Проверите верзију МиСКЛ-а:
mysql --version
# mysql Ver 14.14 Distrib 5.7.19, for Linux (x86_64) using EditLine wrapper
Покрените МиСКЛ Сервер и проверите његов статус:
sudo systemctl start mysqld.service
sudo systemctl status mysqld.service
МиСКЛ верзија 5.7 или новија генерише привремену насумичну лозинку за МиСКЛ root
корисника након инсталације, а лозинка се чува у МиСКЛ датотеци евиденције грешака, која се налази на /var/log/mysqld.log
. Да бисте га открили, користите следећу команду:
sudo grep 'temporary password' /var/log/mysqld.log
Покрените mysql_secure_installation
скрипту да бисте мало заштитили своју базу података:
NOTE: Password Validation Plugin is installed and enabled, so your new password for
root
user needs to be strong (one upper case letter, one lower case letter, one digit, and one special character, and that the total password length is at least 8 characters). If you want to relax that or disable plugin completely (not recommended) consult the official MySQL documentation for how to do that.
sudo mysql_secure_installation
Пријавите се на МиСКЛ као роот корисник:
mysql -u root -p
# Enter password:
Креирајте нову МиСКЛ базу података и корисника:
create database dbname;
grant all on dbname.* to 'user' identified by 'password';
Изађи из МиСКЛ-а:
exit
Download and install the latest mainline version of NGINX from the official NGINX repository:
# Add the NGINX Yum Repository
sudo vim /etc/yum.repos.d/nginx_mainline.repo
# Copy/paste the following into /etc/yum.repos.d/nginx_mainline.repo
[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=1
enabled=1
wget https://nginx.org/keys/nginx_signing.key
sudo rpm --import nginx_signing.key
rm nginx_signing.key
sudo yum install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt nginx-nr-agent
Verify that it is installed by checking the NGINX version:
sudo nginx -v
# nginx version: nginx/1.13.3
Check status, enable and start NGINX service (daemon):
sudo systemctl status nginx.service # inactive (dead)
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
Create /etc/nginx/ssl
directory and generate a new Diffie-Hellman (DH) parameters:
sudo mkdir -p /etc/nginx/ssl
sudo openssl dhparam -out /etc/nginx/ssl/dhparams-2048.pem 2048
Create log directory for blog.domain.tld
virtual host:
sudo mkdir -p /var/log/nginx/blog.domain.tld
Configure NGINX as a HTTP(S) reverse proxy server:
sudo vim /etc/nginx/conf.d/ghost.conf
Paste the following in /etc/nginx/conf.d/ghost.conf
:
# domain: blog.domain.tld
# public: /var/www/ghost
upstream ghost_app {
server 127.0.0.1:2368;
keepalive 32;
}
server {
listen [::]:80 default_server;
listen 80 default_server;
listen [::]:443 ssl http2 default_server;
listen 443 ssl http2 default_server;
server_name blog.domain.tld;
root /var/www/ghost;
error_log /var/log/nginx/blog.domain.tld/error.log;
access_log /var/log/nginx/blog.domain.tld/access.log;
client_max_body_size 100M;
ssl_certificate /etc/letsencrypt/live/blog.domain.tld/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/blog.domain.tld/privkey.pem;
ssl_dhparam ssl/dhparams-2048.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
ssl_prefer_server_ciphers on;
ssl_buffer_size 4K;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50M;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/letsencrypt/live/blog.domain.tld/chain.pem;
resolver 8.8.8.8 8.8.4.4 valid=300s;
location / {
proxy_pass http://ghost_app;
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_hide_header X-Powered-By;
proxy_http_version 1.1;
proxy_set_header Connection "";
}
}
Save and test NGINX configuration for syntax errors:
sudo nginx -t
Reload NGINX configuration:
sudo systemctl reload nginx.service
NOTE: If you want to host multiple Ghost blogs on same VPS, each Ghost instance must be running on a separate port.
Create document root directory:
sudo mkdir -p /var/www/
Create a new ghost user:
sudo useradd -c 'Ghost application' ghost
Download Ghost:
curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.11/Ghost-0.11.11.zip -o ghost.zip
Unzip Ghost into the /var/www/ghost
directory (recommended install location):
sudo unzip -uo ghost.zip -d /var/www/ghost
rm ghost.zip
Move to the new ghost directory:
cd /var/www/ghost
Промените власништво над /var/www/ghost
директоријумом:
sudo chown -R ghost:ghost .
Пређи на новог ghost
корисника:
sudo su - ghost
Идите до корена документа /var/www/ghost
:
cd /var/www/ghost
Инсталирајте Гхост само са производним зависностима. Када се ово заврши, Гхост је инсталиран:
npm install --production
Цонфигуре Дух променом url
, mail
а database
имовина производног објекта унутрашњости config.js
фајла:
cp config.example.js config.js
vim /var/www/ghost/config.js
var path = require('path'),
config;
config = {
// ### Production
// When running Ghost in the wild, use the production environment.
// Configure your URL and mail settings here
production: {
url: 'https://blog.domain.tld',
mail: {
transport: 'SMTP',
options: {
service: 'Mailgun',
auth: {
user: '',
pass: ''
}
}
},
database: {
client: 'mysql',
connection: {
host: '127.0.0.1',
user: 'your_database_user',
password: 'your_database_password',
database: 'your_database_name',
charset: 'utf8'
},
debug: false
},
// . . .
// . . .
NOTE: You should configure
Покрените Гхост у производном окружењу:
npm start --production
Дух ће сада трчати. И фронт-енд блога и интерфејс администратора су заштићени ХТТПС-ом, а ХТТП/2 такође ради. Можете отворити свој претраживач и посетити сајт на https://blog.domain.tld
. Не заборавите да замените blog.domain.tld
својим именом домена.
Искључите Гхост процес притиском на CTRL
+ C
и изађите из гхост корисника назад на корисника који није роот који сте креирали на почетку:
exit
Ако затворите своју терминалску сесију са својим ВПС-ом, ваш блог ће такође бити угашен. То није добро. Да бисмо ово избегли, користићемо системд. То ће одржавати наш блог 24/7.
Креирајте ghost.service
системд јединичну датотеку. Покрените судо sudo vim /etc/systemd/system/ghost.service
и копирајте/налепите садржај испод:
[Unit]
Description=Ghost - the professional publishing platform
Documentation=https://docs.ghost.org/v0.11.11/docs
After=network.target
[Service]
Type=simple
# Edit WorkingDirectory, User and Group as needed
WorkingDirectory=/var/www/ghost
User=ghost
Group=ghost
ExecStart=/bin/npm start --production
ExecStop=/bin/npm stop --production
Restart=always
SyslogIdentifier=Ghost
[Install]
WantedBy=multi-user.target
Омогућите и покрените ghost.service
:
sudo systemctl enable ghost.service && sudo systemctl start ghost.service
Проверите ghost.service
статус:
sudo systemctl status ghost.service && sudo systemctl is-enabled ghost.service
Идите до https://blog.domain.tld/ghost/
и креирајте Гхост администраторског корисника. Урадите ово што је пре могуће!
То је то. Сада имамо потпуно функционалан Гхост блог. Ваш сервер испоручује садржај преко ХТТП/2 када га клијент подржава. Ако желите да промените подразумевану Гхост тему под називом Цаспер у прилагођену, можете само да преузмете и распакујете тему у /var/www/ghost/content/themes
фасциклу и изаберете је преко Гхост администраторског интерфејса, који се налази на https://blog.domain.tld/ghost
.
Користите другачији систем? Јекилл је одлична алтернатива ВордПресс-у за блоговање или дељење садржаја. Не захтева никакве базе података и веома је лако и
Користите другачији систем? МОДКС Револутион је брз, флексибилан, скалабилан, бесплатан и отвореног кода, систем за управљање садржајем (ЦМС) за предузећа написан и
Користите другачији систем? МОДКС Револутион је брз, флексибилан, скалабилан, опен соурце систем за управљање садржајем (ЦМС) за предузећа написан у ПХП-у. Ит и
Увод ВордПресс је доминантан систем за управљање садржајем на интернету. Покреће све, од блогова до сложених веб локација са динамичким садржајем
Користите другачији систем? Јекилл је добра алтернатива ВордПресс-у. Не захтева никакве базе података и ради са језиком који је многима познат
Користите другачији систем? МОДКС Револутион је брз, флексибилан, скалабилан, бесплатан и отвореног кода, систем за управљање садржајем (ЦМС) за предузећа написан и
Користите другачији систем? Форк је ЦМС отвореног кода написан у ПХП-у. Изворни код Форкс се налази на ГитХуб-у. Овај водич ће вам показати како да инсталирате Форк ЦМ
Неос је иновативни систем за управљање садржајем отвореног кода који је одличан за креирање и уређивање онлајн садржаја. Имајући на уму ауторе и уреднике, Нео
Користите другачији систем? Гхост је платформа за блогове отвореног кода која постаје све популарнија међу програмерима и обичним корисницима од 201.
Користите другачији систем? СилверСтрипе је флексибилан и проширив систем за управљање садржајем (ЦМС) отвореног кода написан у ПХП-у. То је лако
Користите другачији систем? Гхост је платформа за блогове отвореног кода која постаје све популарнија међу програмерима и обичним корисницима од 201.
Уобичајена употреба Вултр виртуелног сервера је хостовање Вордпресс веб локација. Овај водич вам показује како да аутоматизујете конфигурацију виртуелног сервера од нуле
Гхост је најновији и највећи почетник у конкуренцији ВордПресс-а. Развој теме је брз и лак за учење јер су програмери Гхост-а одлучили да користе оба
Гхост је модерна платформа за објављивање отвореног кода изграђена на Ноде.јс са Ембер.јс администраторским клијентом, ЈСОН АПИ-јем и АПИ-јем за тему који покреће Хандлебарс.јс. Гхос
Користите другачији систем? МОДКС Револутион је брз, флексибилан, скалабилан, бесплатан и отвореног кода, систем за управљање садржајем (ЦМС) за предузећа написан и
Користите другачији систем? Дотцлеар је веома једноставан механизам за блоговање. Он је отвореног кода и једноставан за коришћење. Овај водич ће проћи кроз инсталацију
Користите другачији систем? СилверСтрипе је флексибилан и проширив бесплатан систем за управљање садржајем (ЦМС) отвореног кода написан у ПХП-у. И
Користите другачији систем? Форк је ЦМС отвореног кода написан у ПХП-у. Изворни код Форкс се налази на ГитХуб-у. Овај водич ће вам показати како да инсталирате Форк ЦМ
Користите другачији систем? Гхост је платформа за блогове отвореног кода која постаје све популарнија међу програмерима и обичним корисницима од свог издања 2013. године. И
Користите другачији систем? Форк је ЦМС отвореног кода написан у ПХП-у. Изворни код Форкс се налази на ГитХуб-у. Овај водич ће вам показати како да инсталирате Форк ЦМ
Вештачка интелигенција није у будућности, она је овде управо у садашњости. У овом блогу Прочитајте како су апликације вештачке интелигенције утицале на различите секторе.
Да ли сте и ви жртва ДДОС напада и збуњени сте методама превенције? Прочитајте овај чланак да бисте решили своја питања.
Можда сте чули да хакери зарађују много новца, али да ли сте се икада запитали како зарађују толики новац? Хајде да причамо.
Да ли желите да видите револуционарне изуме Гугла и како су ти изуми променили живот сваког људског бића данас? Затим читајте на блогу да бисте видели Гооглеове изуме.
Концепт самовозећих аутомобила који путују на путеве уз помоћ вештачке интелигенције је сан који већ неко време имамо. Али упркос неколико обећања, њих нема нигде. Прочитајте овај блог да сазнате више…
Како се наука развија великом брзином, преузимајући многе наше напоре, расте и ризик да се подвргнемо необјашњивој сингуларности. Прочитајте шта би сингуларност могла да значи за нас.
Методе складиштења података су се развијале можда од рођења података. Овај блог покрива еволуцију складиштења података на основу инфографике.
Прочитајте блог да бисте на најједноставнији начин упознали различите слојеве у архитектури великих података и њихове функционалности.
У овом дигиталном свету, паметни кућни уређаји постали су кључни део живота. Ево неколико невероватних предности паметних кућних уређаја о томе како они чине наш живот вредним живљења и једноставнијим.
Недавно је Аппле издао мацОС Цаталина 10.15.4 додатак за исправку проблема, али изгледа да ажурирање изазива више проблема који доводе до квара Мац машина. Прочитајте овај чланак да бисте сазнали више