A HTTPS használata Arch Linux webszerveren

Előfeltételek

  • Egy Vultr-szerver, amely a legfrissebb Arch Linuxot futtatja (lásd ezt a cikket .)
  • Egy futó webszerver, Apache vagy Nginx
  • Sudo hozzáférés
    • A rootként futtatandó parancsok előtagja a #, és a normál felhasználóként futtatható parancsok előtagja $. A parancsok rootként való futtatásának javasolt módja az, hogy normál felhasználóként mindegyiket előtaggal írja elő sudo.
  • Telepítsen egy szövegszerkesztőt, és ismerje meg, például vi, vim, nano, emacs vagy más hasonló szerkesztő.

Biztonságos kiszolgálás HTTPS-en keresztül

A HTTPS-en keresztüli tartalomszolgáltatás rendkívül erős titkosítást alkalmazhat, így a felhasználó és a webszerver közötti forgalmat senki sem tudja elolvasni. Nemcsak magát a forgalmat titkosítja, hanem az elért URL-t is, amely egyébként információkat fedhet fel. A Google egy ideje a HTTPS Everywhere kezdeményezés részeként részben az alapján határozza meg a keresési rangsort, hogy egy oldal használ-e HTTPS-t.

Megjegyzés : a DNS-keresés felfedi azt a tartománynevet, amelyhez kapcsolódik, de a teljes URL nem jelenik meg a folyamat során.

Szerezzen be SSL/TLS-tanúsítványt

Technikailag a TLS váltotta fel az SSL-t a HTTPS-tanúsítványok helyett, de a legtöbb helyen egyszerűen továbbra is a népszerűbb SSL-tanúsítványok kifejezéssel hívták a TLS-tanúsítványokat. A szokásos használatot követően ez az útmutató is ezt fogja tenni.

A HTTPS használatához a webszervernek szüksége van egy privát kulcsra ( .key) a privát használathoz, valamint egy tanúsítványra ( .crt) a nyilvános megosztáshoz, amely nyilvános kulcsot is tartalmaz. A tanúsítványt alá kell írni. Ön is aláírhatja, de a modern böngészők panaszkodni fognak, hogy nem ismerik fel az aláírót. Például a Chrome a következőt jeleníti meg: Your connection is not private. Attackers might be trying to steal your information... NET::ERR_CERT_AUTHORITY_INVALID. Ha csak egy privát csoport fogja használni a webhelyet, ez elfogadható lehet, mert a böngészők lehetővé teszik a továbblépést. Például a Chrome-ban kattintson a "Speciális", majd a "Tovább... (nem biztonságos)" lehetőségre; továbbra is a „Nem biztonságos” felirat jelenik meg, és a „https” áthúzódik.

Vegye figyelembe, hogy ez a folyamat kérni fogja az Ön országát, államát/ellátását, települését, szervezetét, szervezeti egységét, általános neveit és e-mail címét; ezek mindegyike elérhető bárki böngészőjében, aki HTTPS-en keresztül csatlakozik webhelyéhez.

Vegye figyelembe azt is, hogy ha virtuális gazdagép-tanúsítványokat ad meg, akkor alább külön fájlneveket kell megadnia, és rá kell mutatnia a virtuális gazdagép konfigurációjában.

Váltson be a webszerver megfelelő könyvtárába.

Ha telepítette az Apache-t:

$ cd /etc/httpd/conf

Ha telepítette az Nginxet:

$ cd /etc/nginx

Miután a megfelelő könyvtárba került, hozzon létre egy privát kulcsot ( server.key) és egy önaláírt tanúsítványt ( server.crt):

# openssl req -new -x509 -nodes -newkey rsa:4096 -keyout server.key -out server.crt -days 825

Állítson be csak olvasási jogosultságokat, és engedélyezze, hogy a privát kulcsot csak a root olvassa:

# chmod 400 server.key
# chmod 444 server.crt

Alternatív megoldásként beszerezhet egy megbízható tanúsító hatóság által aláírt tanúsítványt. Fizethet különböző cégeknek (hitelesítés-szolgáltatóknak), hogy aláírják a tanúsítványt. A tanúsító hatóságok mérlegelésekor fontos lehet megvizsgálni, hogy mely böngészők és melyik verzió ismeri fel őket. Előfordulhat, hogy néhány újabb tanúsító hatóság nem ismeri el hivatalosabbnak, mint egy önaláírt tanúsítvány a régi böngészőverziókban.

Általában nem csak nyilvános IP-címre van szüksége, hanem domain névre is. Egyes tanúsító hatóságok kiadhatnak tanúsítványt nyilvános IP-címekre, de ez ritkán történik meg.

Sok szolgáltató ingyenes 30 napos próbaverziót kínál, amellyel érdemes kezdeni, így még azelőtt megbizonyosodhat arról, hogy a folyamat működik az Ön számára. Az árak évi néhány dollártól több százig terjedhetnek, attól függően, hogy milyen típusról van szó, és milyen lehetőségek vannak, például több domain vagy aldomain. A szabványos tanúsítvány csak azt jelzi, hogy az aláíró hatóság ellenőrizte, hogy a tanúsítványt megszerző személy módosíthat a tartományon. A kiterjesztett érvényesítési tanúsítvány azt is jelzi, hogy az aláíró hatóság átvilágítást végzett a kérelmező tekintetében, és a modern böngészőkben egy zöld sáv jelenik meg az URL-ben vagy annak közelében. A domain módosításainak ellenőrzésekor egyes aláíró hatóságok megkövetelik, hogy e-mailt kapjon a domain név egy fontos hangzó címére, mint pl.admin@your-domain.com. Sokan alternatív ellenőrzést kínálnak, például adnak egy fájlt, amelyet el kell helyezni a kiszolgálón, például /srv/http/.well-known/pki-validation/az Apache vagy /usr/share/nginx/html/.well-known/pki-validation/az Nginx számára, egyetlen tárhely-konfigurációhoz; vagy ideiglenesen létrehoz egy CNAME bejegyzést, amelyet a domain DNS-rekordjaiban biztosítanak Önnek.

Az Ön által választott aláíró hatóság némileg eltérő lépésekből állhat, de a legtöbb elfogadja a következő eljárást:

A megfelelő könyvtárban hozzon létre egy privát kulcsot ( server.key):

# openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:4096 -out server.key

Állítsa a privát kulcsot írásvédettre, csak root által:

# chmod 400 server.key

Hozzon létre egy tanúsítvány-aláírási kérelmet ( server.csr). Meg kell adnia a domain nevét, amikor a rendszer kéri Common Name, és a kihívás jelszavát üresen hagyhatja:

# openssl req -new -sha256 -key server.key -out server.csr

Állítsa be a tanúsítvány-aláírási kérelmet írásvédettre, csak root által:

# chmod 400 server.csr

Tekintse meg a tanúsítvány-aláírási kérelem tartalmát. Ez az információ base64 kódolású, így véletlenszerű karaktereknek fog kinézni:

# cat server.csr
-----BEGIN CERTIFICATE REQUEST-----
.....
-----END CERTIFICATE REQUEST-----

Végezze el az aláíró hatóság folyamatát, és amikor a rendszer kéri, hogy illessze be a CSR-be, másolja ki és illessze be a teljes fájlt a -----sorokkal együtt. A választott aláíró hatóságtól és a tanúsítvány típusától függően előfordulhat, hogy azonnal kiadják Önnek az aláírt tanúsítványt, vagy akár több nap is eltelhet. Miután megkapta az aláírt tanúsítványt, másolja azt (beleértve a -----BEGIN CERTIFICATE-----és -----END CERTIFICATE-----sorokat is) server.crta megfelelő könyvtárba, a megfelelő könyvtárba, és állítsa csak olvashatóra:

# chmod 444 server.crt

Konfigurálja webkiszolgálóját a privát kulcs és tanúsítvány használatára

Ha tűzfalat használ, engedélyeznie kell a bejövő TCP-forgalmat a portra 443.

Apache számára

Szerkessze /etc/httpd/conf/httpd.confezeket a sorokat, és törölje a megjegyzéseket:

LoadModule ssl_module modules/mod_ssl.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
Include conf/extra/httpd-ssl.conf

Ne feledje, ha virtuális gazdagépeket használ, a fenti módosítás végrehajtása /etc/httpd/conf/httpd.confugyanazt a tanúsítványt fogja használni minden gazdagépen. Ahhoz, hogy minden gazdagépnek saját tanúsítványa legyen, nehogy a böngészők panaszkodjanak arról, hogy a tanúsítvány nem egyezik a tartománynévvel, minden konfigurációs fájlt módosítania kell úgy, /etc/httpd/conf/vhosts/hogy a saját tanúsítványára és privát kulcsára mutasson:

  • Váltás <VirtualHost *:80>erre: <VirtualHost *:80 *:443>.
  • A VirtualHostszakaszon belül adja hozzá a következőket:

    SSLEngine on
    SSLCertificateFile "/etc/httpd/conf/YOUR-DOMAIN-NAME.com.crt"
    SSLCertificateKeyFile "/etc/httpd/conf/YOUR-DOMAIN-NAME.com.key"
    

Indítsa újra az Apache-ot:

# systemctl restart httpd

Az Nginx számára

Szerkessze /etc/nginx/nginx.confaz alján, törölje a megjegyzéseket a HTTPS serverszakaszból, és módosítsa a sorokat a következőre:

ssl_certificate      server.crt;
ssl_certificate_key  server.key;
root                /usr/share/nginx/html;

Ne feledje, ha virtuális gazdagépeket használ, a fenti módosítással az /etc/nginx/nginx.confösszes gazdagépet erre a helyre küldi. Ahhoz, hogy minden gazdagépnek saját tanúsítványa legyen, szerkesztenie kell mindegyik konfigurációs fájlját, /etc/nginx/sites-enabled/hogy legyen egy további szerverblokk, amely a saját tanúsítványára és privát kulcsára mutat:

server {
    listen 443 ssl;
    server_name YOUR-DOMAIN-NAME.com;

    ssl_certificate      YOUR-DOMAIN-NAME.com.crt;
    ssl_certificate_key  YOUR-DOMAIN-NAME.com.key;

    ssl_session_cache   shared:SSL:1m;
    ssl_session_timeout 5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;

    location / {
        root /usr/share/nginx/YOUR-DOMAIN-NAME.com;
        index  index.html index.htm;
    }
}

Indítsa újra az Nginxet:

# systemctl restart nginx

Hagyj kommentárt

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <>Windows ISO<> előállításának lépéseit az NTLite segítségével.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.