Bir Vultr Bulut Sunucusuna pfSense Kurulumu
pfSense, ağlarına geniş bir özellik yelpazesi eklemek isteyen sistem yöneticileri için ideal bir araçtır. Öncelikle açık kaynaklı
Bu eğitim OpenBSD'yi PrestaShop ve Apache kullanarak bir e-ticaret çözümü olarak göstermektedir.
Apache gereklidir, çünkü PrestaShop OpenBSD'nin yerleşik web sunucusu httpd tarafından desteklenmeyen karmaşık URL yeniden yazma gereksinimlerine sahiptir. Bu eğitimde kendinden imzalı sertifikalar kullanılmaktadır. Lütfen üretim için doğrulanmış bir sertifika kullanın.
Geçici olarak doas
şifre kullanmadan izin verilen normal bir kullanıcı oluşturun . Bu erişim kurulumdan sonra kaldırılacak.
user add -c "Example User" -m -G wheel -L staff auser
passwd auser
echo 'permit nopass keepenv :wheel' > /etc/doas.conf
OpenBSD paket deposunu ekleyin.
echo 'https://cdn.openbsd.org/pub/OpenBSD' > /etc/installurl
Günlük durum ve güvenlik e-postalarını adresinize yönlendirin.
echo '[email protected]' > /root/.forward
Sunucunun ana bilgisayar adını ayarlayın.
echo 'www.example.com' > /etc/myname
hostname www.example.com
Sunucunuzun FQDN'sini ve IP adresini adresine ekleyin /etc/hosts
. Vultr IP adresinizle
değiştirin 192.0.2.1
.
127.0.0.1 localhost
::1 localhost
192.0.2.1 www.example.com
PrestaShop ve Apache için gerekli paketleri ekleyin. İstendiğinde en son sürümleri seçin.
doas su
pkg_add apache-httpd php php-curl php-gd php-intl php-pdo_mysql php-zip mariadb-client mariadb-server wget unzip
Test için kendinden imzalı bir SSL sertifikası oluşturuldu. Ortak Adı sunucunuzun FQDN'sine ayarlayın, örn. Www.example.com.
openssl req -x509 -new -nodes -newkey rsa:4096 -keyout /etc/ssl/private/example.com.key -out /etc/ssl/example.com.crt -days 3650 -sha256
chmod 0600 /etc/ssl/private/example.com.key
PrestaShop'un en son sürümünün URL'sini bulun , indirin /tmp
ve dosyaya çıkartın /var/www/htdocs/prestashop
.
cd /tmp
wget <https://download.prestashop.com/download/releases/prestashop_1.7.6.4.zip>
unzip prestashop_1.7.6.4.zip -d /var/www/htdocs/prestashop
chown -R www:www /var/www/htdocs/prestashop
Güvenlik duvarını ssh , www ve https dışındaki tüm gelen trafiği engelleyecek şekilde yapılandırın .
Öğesinin yedek kopyasını oluşturun /etc/pf.conf
.
cp /etc/pf.conf /etc/pf.conf.bak
Düzenleme /etc/pf.conf
olarak gösterilen.
set skip on lo
block in
pass out
pass in on egress inet proto tcp to port {ssh, www, https} \
flags S/SA keep state
Güvenlik duvarı kurallarını test edin ve etkinleştirin.
doas pfctl -nf /etc/pf.conf
doas pfctl -f /etc/pf.conf
/etc/mail/smtpd.conf
Dosyanızı yedekleyin .
cp /etc/mail/smtpd.conf /etc/mail/smtpd.conf.bak
Düzenleme /etc/mail/smtpd.conf
aşağıda gösterildiği gibi.
Notlar: * Sırlar için tablo tanımı, posta geçişi için kullanıcı adı ve parolayı içerir. * Giden eylem adını ve şifresini etiketi altında yukarı bakar prestashop
içinde /etc/mail/secrets
e-posta sunucusu üzerinden ve röleleri e-posta.
table aliases file:/etc/mail/aliases
table secrets file:/etc/mail/secrets
listen on lo0
action "local_mail" mbox alias <aliases>
action "outbound" relay host smtp+tls://[email protected]:587 \
tls no-verify auth <secrets>
match from local for local action "local_mail"
match from local for any action "outbound"
Oluşturmak /etc/mail/secrets
E-posta adresini ve şifreyi, e-posta sunucunuz için kullandığınız kimlik bilgileriyle değiştirin.
echo "prestashop [email protected]:password" > /etc/mail/secrets
Güvenceye almak için izinleri ayarlama /etc/mail/secrets
chmod 0600 /etc/secrets
Yapılandırma dosyasını hatalar için test edin ve smtpd arka plan programını yeniden başlatın.
smtpd -n
rcctl restart smtpd
PHP-FPM işlemini UNIX etki alanı soketi yerine bir TCP soketini dinleyecek şekilde yapılandırın.
/etc/php-fpm.conf
Dosya için aşağıdaki değişikliği yapın .
...
; If using a TCP port, never expose this to a public network.
;listen = /var/www/run/php-fpm.sock
listen = 127.0.0.1:9000
İçindeki PHP ortamında bazı ek değişiklikler yapın /etc/php-7.3.ini
. Sürüm 7.3'ten daha yeni ise bu dosya adı biraz değişebilir. Bu değişiklikler:
PHP'yi mail ile e-posta gönderecek şekilde yapılandırın.
; Default Value: not set
;chroot = /var/www
...
; Maximum allowed size for uploaded files.
; <http://php.net/upload-max-filesize>
upload_max_filesize = 6M
...
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; <http://php.net/sendmail-path>
;sendmail_path =
sendmail_path = /usr/sbin/sendmail -t -i
...
; Whether to allow the treatment of URLs (like <http://> or <ftp://)> as files.
; <http://php.net/allow-url-fopen>
allow_url_fopen = On
...
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; <http://php.net/post-max-size>
post_max_size = 12M
PHP eklentilerini etkinleştirin.
cp /etc/php-7.3.sample/* /etc/php-7.3/.
PHP-FPM arka plan programını etkinleştirin ve başlatın. Sürüm daha yeni ise arka plan programı adı biraz farklı olabilir.
rcctl enable php73_fpm
rcctl start php73_fpm
MariaDB PrestaShop için veritabanı arka ucu sağlar. MariaDB, varsayılan sınıfın izin verdiğinden daha fazla açık dosyaya ihtiyaç duyduğundan, içinde özel bir sınıf oluşturun /etc/login.conf
.
Dosyanın altına aşağıdaki satırları ekleyin:
mysqld:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
MariaDB'yi yükleyin.
doas su
mysql_install_db
rcctl enable mysqld
rcctl start mysqld
MariaDB güvenliğini yapılandırın.
mysql_secure_installation
PrestaShop veritabanını oluşturun. Güçlü bir şifre kullanın.
mysql -u root
CREATE DATABASE prestashop;
GRANT ALL PRIVILEGES ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'password123';
FLUSH PRIVILEGES;
EXIT
Destek olmak /etc/apache2/httpd2.conf
cp /etc/apache2/httpd2.conf /etc/apache2/httpd2.conf.bak
Modülleri etkinleştirmek ve devre dışı bırakmak için düğmesini /etc/apache2/httpd2.conf
kullanarak aşağıdaki değişiklikleri yapın #
.
Listen 443
...
LoadModule mpm_event_module /usr/local/lib/apache2/mod_mpm_event.so
#LoadModule mpm_prefork_module /usr/local/lib/apache2/mod_mpm_prefork.so
LoadModule proxy_module /usr/local/lib/apache2/mod_proxy.so
LoadModule proxy_fcgi_module /usr/local/lib/apache2/mod_proxy_fcgi.so
LoadModule ssl_module /usr/local/lib/apache2/mod_ssl.so
LoadModule rewrite_module /usr/local/lib/apache2/mod_rewrite.so
...
ServerAdmin [email protected]
ServerName 192.0.2.1:80
/etc/apache2/httpd2.conf
Dosyanın altına doğru birkaç değişiklik daha meydana gelir. #
Belirtilen include ifadelerinden kaldırın .
Sanal Barındırma hatlarını en son ekleyin.
# Server-pool management (MPM specific)
Include /etc/apache2/extra/httpd-mpm.conf
...
# Virtual Hosts
IncludeOptional /etc/apache2/sites/*.conf
/etc/apache2/sites
Dizini oluşturun .
mkdir /etc/apache2/sites
Oluşturmak /etc/apache2/sites/example.conf
aşağıdaki bilgilerle:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin [email protected]
DocumentRoot "/var/www/htdocs/prestashop"
<Directory "/var/www/htdocs/prestashop">
Options -Indexes +Multiviews +FollowSymLinks
AllowOverride All
<Limit GET POST OPTIONS>
</Limit>
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
ServerAdmin [email protected]
DocumentRoot "/var/www/htdocs/prestashop"
<Directory "/var/www/htdocs/prestashop">
Options -Indexes +Multiviews +FollowSymLinks
AllowOverride All
<Limit GET POST OPTIONS>
</Limit>
Require all granted
</Directory>
SSLEngine On
SSLCertificateFile "/etc/ssl/example.com.crt"
SSLCertificateKeyFile "/etc/ssl/private/example.com.key"
SSLCipherSuite HIGH:!aNULL
</VirtualHost>
Aşağıdakileri ekleyerek Apache'nin proxy modülünü yapılandırın /etc/apache2/sites/example.conf
<IfModule proxy_module>
<IfModule dir_module>
DirectoryIndex index.php
</IfModule>
<FilesMatch "\.php$">
SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>
</IfModule>
Yapılandırmayı test edin, ardından Apache'yi etkinleştirin ve başlatın.
apachectl configtest
rcctl enable apache2
rcctl start apache2
Apache'nin 80 ve 443 numaralı bağlantı noktalarını dinlediğinden emin olun.
netstat -ln -finet
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp 0 0 *.443 *.* LISTEN
tcp 0 0 127.0.0.1.25 *.* LISTEN
tcp 0 0 *.22 *.* LISTEN
tcp 0 0 *.80 *.* LISTEN
tcp 0 0 127.0.0.1.3306 *.* LISTEN
tcp 0 0 127.0.0.1.9000 *.* LISTEN
Adresinden web sitenize göz atın http://www.example.com
. PrestaShop kurulum sihirbazı başlatılır.
Yüklemeyi tamamladıktan sonra, mağaza ön ve yönetim bağlantılarını not edin ve dizini silin /var/www/htdocs/prestashop/install
.
SSL'yi etkinleştirin.
Yönetici parolanızı değiştirin.
Mağazanızı ve veritabanını yedekleyin:
cd /var/www/htdocs
doas tar cvfz /home/auser/prestashop.tar.gz prestashop/
doas mysqldump -u prestashop -p prestashop | gzip -4 > /home/auser/prestashop.sql.tar.gz
doas chown auser:auser /home/auser/prestashop*
doas.conf
Dosyayı yeniden oluşturarak kullanıcı hesabınız için doas erişimini kaldırın .
echo 'permit keepenv :wheel' > /etc/doas.conf
pfSense, ağlarına geniş bir özellik yelpazesi eklemek isteyen sistem yöneticileri için ideal bir araçtır. Öncelikle açık kaynaklı
Farklı Bir Sistem mi Kullanıyorsunuz? LimeSurvey PHP ile yazılmış açık kaynaklı bir anket yazılımıdır. LimeSurvey kaynak kodu GitHubda barındırılıyor. Bu kılavuz size
Gereksinimler UNIX hakkında temel bilgiler. Nginx yüklü FreeBSD x64. Araçları Yükleme FreeBSD ile birlikte gönderilmeyen birkaç programa ihtiyacınız olacaktır. Ru
Farklı Bir Sistem mi Kullanıyorsunuz? Automad, PHPde yazılmış açık kaynaklı bir dosya tabanlı içerik yönetim sistemidir (CMS) ve şablon motorudur. Automad kaynak kodu i
Farklı Bir Sistem mi Kullanıyorsunuz? X-Cart, tonlarca özellik ve entegrasyona sahip son derece esnek bir açık kaynaklı e-ticaret platformudur. X-Cart kaynak kodu aceleci
Giriş WordPress, internet üzerindeki baskın içerik yönetim sistemidir. Bloglardan dinamik içeriğe sahip karmaşık web sitelerine kadar her şeyi güçlendirir
Murmur, Mumble sesli iletişim protokolü için resmi sunucu yazılımıdır. Bu resmi uygulama istikrarlı ve etkilidir. Bu kılavuz
Linuxtaki bir LEMP yığını ile karşılaştırılabilir bir FEMP yığını, bir FreeBSyi etkinleştirmek için genellikle birlikte yüklenen bir açık kaynaklı yazılım koleksiyonudur
Bu eğitici, FreeBSD sunucunuzu OpenBSD PF güvenlik duvarını kullanarak nasıl koruyacağınızı gösterecektir. Dağıtılmış temiz bir FreeBSD kurulumunuz olduğunu varsayacağız b
Farklı Bir Sistem mi Kullanıyorsunuz? Cachet PHP ile yazılmış açık kaynaklı bir durum sayfası sistemidir. Cachet için kaynak kodu GitHubda barındırılıyor. Bu kılavuzda,
Farklı Bir Sistem mi Kullanıyorsunuz? WonderCMS, PHPde yazılmış açık kaynaklı, hızlı ve küçük bir düz dosya CMSdir. WonderCMS kaynak kodu Githubda barındırılmaktadır. Bu kılavuz
Farklı Bir Sistem mi Kullanıyorsunuz? TLS 1.3, 2018de RFC 8446da önerilen bir standart olarak yayınlanan Taşıma Katmanı Güvenliği (TLS) protokolünün bir sürümüdür
Vernik, bir web sunucusundan içerik depolayan açık kaynaklı bir önbellek sunucusudur. Apache veya Nginx gibi bir web sunucusunun önüne kurulur. Cachin
Farklı Bir Sistem mi Kullanıyorsunuz? Dolibarr, işletmeler için açık kaynaklı bir kurumsal kaynak planlaması (ERP) ve müşteri ilişkileri yönetimi (CRM). Dolibarr
Farklı Bir Sistem mi Kullanıyorsunuz? ProcessWire CMS 3.0 basit, esnek ve güçlü, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS). ProcessWire CMS 3.
Farklı Bir Sistem mi Kullanıyorsunuz? Matomo (eski adıyla Piwik), Google Analyticse açık bir alternatif olan açık kaynaklı bir analiz platformudur. Matomo kaynağı o barındırılıyor o
Farklı Bir Sistem mi Kullanıyorsunuz? TLS 1.3, 2018de RFC 8446da önerilen bir standart olarak yayınlanan Taşıma Katmanı Güvenliği (TLS) protokolünün bir sürümüdür
Giriş Bu eğitici, OpenSMTPD, Dovecot, Rspamd ve RainLoop kullanarak OpenBSD üzerinde çalışan tam özellikli bir e-posta sunucusunu gösterir. OpenSMTPD th
Farklı Bir Sistem mi Kullanıyorsunuz? Mailtrain, Node.js ve MySQL / MariaDB üzerine kurulmuş açık kaynaklı, kendi kendine barındırılan bir bülten uygulamasıdır. Mailtrains kaynağı GitHubda. Thi
Ghost, WordPresse rakip olan en yeni ve en büyük başlangıç. Tema geliştirme hızlı ve kolaydır, çünkü Ghost geliştiricileri
CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.
Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.
OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.
Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?