Възходът на машините: Реални приложения на AI
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
SSL и неговият наследник TLS (Secure Sockets Layer / Transport Layer Security) добавят слой на криптиране между клиента и сървъра. Без тази технология данните се изпращат до сървъра в обикновен текст, което позволява на трети страни да четат цялата информация, изпратена и получена от вашия сървър.
Този урок ще ви научи как да създадете SSL/TLS сертификат и да го активирате на Apache 2.4 на Ubuntu 16.04. Предполагам, че Apache вече е настроен и работи. Ако искате да научите как да инсталирате LAMP стек, вижте този Vultr doc .
SSL/TLS certificates are normally generated by a trusted CA (certificate authority). By generating it yourself, you will be the signer, meaning the browser won't be able to verify whether the identity of the certificate should be trusted, and it will warn the user. Although it is possible to bypass this alert, public-facing sites should be using a certificate signed by a trusted CA. Let's encrypt is a CA that offers certificates for free. You can learn how to install their certificate in Apache and Ubuntu 16.04 here.
For internal applications, using a self-signed certificate might be valid, especially if you don't have a domain name.
Първо, нека създадем място за съхранение на файла.
mkdir ~/certificates
cd ~/certificates
Генериране на CSR и частен ключ.
openssl req -x509 -newkey rsa:4096 -keyout apache.key -out apache.crt -days 365 -nodes
Той ще поиска информация за заявката за сертификат. Допълнете с подходящата информация.
Country Name (2 letter code) [AU]: US
State or Province Name (full name) [Some-State]: FL
Locality Name (eg, city) []: Miami
Organization Name (eg, company) [My Company]: My Company
Organizational Unit Name (eg, section) []:
Общото име трябва да бъде името на вашия домейн или IP адреса на сървъра. Освен това попълнете имейла си.
Common Name (e.g. server FQDN or YOUR name) []: 203.0.113.122
Email Address []:webmaster@example.com
Сега преместете сертификата в папката за конфигурация на Apache.
mkdir /etc/apache2/ssl
mv ~/certificates/* /etc/apache2/ssl/.
Сертификатът е готов! След това ще подготвим Apache да работи със сертификата.
Трябва да се уверим, че TCP порт 443 е отворен. Този порт се използва в SSL връзки вместо порт 80. В този урок ще използваме UFW.
Уверете се, че UFW е активиран.
sudo ufw enable
Сега разрешете предварително дефинираните настройки на Apache за защитната стена.
sudo ufw allow 'Apache Full'
Като напишете " sudo ufw status", можете да видите списък с текущите правила. Вашата конфигурация трябва да прилича на това:
To Action From
-- ------ ----
Apache Full ALLOW Anywhere
OpenSSH ALLOW Anywhere
Apache Full (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)
Трябва също да разрешите OpenSSH тук за бъдещи връзки.
sudo ufw allow 'OpenSSH'
Придвижете се до директорията за конфигурация на сайта по подразбиране на Apache.
sudo nano /etc/apache2/sites-available/default-ssl.conf
Този файл казва на сървъра къде да търси SSL сертификата. С премахнатите коментари, трябва да изглежда като следната конфигурация.
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
</IfModule>
Редактирайте този ред:
ServerAdmin email@example.net
Добавете това точно под ServerAdminреда:
ServerName ADD_YOUR_IP_OR_DOMAIN_NAME_HERE
Сега редактирайте тези редове с местоположението на нашия сертификат:
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
Нашият окончателен файл трябва да прилича на това:
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin email@example.net
ServerName 203.0.113.122
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
</IfModule>
Запазете и затворете файла.
Активирайте SSL модула, като напишете:
sudo a2enmod ssl
Сега активирайте сайта, който току-що редактирахме:
sudo a2ensite default-ssl.conf
Рестартирайте Apache:
sudo service apache2 restart
Нека влезем в новия защитен уебсайт! Отворете го в браузъра си (уверете се, че сте написали https:// ).
https://YOUR_SERVER_IP
Вашият браузър ще ви предупреди, че сертификатът е невалиден, както очаквахме. Това се случва, защото сертификатът не е подписан. Следвайте стъпките, предлагани от вашия браузър, за да продължите към вашия сайт.
Отворете файла за виртуален хост по подразбиране на Apache:
nano /etc/apache2/sites-available/000-default.conf
Добавете този ред вътре в <VirtualHost *:80>етикета:
Redirect / https://YOUR_SERVER_IP_OR_DOMAIN/
Презаредете конфигурацията на Apache:
sudo service apache2 reload
Целият трафик на уебсайта вече автоматично ще се пренасочва към HTTPS.
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.
Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.
Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.
Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…
Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.
Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.
Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.
В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.
Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече