Vzpon strojev: aplikacije AI v resničnem svetu
Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.
Ta vadnica prikazuje OpenBSD kot rešitev za e-trgovino z uporabo PrestaShop in Apache.
Apache je potreben, ker ima PrestaShop zapletene zahteve za prepisovanje URL-jev, ki jih vgrajeni spletni strežnik OpenBSD, httpd, ne podpira. Ta vadnica uporablja samopodpisana potrdila. Za proizvodnjo uporabite preverjen certifikat.
Začasno ustvarite običajnega uporabnika, ki mu je dovoljena uporaba doasbrez gesla. Ta dostop bo po nastavitvi odstranjen.
user add -c "Example User" -m -G wheel -L staff auser
passwd auser
echo 'permit nopass keepenv :wheel' > /etc/doas.conf
Dodajte skladišče paketov OpenBSD.
echo 'https://cdn.openbsd.org/pub/OpenBSD' > /etc/installurl
Posredujte dnevna e-poštna sporočila o stanju in varnosti na svoj naslov.
echo 'hostmaster@example.com' > /root/.forward
Nastavite ime gostitelja strežnika.
echo 'www.example.com' > /etc/myname
hostname www.example.com
Dodajte FQDN in naslov IP vašega strežnika v /etc/hosts.
Zamenjajte 192.0.2.1s svojim naslovom IP Vultr.
127.0.0.1 localhost
::1 localhost
192.0.2.1 www.example.com
Dodajte zahtevane pakete za PrestaShop in Apache. Ko ste pozvani, izberite najnovejše različice.
doas su
pkg_add apache-httpd php php-curl php-gd php-intl php-pdo_mysql php-zip mariadb-client mariadb-server wget unzip
Ustvaril samopodpisano potrdilo SSL za testiranje. Nastavite Common Name na FQDN vašega strežnika, npr. 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
Poiščite URL za najnovejšo različico PrestaShop , prenesite /tmpin izvlecite v /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
Konfigurirajte požarni zid tako, da blokira ves vhodni promet razen ssh , www in https .
Naredite varnostno kopijo /etc/pf.conf.
cp /etc/pf.conf /etc/pf.conf.bak
Uredite, /etc/pf.confkot je prikazano.
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
Preizkusite in aktivirajte pravila požarnega zidu.
doas pfctl -nf /etc/pf.conf
doas pfctl -f /etc/pf.conf
Varnostno kopirajte svojo /etc/mail/smtpd.confdatoteko.
cp /etc/mail/smtpd.conf /etc/mail/smtpd.conf.bak
Uredite, /etc/mail/smtpd.confkot je prikazano spodaj.
Opombe: * Definicija tabele za skrivnosti vsebuje uporabniško ime in geslo za poštni rele. * Outbound ukrep pogleda uporabniško ime in geslo, pod nalepko prestashopv /etc/mail/secretsin releje na e-poštni prek e-poštnega strežnika.
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://prestashop@mail.example.com:587 \
tls no-verify auth <secrets>
match from local for local action "local_mail"
match from local for any action "outbound"
Ustvari /etc/mail/secrets
Zamenjajte e-poštni naslov in geslo s poverilnicami, ki jih uporabljate za svoj e-poštni strežnik.
echo "prestashop user@example.com:password" > /etc/mail/secrets
Nastavite dovoljenja za zaščito /etc/mail/secrets
chmod 0600 /etc/secrets
Preglejte konfiguracijsko datoteko za napake in znova zaženite demon smtpd.
smtpd -n
rcctl restart smtpd
Konfigurirajte proces PHP-FPM za poslušanje v vtičnici TCP namesto vtičnice domene UNIX.
Za /etc/php-fpm.confdatoteko naredite naslednjo spremembo .
...
; 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
Izvedite nekaj dodatnih sprememb v okolju PHP v /etc/php-7.3.ini. To ime datoteke se lahko nekoliko spremeni, če je različica novejša od 7.3. Te spremembe:
Konfigurirajte PHP za pošiljanje e-pošte prek sendmaila.
; 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
Omogočite vtičnike PHP.
cp /etc/php-7.3.sample/* /etc/php-7.3/.
Omogočite in zaženite demon PHP-FPM. Ime demona se lahko nekoliko razlikuje, če je različica novejša.
rcctl enable php73_fpm
rcctl start php73_fpm
MariaDB zagotavlja ozadje baze podatkov za PrestaShop. Ker MariaDB potrebuje več odprtih datotek, kot omogoča privzeti razred, ustvarite poseben razred v /etc/login.conf.
Na dnu datoteke dodajte naslednje vrstice:
mysqld:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
Namestite MariaDB.
doas su
mysql_install_db
rcctl enable mysqld
rcctl start mysqld
Konfigurirajte varnost MariaDB.
mysql_secure_installation
Ustvarite bazo podatkov PrestaShop. Uporabite močno geslo.
mysql -u root
CREATE DATABASE prestashop;
GRANT ALL PRIVILEGES ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'password123';
FLUSH PRIVILEGES;
EXIT
Rezerva /etc/apache2/httpd2.conf
cp /etc/apache2/httpd2.conf /etc/apache2/httpd2.conf.bak
Izvedite naslednje spremembe v /etc/apache2/httpd2.conf, z uporabo #za omogočanje in onemogočanje modulov.
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 webmaster@example.com
ServerName 192.0.2.1:80
Na /etc/apache2/httpd2.confdnu datoteke se zgodi še več sprememb . Odstranite #iz navedenih izjav o vključevanju.
Nazadnje dodajte vrstice za virtualno gostovanje.
# Server-pool management (MPM specific)
Include /etc/apache2/extra/httpd-mpm.conf
...
# Virtual Hosts
IncludeOptional /etc/apache2/sites/*.conf
Ustvarite /etc/apache2/sitesimenik.
mkdir /etc/apache2/sites
Ustvarite /etc/apache2/sites/example.confz naslednjimi informacijami:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin webmaster@example.com
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 webmaster@example.com
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>
Konfigurirajte proxy modul Apache tako, da dodate naslednje /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>
Preizkusite konfiguracijo, nato omogočite in zaženite Apache.
apachectl configtest
rcctl enable apache2
rcctl start apache2
Prepričajte se, da Apache posluša na vratih 80 in 443.
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
Prebrskajte svoje spletno mesto na naslovu http://www.example.com. Zagnal se bo čarovnik za namestitev PrestaShop.
Ko dokončate namestitev, upoštevajte naslovnice trgovine in administrativne povezave ter izbrišite imenik /var/www/htdocs/prestashop/install.
Omogoči SSL.
Spremenite svoje skrbniško geslo.
Varnostno kopirajte svojo trgovino in njeno bazo podatkov:
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*
Odstranite dostop doas za vaš uporabniški račun tako, da znova ustvarite doas.confdatoteko.
echo 'permit keepenv :wheel' > /etc/doas.conf
Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.
Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.
Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.
Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.
Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…
Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.
Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.
Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.
V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.
Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več