Инсталирайте Lets Encrypt SSL в приложението WordPress с едно щракване
Въведение Lets Encrypt е услуга на сертифициращ орган, която предлага безплатни TLS/SSL сертификати. Процесът на инсталиране е опростен от Certbot,
Supervisor е система клиент/сървър, използвана за управление на редица UNIX процеси, по-конкретно процеси, свързани с проект или клиент. Например, можете да използвате супервайзор за създаване и наблюдение на произволен брой работни опашки на вашето уеб приложение.
Компонентите на тази система са:
В този урок ще инсталираме най-актуалната версия на supervisor, ще демонстрираме как да създаваме и управляваме програми чрез supervisorctl
, и ще конфигурираме уеб интерфейс за управление на нашите програми.
Ще инсталираме супервизор чрез easy_install
, характеристика на инструментите за настройка на python.
Първо, актуализирайте вашия списък с локални пакети и след това инсталирайте python setuptools
.
sudo apt-get update && sudo apt-get install python-setuptools
Сега можем да инсталираме супервайзор.
sudo easy_install supervisor
След като инсталацията приключи, трябва да генерираме нашия конфигурационен файл. Създайте папка с име supervisor
вътре /etc
.
sudo mkdir /etc/supervisor
И след това изпълнете следното.
echo_supervisord_conf > /etc/supervisor/supervisord.conf
Ако не сте влезли с root
потребителя, може да получите Permission denied
грешка (дори и с sudo
). Това се дължи на пренасочването. За да преодолеете това, влезте като root.
sudo su
След това можете да изпълните командата отново.
echo_supervisord_conf > /etc/supervisor/supervisord.conf
Вече можете да оставите root
потребителя с exit
командата. В echo_supervisord_conf
заповедта е предоставена от нашия инсталация ръководител.
Отворете /etc/supervisor/supervisord.conf
файла и проверете съдържанието му. Ще забележите, че този конфигурационен файл следва INI
синтаксиса и е разделен на секции (представени със скоби, както е в [section-name]
).
За да добавим програми, които да се управляват от супервайзера, просто трябва да създадем съответните [program]
секции. Въпреки това, за да избегнем бъркането в основния конфигурационен файл всеки път, когато трябва да добавим (или променим) програма, ще използваме [include]
раздела. Намерете този раздел, разкоментирайте го и след това го редактирайте, за да изглежда по следния начин.
[include]
files=conf.d/*.conf
Сега за всяка програма, която искаме да добавим, ще създадем .ini
файл в /etc/supervisor/conf.d/
директорията. Нека създадем тази папка.
sudo mkdir /etc/supervisor/conf.d
Както бе отбелязано по-горе, супервайзорът се състои от сървър и клиенти, които се свързват с него. За да можем да управляваме и контролираме програми, трябва да стартираме сървъра. За да направим това, ние ще регистрираме супервизорния сървър в systemd
, така че сървърът да може да бъде стартиран при стартиране на системата.
За да направите това, създайте файл, наречен supervisord.service
в /etc/systemd/system
директорията.
sudo touch /etc/systemd/system/supervisord.service
Добавете следното съдържание към файла.
[Unit]
Description=Supervisor daemon
Documentation=http://supervisord.org
After=network.target
[Service]
ExecStart=/usr/local/bin/supervisord -n -c /etc/supervisor/supervisord.conf
ExecStop=/usr/local/bin/supervisorctl $OPTIONS shutdown
ExecReload=/usr/local/bin/supervisorctl $OPTIONS reload
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
Alias=supervisord.service
Активирайте услугата за надзор.
sudo systemctl start supervisord.service
Докато сервизният файл се намира в /etc/systemd/system
директорията, той ще бъде стартиран автоматично при стартиране на системата.
Можете да проверите състоянието на услугата.
systemctl status supervisord.service
Освен това можете да проверите дневниците.
sudo journalctl -u supervisord.service
Програмите, управлявани от супервайзера, са дадени от различни [program]
секции в конфигурацията. За всяка програма, която искаме да управляваме, ще създадем самостоятелен конфигурационен файл, информиращ пътя на изпълнимия файл на командата, всички променливи на околната среда, как да се извърши в случай на изключване.
Първо, нека създадем прост скрипт, който регистрира времева марка. Създайте файл, наречен hello_supervisor.sh
(където пожелаете, ние ще се позоваваме на пълния път на този скрипт).
touch hello_supervisor.sh
Сега поставете следното съдържание в него
#!/bin/bash
while true
do
# Echo current timestamp to stdout
echo Hello Supervisor: `date`
# Echo 'error!' to stderr
echo An error ocurred at `date`! >&2
sleep 1
done
Сега го направете изпълним
chmod +x hello_supervisor.sh
На практика този скрипт е почти безполезен. Въпреки това можем да го използваме, за да демонстрираме силата на надзора. Създайте съответния конфигурационен файл, като изпълните следното.
sudo touch /etc/supervisor/conf.d/hello_supervisor.conf
Сега поставете следното съдържание в този файл.
[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh
autostart=true
autorestart=true
stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log
Забележка: Не забравяйте да замените USER
с вашето потребителско име.
Ще прегледаме тази конфигурация стъпка по стъпка.
[program:hello_supervisor]
command=/home/USER/hello_supervisor.sh
Първо, конфигурацията започва с дефиниране на програма с име hello_supervisor . Той също така информира пълния път на изпълнимия файл, който трябва да бъде стартиран.
autostart=true
Този ред посочва, че тази програма трябва да се стартира автоматично, когато се стартира супервайзорът.
autorestart=true
Ако програмата се затвори по някаква причина, този ред информира надзора автоматично да рестартира процеса.
stderr_logfile=/var/log/hello_supervisor.err.log
stdout_logfile=/var/log/hello_supervisor.out.log
Тези редове определят местоположението на регистрационния файл за stderr
и stdout
съответно.
Сега, след като сме инсталирали и конфигурирали супервайзера, можем да управляваме нашите процеси.
След като добавим нова програма, трябва да изпълним следните две команди, за да информираме сървъра да прочете отново конфигурационните файлове и да приложи всички промени.
sudo supervisorctl reread
sudo supervisorctl update
Сега изпълнете supervisorctl
клиента.
sudo supervisorctl
Ще бъдете посрещнати със списък на регистрираните процеси. Ще видите процес, извикан hello_supervisor
със RUNNING
състояние.
hello_supervisor RUNNING pid 6853, uptime 0:22:30
supervisor>
Въведете help
списък с наличните команди.
supervisor> help
default commands (type help <topic>):
=====================================
add exit open reload restart start tail
avail fg pid remove shutdown status update
clear maintail quit reread signal stop version
С две думи, ние можем start
, stop
и restart
програми, като предавате името на програмата като аргумент за съответната команда.
supervisor> stop hello_supervisor
hello_supervisor: stopped
supervisor> start hello_supervisor
hello_supervisor: started
supervisor> restart hello_supervisor
hello_supervisor: stopped
hello_supervisor: started
supervisor>
Можем също да разгледаме изхода на програмата с tail
командата.
supervisor> tail hello_supervisor
Hello Supervisor: Mon Sep 25 19:27:29 UTC 2017
Hello Supervisor: Mon Sep 25 19:27:30 UTC 2017
Hello Supervisor: Mon Sep 25 19:27:31 UTC 2017
stderr
Можете да използвате tail
и за изхода .
supervisor> tail hello_supervisor stderr
An error ocurred at Mon Sep 25 19:31:12 UTC 2017!
An error ocurred at Mon Sep 25 19:31:13 UTC 2017!
An error ocurred at Mon Sep 25 19:31:14 UTC 2017!
Чрез извикване на status
командата можете да видите състоянието на всички регистрирани програми.
След като приключите, можете да се откажете.
supervisor> quit
За да разрешите достъп до уеб сървъра на supervisord, отворете конфигурационния файл на supervisord и намерете [inet_http_server]
секцията.
nano /etc/supervisor/supervisord.conf
Сега актуализирайте конфигурацията на този раздел със следното.
[inet_http_server]
port=*:9001
username=your_username
password=your_password
Заменете your_username
и your_password
с желаните от вас идентификационни данни запазете вашите модификации и рестартирайт�� услугата за надзор.
sudo systemctl restart supervisord.service
Не забравяйте да разрешите TCP
достъп до порта 9001
на вашата защитна стена и след това достъп http://{server-ip}:9001
от вашия браузър. Когато бъдете попитани, предоставете вашите username
и password
. Вече можете да контролирате процесите си от уеб.
Инсталирахме най-актуалната версия на supervisord, научихме как да го конфигурираме за автоматично стартиране на системата със systemd и също така прегледахме основното използване на supervisorctl
. За по-разширена конфигурация и случаи на използване може да се обърнете към официалната документация на супервайзора .
Въведение Lets Encrypt е услуга на сертифициращ орган, която предлага безплатни TLS/SSL сертификати. Процесът на инсталиране е опростен от Certbot,
Използване на различна система? Ако закупите сървър на Debian, винаги трябва да имате най-новите корекции за сигурност и актуализации, независимо дали спите или не
PHP и свързаните с него пакети са най-често използваните компоненти при разгръщане на уеб сървър. В тази статия ще научим как да настроим PHP 7.0 или PHP 7.1 o
Squid е популярна, безплатна програма за Linux, която ви позволява да създадете уеб прокси за препращане. В това ръководство ще видите как да инсталирате Squid на CentOS, за да ви обърне
Въведение Lighttpd е форк на Apache, чиято цел е да бъде много по-малко ресурсоемка. Той е лек, откъдето идва и името му, и е доста лесен за използване. Инсталирайте
1. Virtualmin/Webmin Virtualmin е мощен и гъвкав контролен панел за уеб хостинг за Linux и UNIX системи, базиран на добре познатата уеб база с отворен код
Yii е PHP рамка, която ви позволява да разработвате приложения по-бързо и лесно. Инсталирането на Yii в Ubuntu е лесно, както ще научите точно l
Този урок обяснява как да настроите DNS сървър с помощта на Bind9 на Debian или Ubuntu. В цялата статия заменете your-domain-name.com съответно. При th
Въведение Logrotate е помощна програма за Linux, която опростява администрирането на лог файлове. Обикновено се изпълнява веднъж на ден чрез cron задание и управлява базата от регистрационни файлове
Icinga2 е мощна система за наблюдение и когато се използва в модел главен-клиент, тя може да замени необходимостта от проверки на базата на NRPE. Главният клиент
Използване на различна система? Red5 е медиен сървър с отворен код, внедрен в Java, който ви позволява да стартирате Flash многопотребителски приложения, като например предаване на живо
В тази статия ще видим как да компилирате и инсталирате основната линия на Nginx от официалните източници на Nginx с модула PageSpeed, който ви позволява да
Използване на различна система? Apache Cassandra е безплатна система за управление на база данни NoSQL с отворен код, която е проектирана да осигури мащабируемост, висока
Използване на различна система? Vanilla forum е приложение за форум с отворен код, написано на PHP. Той е напълно адаптивен, лесен за използване и поддържа външен
Използване на различна система? Въведение Kanboard е безплатна програма за управление на проекти с отворен код, която е предназначена да улеснява и визуализира
Използване на различна система? Въведение Kanboard е безплатна програма за управление на проекти с отворен код, която е предназначена да улеснява и визуализира
Използване на различна система? Gitea е алтернатива с отворен код, самостоятелно хоствана система за контрол на версиите, задвижвана от Git. Gitea е написана на Голанг и е
Използване на различна система? Gitea е алтернатива с отворен код, самостоятелно хоствана система за контрол на версиите, задвижвана от git. Gitea е написана на Голанг и е
Въведение Lynis е безплатен инструмент за одит на системата с отворен код, който се използва от много системни администратори за проверка на целостта и заздравяване на техните системи. аз
Използване на различна система? Thelia е инструмент с отворен код за създаване на уебсайтове за е-бизнес и управление на онлайн съдържание, написано на PHP. Изходен код на Thelia i
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.
Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.
Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.
Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…
Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.
Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.
Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.
В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.
Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече