HTTP:n uudelleenohjaaminen HTTPS:ään Apachessa
HTTP (Hyper Text Transfer Protocol) on suosittu ja perusprotokolla tiedonsiirtoon World Wide Webissä (WWW ); tyypillisesti verkkoselaimen ja verkkotiedostoja tallentavan palvelimen välillä. Sen sijaan HTTPS on HTTP:n suojattu versio, jossa "S" lopussa tarkoittaa "Secure".
HTTPS:n avulla kaikki selaimen ja verkkopalvelimen väliset tiedot salataan, joten ne ovat turvallisia. Tämä opetusohjelma näyttää, kuinka voit ohjata HTTP HTTPS:ään Apache HTTP -palvelimella Linuxissa.
Ennen kuin voit määrittää Apachen HTTP HTTPS-uudelleenohjauksen verkkotunnuksellesi, varmista, että olet asentanut SSL-varmenteen ja mod_rewrite. on käytössä Apachessa. Lisätietoja SSL:n määrittämisestä Apachessa on seuraavissa oppaissa.
- Kuinka luoda itse allekirjoitettuja SSL-varmenteita ja avaimia Apachelle
- Let's Encrypt SSL-varmenteen asentaminen CentOS/RHEL 7:ään
- Let's Encrypt SSL-sertifikaatin asentaminen Debianiin/Ubuntuun
Ohjaa HTTP HTTPS:ään Apachessa .htaccess-tiedoston avulla
Varmista tässä menetelmässä, että mod_rewrite on käytössä. Muussa tapauksessa ota se käyttöön tällä tavalla Ubuntu/Debian-järjestelmissä.
sudo a2enmod rewrite [Ubuntu/Debian]
CentOS/RHEL-käyttäjille varmista, että sinulla on seuraava rivi tiedostossa httpd.conf (mod_rewrite-tuki – oletuksena käytössä).
LoadModule rewrite_module modules/mod_rewrite.so
Nyt sinun tarvitsee vain muokata tai luoda .htaccess-tiedosto verkkotunnuksesi juurihakemistoon ja lisätä nämä rivit ohjataksesi http:n https:ään.
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
Nyt kun vierailija kirjoittaa http://www.omaverkkotunnus.com
, palvelin ohjaa HTTP:n automaattisesti osoitteeseen HTTPS https://www.omaverkkotunnus.com
.
Ohjaa HTTP HTTPS:ään Apache Virtual Hostissa
Lisäksi voit pakottaa kaiken verkkoliikenteen käyttämään HTTPS:ää määrittämällä virtuaalisen isäntätiedoston. Normaalisti virtuaalisen isännän kokoonpanoissa on kaksi tärkeää osaa, jos SSL-varmenne on käytössä; ensimmäinen sisältää ei-suojatun portin 80 määritykset.
Toinen on suojattua porttia 443 varten. Jos haluat ohjata HTTP:n HTTPS:ään kaikilla verkkosivustosi sivuilla, avaa ensin sopiva virtuaalinen isäntätiedosto. Muokkaa sitä sitten lisäämällä alla oleva kokoonpano.
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.yourdomain.com
Redirect / https://www.yourdomain.com
</VirtualHost>
<VirtualHost _default_:443>
ServerName www.yourdomain.com
DocumentRoot /usr/local/apache2/htdocs
SSLEngine On
etc...
</VirtualHost>
Tallenna ja sulje tiedosto ja käynnistä sitten HTTP-palvelin uudelleen näin.
sudo systemctl restart apache2 [Ubuntu/Debian]
sudo systemctl restart httpd [RHEL/CentOS]
Vaikka
on suosituin ratkaisu, koska se on yksinkertaisempi ja turvallisempi.
Saatat haluta lukea nämä hyödylliset Apache HTTP-palvelimen tietoturvan vahvistamista koskevat artikkelit:
- 25 hyödyllistä Apache '.htaccess' -temppua verkkosivustojen suojaamiseen ja mukauttamiseen
- Web-hakemistojen suojaaminen salasanalla Apachessa .htaccess-tiedoston avulla
- Kuinka piilottaa Apache-versionumero ja muut arkaluonteiset tiedot
- Suojaa Apache brute Force- tai DDoS-hyökkäyksiltä käyttämällä Mod_Security- ja Mod_evasive-palvelua
Siinä kaikki! Voit jakaa ajatuksiasi tästä oppaasta käyttämällä alla olevaa palautelomaketta. Ja muista olla aina yhteydessä linux-console.netiin.