Si të përdorni HTTPS në uebserverin Arch Linux

Parakushtet

  • Një server Vultr që funksionon i përditësuar Arch Linux (shih këtë artikull .)
  • Një server në internet që funksionon, ose Apache ose Nginx
  • Qasje Sudo
    • Komandat që kërkohen për t'u ekzekutuar si rrënjë parashtesohen nga #, dhe ato që mund të ekzekutohen si përdorues të rregullt nga $. Mënyra e rekomanduar për të ekzekutuar komandat si rrënjë është që, si përdorues i rregullt, të parashtesësh secilën prej tyre me sudo.
  • Keni të instaluar një redaktues teksti dhe njihuni me të, si p.sh. vi, vim, nano, emacs ose një redaktues tjetër të ngjashëm.

Shërbim i sigurt përmes HTTPS

Shërbimi i përmbajtjes nëpërmjet HTTPS mund të përdorë enkriptim jashtëzakonisht të fortë, kështu që askush që përgjon trafikun midis përdoruesit dhe serverit të uebit nuk mund ta lexojë atë. Ai jo vetëm që kodon vetë trafikun, por edhe URL-në që aksesohet, e cila përndryshe mund të ekspozojë informacionin. Për disa kohë, Google ka përcaktuar pjesërisht renditjen e kërkimit bazuar në faktin nëse një faqe përdor HTTPS, si pjesë e nismës HTTPS Everywhere.

Shënim : një kërkim DNS ekspozon emrin e domenit me të cilin është lidhur, por e gjithë URL-ja nuk ekspozohet gjatë atij procesi.

Merrni certifikatën SSL/TLS

Teknikisht, TLS zëvendësoi SSL-në për Certifikatat HTTPS, por shumica e vendeve thjesht vazhduan të thërrisnin Certifikatat TLS me termin më të njohur Certifikata SSL. Pas përdorimit të zakonshëm, ky udhëzues do të bëjë të njëjtën gjë.

Për të përdorur HTTPS, serveri juaj i uebit ka nevojë për një çelës privat ( .key) që ai ta përdorë privatisht dhe një certifikatë ( .crt) për ta ndarë publikisht, e cila përfshin një çelës publik. Duhet të nënshkruhet një certifikatë. Mund ta nënshkruani vetë, por shfletuesit modernë do të ankohen se nuk e njohin nënshkruesin. Për shembull, Chrome do të tregojë: Your connection is not private. Attackers might be trying to steal your information... NET::ERR_CERT_AUTHORITY_INVALID. Nëse vetëm një grup privat njerëzish do të përdorin faqen e internetit, kjo mund të jetë e pranueshme, sepse shfletuesit do të lejojnë një mënyrë për të vazhduar. Për shembull, në Chrome, klikoni "Advanced", pastaj "Vazhdo te... (i pasigurt)"; do të vazhdojë të tregojë "Jo i sigurt" dhe do të kalojë "https".

Vini re se ky proces do t'ju kërkojë vendin, shtetin/provincën, lokalitetin, organizatën, njësinë organizative dhe emrat e zakonshëm dhe adresën tuaj të emailit; të gjitha këto janë të aksesueshme në shfletuesin e kujtdo që lidhet me faqen tuaj nëpërmjet HTTPS.

Vini re gjithashtu se nëse po jepni certifikata të hosteve virtuale, do t'ju duhet të jepni emra të ndryshëm skedarësh më poshtë dhe t'i tregoni ato në konfigurimet tuaja të hostit virtual.

Ndryshoni në drejtorinë e duhur për serverin tuaj të internetit.

Nëse keni instaluar Apache:

$ cd /etc/httpd/conf

Nëse keni instaluar Nginx:

$ cd /etc/nginx

Pasi të jeni në drejtorinë e duhur, gjeneroni një çelës privat ( server.key) dhe certifikatë të vetë-nënshkruar ( server.crt):

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

Vendosni lejet vetëm për lexim dhe lejoni që çelësi privat të lexohet vetëm me rrënjë:

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

Përndryshe, mund të merrni një certifikatë të nënshkruar nga një autoritet certifikues i besuar. Ju mund të paguani kompani të ndryshme (autoritetet e certifikimit) për të nënshkruar certifikatën tuaj për ju. Kur merren parasysh autoritetet e certifikatave, mund të jetë e rëndësishme të shikoni se cilët shfletues dhe cilët versione do t'i njohin ato. Disa autoritete më të reja të certifikatave mund të mos njihen si më zyrtare se një certifikatë e vetë-nënshkruar në versionet e vjetra të shfletuesit.

Zakonisht ju nevojitet jo vetëm një adresë IP publike, por edhe një emër domaini. Disa autoritete certifikate mund të lëshojnë një certifikatë në një adresë IP publike, por kjo bëhet rrallë.

Shumë ofrues ofrojnë një provë falas 30 ditore, me të cilën rekomandohet të filloni, në mënyrë që të siguroheni që procesi të funksionojë për ju përpara se të paguani për të. Çmimet mund të ndryshojnë nga disa dollarë në vit në qindra, në varësi të llojit të tij dhe opsioneve të tilla si domene të shumta ose nën-domanë. Një certifikatë standarde do të tregojë vetëm se autoriteti nënshkrues ka verifikuar se personi që merr certifikatën mund të bëjë ndryshime në domen. Një certifikatë validimi e zgjatur do të tregojë gjithashtu se autoriteti nënshkrues ka kryer një kontroll të duhur për verifikimin e kërkuesit dhe, në shfletuesit modernë, do të tregojë një shirit të gjelbër brenda ose pranë URL-së. Kur verifikoni që mund të bëni ndryshime në domen, disa autoritete nënshkruese do t'ju kërkojnë të merrni email në një adresë të rëndësishme që tingëllon në emrin e domenit, si p.sh.[email protected]. Shumë prej tyre ofrojnë verifikim alternativ, si p.sh. t'ju japin një skedar për ta vendosur në serverin tuaj, si p.sh. vendosja e skedarit të tyre /srv/http/.well-known/pki-validation/për Apache ose /usr/share/nginx/html/.well-known/pki-validation/për Nginx, për konfigurimin e direktoriumit pritës të vetëm; ose duke krijuar përkohësisht një hyrje CNAME që ju ofrojnë në të dhënat DNS të domenit tuaj.

Autoriteti nënshkrues që zgjidhni mund të ketë hapa paksa të ndryshëm, por shumica do të pranojnë procedurën e mëposhtme:

Në drejtorinë e duhur, gjeneroni një çelës privat ( server.key):

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

Vendosni çelësin privat në vetëm për lexim, vetëm me rrënjë:

# chmod 400 server.key

Krijo një kërkesë për nënshkrimin e certifikatës ( server.csr). Ju duhet të vendosni emrin e domenit tuaj kur ju kërkon Common Name, dhe mund ta lini bosh fjalëkalimin e sfidës:

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

Vendosni kërkesën për nënshkrimin e certifikatës në vetëm për lexim, vetëm me rrënjë:

# chmod 400 server.csr

Shikoni përmbajtjen e kërkesës për nënshkrimin e certifikatës. Ky informacion është i koduar në bazë64, kështu që do të duket si karaktere të rastësishme:

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

Kaloni përmes procesit të autoritetit tuaj të nënshkrimit dhe kur ju kërkohet të ngjitni në CSR-në tuaj, kopjoni dhe ngjisni të gjithë këtë skedar duke përfshirë -----rreshtat. Në varësi të autoritetit nënshkrimor që keni zgjedhur dhe llojit të certifikatës, ata mund t'ju japin menjëherë certifikatën e nënshkruar, ose mund të jetë një numër ditësh. Pasi t'ju japin certifikatën e nënshkruar, kopjoni atë (duke përfshirë rreshtat -----BEGIN CERTIFICATE-----dhe -----END CERTIFICATE-----) në një skedar me emrin server.crt, në drejtorinë e duhur, të dhënë më lart për serverin tuaj të internetit, dhe vendoseni në vetëm për lexim:

# chmod 444 server.crt

Konfiguro serverin tuaj të uebit për të përdorur çelësin privat dhe certifikatën

Nëse jeni duke përdorur një mur zjarri, do t'ju duhet të aktivizoni trafikun hyrës TCP në port 443.

Për Apache

Ndryshoni /etc/httpd/conf/httpd.confdhe anuloni këto rreshta:

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

Vini re nëse jeni duke përdorur host virtual, duke bërë ndryshimin e mësipërm në /etc/httpd/conf/httpd.confdo të përdorni të njëjtën certifikatë në të gjithë hostet. Për t'i dhënë secilit host certifikatën e vet për të shmangur ankesat e shfletuesve për certifikatën që nuk përputhet me emrin e domenit, duhet të modifikoni secilin prej skedarëve të konfigurimit të tyre /etc/httpd/conf/vhosts/për të treguar certifikatën e vet dhe çelësin privat:

  • Ndrysho <VirtualHost *:80><VirtualHost *:80 *:443>.
  • Brenda VirtualHostseksionit, shtoni sa vijon:

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

Rinis Apache:

# systemctl restart httpd

Për Nginx

Ndryshoni /etc/nginx/nginx.confdhe afër fundit, hiqni komentin nga HTTPS serverseksioni dhe ndryshoni rreshtat në vijim:

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

Vini re nëse jeni duke përdorur host virtual, duke bërë ndryshimin e mësipërm në /etc/nginx/nginx.confdo t'i dërgoni të gjithë hostet në atë vendndodhje. Për t'i dhënë secilit host certifikatën e tij, duhet të modifikoni secilin prej skedarëve të konfigurimit të tij /etc/nginx/sites-enabled/për të pasur një bllok server shtesë për të treguar certifikatën e tij dhe çelësin privat:

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;
    }
}

Rinisni Nginx:

# systemctl restart nginx

Instalimi i Arch Linux 2019 në një server Vultr

Instalimi i Arch Linux 2019 në një server Vultr

Hyrje Arch Linux ka një shpërndarje më të vogël, por ende të fortë, pasuese se sa më shumë shpërndarje të njohura. Filozofia e saj është krejt e ndryshme, me avantazhe një

Instalimi i Arch Linux në një server Vultr

Instalimi i Arch Linux në një server Vultr

Vultr ju ofron funksionalitetin e mrekullueshëm për t'ju lejuar të përdorni imazhin tuaj të personalizuar përveç shablloneve të tyre të shkëlqyer, gjë që ju mundëson të ekzekutoni

Përdorimi i Devtools në Arch Linux

Përdorimi i Devtools në Arch Linux

Paketa Devtools u krijua fillimisht për Përdoruesit e Besuar për të krijuar siç duhet paketa për depot zyrtare. Megjithatë, mund të përdoret nga përdorues të zakonshëm

Duke përdorur Makepkg në Arch Linux

Duke përdorur Makepkg në Arch Linux

Nëse përdorni makepkg drejtpërdrejt, ai ndot disi sistemin tuaj. Duhet të instalohet grupi i paketave të zhvillimit bazë. Në këtë mënyrë, si parazgjedhje, nevojiteshin vetëm varësitë

How To Install PostgreSQL 11.1 On Arch Linux

How To Install PostgreSQL 11.1 On Arch Linux

Prerequisites A Vultr server running up to date Arch Linux (see this article.) Sudo access. Commands required to be ran as root are prefixed by #, and one

Si të përdorni HTTPS në uebserverin Arch Linux

Si të përdorni HTTPS në uebserverin Arch Linux

Parakushtet Një server Vultr që funksionon i përditësuar Arch Linux (shih këtë artikull.) Një uebserver që funksionon, ose Apache ose Nginx Sudo Komandat e aksesit të kërkuara t

Ndërtimi i paketave në Arch Linux (përfshirë AUR)

Ndërtimi i paketave në Arch Linux (përfshirë AUR)

Në Arch Linux, depot zyrtare janë: bërthama, shtesë dhe komuniteti. Këto paketa tashmë janë përpiluar dhe instalohen përmes pacman. Për th

Konfiguro serverin Spigot në Arch Linux

Konfiguro serverin Spigot në Arch Linux

Ky tutorial shpjegon se si të konfiguroni një server Minecraft duke përdorur Spigot në Arch Linux. Ky tutorial supozon se ju jeni një përdorues normal (jo-root) dhe keni

Si të instaloni Nginx 1.14 në Arch Linux

Si të instaloni Nginx 1.14 në Arch Linux

Parakushtet Një server Vultr që funksionon i përditësuar Arch Linux (shih këtë artikull.) Qasje Sudo. Komandat që kërkohen për t'u ekzekutuar si rrënjë parashtesohen me #. Th

Si të instaloni Apache 2.4 në Arch Linux

Si të instaloni Apache 2.4 në Arch Linux

Parakushtet Një server Vultr që funksionon i përditësuar Arch Linux. Shihni këtë udhëzues për më shumë informacion. Qasje Sudo. Komandat që kërkohen të ekzekutohen si rrënjë ar

How To Install Python 3.7 On An Arch Linux Webserver

How To Install Python 3.7 On An Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access: Commands require

Instaloni Arch Linux me Btrfs Snapshotting

Instaloni Arch Linux me Btrfs Snapshotting

Preface Arch Linux është një shpërndarje me qëllime të përgjithshme e njohur për teknologjinë e saj më të avancuar dhe konfigurimin fleksibël. Me fotografitë e Btrfs, ne mund të marrim

How to Install Perl 5.28 on an Arch Linux Webserver

How to Install Perl 5.28 on an Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access: Commands require

How to Install PHP 7.3 on an Arch Linux Webserver

How to Install PHP 7.3 on an Arch Linux Webserver

