Увод
Почетна конфигурација
Набавите Лет'с Енцрипт сертификате
Додавање дефиниција сервера
Припремите и конфигуришите МариаДБ
Инсталирајте и конфигуришите ВордПресс
Увод
Што ближе држите своју ОпенБСД инсталацију на подразумеваној вредности и без толико додатих пакета, то ће бити безбедније. Иако је уобичајено подешавање за ВордПресс коришћење Апацхе-а и ПХП-а, дефинитивно је могуће (и пожељно) користити ОпенБСД уграђени хттпд. Овај водич ће вам помоћи да почнете са комплетним подешавањем Лет'с Енцрипт сертификата, веб сервера и ВордПресс-а. Биће вам потребан роот приступ да бисте то могли да урадите.
Почетна конфигурација
Ако то већ нисте урадили, мораћете да креирате /etc/doas.confдатотеку. doasКоманда је ОпенБСД је лако замена за sudo.
su -
echo "permit nopass keepenv :wheel" > /etc/doas.conf
Морамо рећи ОпенБСД-у где се пакети налазе. Ово се дешава у /etc/installurlдатотеци.
doas su
echo "https://cdn.openbsd.org/pub/OpenBSD" > /etc/installurl
exit
Сада морамо да додамо ПХП и неке додатне модуле који ће Вордпресу бити потребни за руковање стварима као што су слике и шифровање. Када се то од вас затражи, изаберите да инсталирате најновији пакет ПХП-а. Једна ствар коју треба да урадите је да копирате iniдатотеке модула из узорка директоријума у главни. Ово се мора урадити да би се омогућили додатни ПХП модули.
doas pkg_add -r mariadb-client mariadb-server php php-curl php-mysqli pecl73-mcrypt pecl73-imagick
doas su -
cp /etc/php-7.3.sample/* /etc/php-7.3/.
Набавите Лет'с Енцрипт сертификате
ОпенБСД има одличну апликацију која се зове ацме-цлиент. Ова мала иновација је оно што ће генерисати кључ вашег налога, приватни кључ и добити сертификат за вас. ацме-цлиент зависи од тога да постоји веб сервер, тако да дефинишемо брзу дефиницију подразумеваног сервера.
Са својим омиљеним уређивачем, креирајте /etc/httpd.conf. Касније ћемо додати остале дефиниције сервера у датотеку. Оно што сада треба да урадимо је да припремимо хттпд да изврши изазов-одговор за добијање бесплатног, важећег ССЛ сертификата.
prefork 5
types { include "/usr/share/misc/mime.types" }
server "default" {
listen on egress port 80
root "/htdocs"
directory index "index.html"
location "/.well-known/acme-challenge/*" {
request strip 2
root "/acme"
}
}
Такође користећи свој омиљени уређивач, креирајте /etc/acme-client.conf.
authority letsencrypt {
api url "https://acme-v01.api.letsencrypt.org/directory"
account key "/etc/acme/letsencrypt-privkey.pem"
}
authority letsencrypt-staging {
api url "https://acme-staging.api.letsencrypt.org/directory"
account key "/etc/acme/letsencrypt-staging-privkey.pem"
}
domain example.com {
alternative names { www.example.com }
domain key "/etc/ssl/private/example.com.key"
domain full chain certificate "/etc/ssl/example.com.fullchain.pem"
sign with letsencrypt
}
Омогућите и покрените хттпд, а затим издајте сертификат. Видећете да је сертификат издат.
doas rcctl enable httpd php73_fpm
doas rcctl start httpd
doas acme-client -ADFv example.com
doas rcctl stop httpd
Додавање дефиниција сервера
Додајте следеће конфигурационе линије у /etc/httpd.conf, одмах после дефиниција Хајде да шифрујемо. Подесите хттпд да изврши преусмеравање са хттп на хттпс јер имате бесплатан ССЛ сертификат и никада не желите да ризикујете слањем корисничког имена и лозинке преко несигурне везе. Обратите пажњу на линију, location "/posts/*"ово је део који чини да ВордПресс сталне везе изгледају лепо. Такође, ова конфигурација садржи начин да се спречи покушај грубе силе да се пријавите на ВордПресс администраторску локацију.
server "example.com" {
listen on egress port 80
alias "www.example.com"
block return 302 "https://$SERVER_NAME$REQUEST_URI"
}
server "example.com" {
listen on egress tls port 443
alias "www.example.com"
root "/htdocs/example.com
directory index "index.php"
location "/posts/*" {
fastcgi {
param SCRIPT_FILENAME "/htdocs/example.com/index.php"
socket "/run/php-fpm.sock"
}
}
location "/wp-json/*" {
fastcgi {
param SCRIPT_FILENAME "/htdocs/example.com/index.php"
socket "/run/php-fpm.sock"
}
}
location "/wp-login.php*" {
authenticate "WordPress" with "/htdocs/htpasswd"
fastcgi socket "/run/php-fpm.sock"
}
#Uncomment the following lines to disable xmlrpc. You increase security
#at the expense of being able to use to use
#the Android and iPhone WordPress App.
#location "xmlrpc.php*" {
# block return 404
#}
location "*.php*" {
fastcgi socket "/run/php-fpm.sock"
}
tls {
certificate "/etc/ssl/example.com.fullchain.pem"
key "/etc/ssl/private/example.com.key"
}
}
Креирајте датотеку са корисничким именом и лозинком за додатни ниво безбедности за ВордПресс администраторску локацију. Изаберите добру лозинку. Ово ће од вас тражити корисничко име и лозинку да бисте покренули wp-login.phpскрипту.
doas su
cd /var/www/htdocs
htpasswd htpasswd wp_user
chown www:www htpasswd
chmod 0640 htpasswd
МариаДБ је заменска виљушка за МиСКЛ. Морамо да урадимо неке почетне радове на конфигурацији и припреми базе података за ВордПресс.
Пре него што можемо ефикасно да користимо МариаДБ, морамо да дозволимо мискл демону да користи више ресурса од подразумеваних. Да бисте то урадили, направите следеће измене /etc/login.confтако што ћете додати овај унос на дну.
mysqld:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
Омогућите и покрените МариаДБ. Ова процедура ће поставити роот лозинку и опционо испустити тестну базу података. Добра је идеја да следите предлоге у фази безбедне инсталације.
doas mysql_install_db
doas rcctl enable mysqld
doas rcctl start mysqld
doas mysql_secure_installation
Креирајте ВордПресс базу података и корисника базе података.
mysql -u root -p
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost' IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
EXIT
ВордПресс није имао званични ОпенБСД порт већ неко време јер прилично функционише одмах након што је изашао из кутије. Преузмите, распакујте и преместите фасциклу за инсталацију ВордПресс-а.
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar xvfz latest.tar.gz
doas mv wordpress /var/www/htdocs/example.com
chown -R www:www /var/www/htdocs/example.com
Морамо да копирамо /etc/resolve.confи /etc/hostsда /var/www/etc. Ово је тако да ВордПресс може успешно да дође до тржишта. Ово ће вам требати да бисте преузели додатке и теме преко ВордПресс администраторске странице.
doas mkdir /var/www/etc
doas cp /etc/hosts /var/www/etc/.
doas cp /etc/resolv.conf /var/www/etc/.
Покрените хттпд и php73_fpm.
doas rcctl start httpd php73_fpm
Дођите до УРЛ адресе коју сте користили у дефиницији сервера. Видећете чаробњака за инсталацију ВордПресс-а. За опцију сервера базе података, замените лоцалхост са 127.0.0.1.
Након што је ВордПресс инсталиран, време је да подесите сталне везе тако да изгледају више СЕО пријатељски. Са администраторског екрана ВордПресс-а идите на Settings -> Permalinks. Кликните на Custom Structureи откуцајте /posts/%postname%. Након што извршите ову промену, кликните на Save Changesдугме. Сада имате много лепше везе. На пример, стална веза ће изгледати овако:https://example.com/posts/example-blog-post