Prerequisites A Vultr server running up to date Arch Linux (see this article.) A running webserver, either Apache or Nginx Sudo access. Commands require

Konfiguro serverin Mumble në Arch Linux

Konfiguro serverin Mumble në Arch Linux

Ky tutorial shpjegon se si të konfiguroni një server Mumble (Murmur) në Arch Linux. Gjithçka e bërë në këtë tutorial bëhet si përdorues rrënjë. Instalimi një

Vendosni një server Counter-Strike: Global Offensive (CSGO) në Arch Linux

Vendosni një server Counter-Strike: Global Offensive (CSGO) në Arch Linux

Ky tutorial shpjegon se si të konfiguroni një server Counter-Strike: Global Offensive në Arch Linux. Ky tutorial supozon se jeni identifikuar me një përdorim standard

Konfiguro një server Team Fortress 2 në Arch Linux

Konfiguro një server Team Fortress 2 në Arch Linux

Ky tutorial shpjegon se si të konfiguroni një server Team Fortress 2 në Arch Linux. Unë supozoj se jeni regjistruar me një llogari përdoruesi jo-root që ka akses sudo

Si të instaloni MariaDB 10.3 ose MySQL 8.0 në Arch Linux

Si të instaloni MariaDB 10.3 ose MySQL 8.0 në Arch Linux

Parakushtet Një server Vultr që funksionon i përditësuar Arch Linux (shih këtë artikull.) Qasja Sudo: Komandat që kërkohen për t'u ekzekutuar si rrënjë parashtesohen me #, dhe një

Si të instaloni MongoDB 4.0 në Arch Linux

Si të instaloni MongoDB 4.0 në Arch Linux

Parakushtet Një server Vultr që funksionon i përditësuar Arch Linux (shih këtë artikull) Qasja Sudo: Komandat që kërkohen për t'u ekzekutuar si rrënjë parashtesohen me #, dhe një

Ngritja e makinave: Aplikimet në botën reale të AI

Ngritja e makinave: Aplikimet në botën reale të AI

Inteligjenca Artificiale nuk është në të ardhmen, është këtu në të tashmen Në këtë blog Lexoni se si aplikacionet e inteligjencës artificiale kanë ndikuar në sektorë të ndryshëm.

Sulmet DDOS: Një përmbledhje e shkurtër

Sulmet DDOS: Një përmbledhje e shkurtër

A jeni edhe ju viktimë e Sulmeve DDOS dhe jeni konfuz në lidhje me metodat e parandalimit? Lexoni këtë artikull për të zgjidhur pyetjet tuaja.

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

Ju mund të keni dëgjuar se hakerët fitojnë shumë para, por a keni menduar ndonjëherë se si i fitojnë ato para? Le te diskutojme.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Dëshironi të shihni shpikjet revolucionare nga Google dhe se si këto shpikje ndryshuan jetën e çdo njeriu sot? Më pas lexoni në blog për të parë shpikjet nga Google.

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

Koncepti i makinave vetë-drejtuese për të dalë në rrugë me ndihmën e inteligjencës artificiale është një ëndërr që e kemi prej kohësh. Por, pavarësisht nga disa premtime, ato nuk shihen askund. Lexoni këtë blog për të mësuar më shumë…

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Ndërsa Shkenca evoluon me një ritëm të shpejtë, duke marrë përsipër shumë nga përpjekjet tona, rriten edhe rreziqet për t'iu nënshtruar një Singulariteti të pashpjegueshëm. Lexoni, çfarë mund të thotë singulariteti për ne.

Evolucioni i ruajtjes së të dhënave - Infografik

Evolucioni i ruajtjes së të dhënave - Infografik

Metodat e ruajtjes së të dhënave kanë evoluar mund të jenë që nga lindja e të dhënave. Ky blog mbulon evolucionin e ruajtjes së të dhënave në bazë të një infografike.

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Lexoni blogun për të njohur shtresat e ndryshme në arkitekturën e të dhënave të mëdha dhe funksionalitetet e tyre në mënyrën më të thjeshtë.

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

Në këtë botë të drejtuar nga dixhitali, pajisjet inteligjente të shtëpisë janë bërë një pjesë thelbësore e jetës. Këtu janë disa përfitime të mahnitshme të pajisjeve shtëpiake inteligjente se si ato e bëjnë jetën tonë të vlefshme dhe më të thjeshtë.

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Së fundmi Apple lëshoi ​​macOS Catalina 10.15.4 një përditësim shtesë për të rregulluar problemet, por duket se përditësimi po shkakton më shumë probleme që çojnë në bricking të makinerive mac. Lexoni këtë artikull për të mësuar më shumë