SSL

Sziasztok.

Azért, hogy a honlapom https protokollal is elérhető legyen, tudtommal kell  lennie egy SSL tanusítványnak.

Kérdésem az, hogy ezt hogyan érdemes megvalósítanom? Készítsek pixelenként egy sajátot (még sosem volt szerencsém ilyenhez), vagy a tárhelyszolgáltatómtól vásároljak egyet?

Alampotor joomla (ne bántsatok érte, kérlek), és azzal is tisztában vagyok, hogy a keresőrendszerek is büntibe rakják azokat a weboldalakat, amelyek nem https-en küldenek át felhasználói adatokat.

Hozzászólások

Letsencryptet neki, aztán el lehet felejteni kis automatizálás után.

Lehet azt fizetossel is boven.

https://www.techtarget.com/searchsecurity/news/252436120/23000-Symantec…

"DigiCert, which acquired Symantec's certificate business last August, announced Wednesday that approximately 20,000 Symantec certificates, including GeoTrust, Thawte and RapidSSL brands, were to be revoked because their private keys had been exposed [DigiCert later revised the number to around 23,000 certificates]."

Several information security experts questioned why a reseller like Trustico would even have the private keys to begin with. The reseller said it "allows customers to generate a private key during the ordering process. These private keys are stored in cold storage, for the purpose of revocation."

Szóval csak segíteni akartak azoknak, akik nem tudnak maguk PK-t generálni. És ha már segítségnél tartottak, el is mentették a generált PK-t, hátha ezek a jámbor elmék elvesztik, és akkor lesz tartalék. Még szerencse, hogy a világ tele van ilyen jószándékú emberekkel.

A honlapodat kiszolgáló webszervert kell felkonfigurálnod ehhez. Hozzáférsz? Vagy ez egy olyan klasszikus PHP-s virtual hosting, ahol erre nincs lehetőséged?

Szerkesztve: 2022. 05. 24., k – 22:44

SSL tanúsítványt bármelyik tanúsítványkiadótól be tudsz szerezni.

A legegyszerűbb tanúsítványok az úgynevezett domain validált tanúsítványok, ahol csak annyit ellenőriznek, hogy valamilyen szinten rendelkezel a domain felett, pl. képes vagy a hozzá tartozó webszerveren elhelyezni egy fájlt.

A domain validált tanúsítványok tipikusan pártíz dollárba kerülnek évente, de már van lehetőség ingyenesen is beszerezni, a Let's Encrypt nevű, non-profit tanúsítványkiadótól. Ez utóbbi kínál egy "certbot" nevű eszközt, ami képes automatizált módon beszerezni és megújítani a tanúsítványokat, tehát, tulajdonképpen csak egyszer kell feltelepítened és beállítanod.

Két kérdés merül fel tehát:

1.) klasszikus tanúsítványkiadótól szeretnél-e venni tanúsítványt, vagy használod a Let's Encrypt ingyenes szolgáltatását?

2.) a weboldal milyen webtárhelyen/szerveren van? Sajáton? Szolgáltatónál?

Ha Let's Encrypt, akkor saját szerver esetén neked kellhet Certbot-ot telepíteni, utóbbi esetben kérdés, hogy a szolgáltató támogatja-e?

hostingernél vagyok egy csomaggal. Ahogy láttam, ott van SSL, vehetek. De mivel még életemben nem csináltam ilyet, azt hittem, hogy én is meg tudom konstruálni mezei BASH-ban... (Szóval sík hülye vagyok hozzá.)

10-féle lény van:
-- aki ismeri a bináris számrendszert,
-- és amelyik nem.

> Készítsek pixelenként egy sajátot

azert ezt megneznem :)

Magyarázd meg kérlek, hogy mit jelent az, hogy "pixelenként"? A tanúsítvány nem egy kép, nem lehet rajzolni - legalábbis jelenleg...

"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."

A fenti kérdéseket eldöntötted, akkor ki kell töltened CSR-t - lehet, hogy a tárhely szolgáltatód fogja generálni, de ahhoz is egy formot ki kell tölteni.

Tartalma: domain neve, szervezet neve és címe (ország, állam, város) és kell egy személy neve email címmel.

Milyen SSL cert lesz ? gondolom elég egy DV - vagyis Domain Validation - egy domain-re lesz vagy az összes aldomain-re is - ha van (ez a csillagos cert :-)

De szerintem dobj egy mail-t a tárhely supportnak és segítenek.

(Off: ahogy én látni vélem, önaláírt certet nem érdemes használni, saját CA-t pedig csak akkor, ha a céges intraneten te vagy az ezzel megbízott illetékes.)

Szerkesztve: 2022. 06. 03., p – 20:19

Aszem megcsináltam!

beléptem ssh-val a szerveremre, majd -- láss csodát!
Benn is voltam.

ls,

majd láttam, hogy public_html-be még illő belépnem.

Lépek.

ls,

majd ott a honlapka...
Elindítottam egy mc-t, mert "kotu" vagyok, majd kortyoltam egy kis kávét, mert azt így kell, a BASH sem megy anélkül.

létrehoztam egy könyvtárat, majd abban egy fájlt ezzel a tartalommal:
 

#!/bin/bash
mkdir /etc/httpd/ssl
cd /etc/httpd/ssl

echo -e "Enter your virtual host FQDN: \nThis will generate the default name for Apache SSL Certificate and Key!"
read cert

openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out $cert.key
chmod 600 $cert.key
openssl req -new -key $cert.key -out $cert.csr
openssl x509 -req -days 365 -in $cert.csr -signkey $cert.key -out $cert.crt

echo -e " The Certificate and Key for $cert has been generated!\nPlease link it to Apache SSL available website!"
ls -all /etc/httpd/ssl
exit 0

Ezt futtathatóvá tettem, majd elindítva követtem az instrukciókat. Keletkezett három fájl, mindhárom ponttal kezdődött.

cat-tal kilistáztam őket, majd darabonként bemásoltam a hostingeren az SSL tanusítvány micsodájának a mizéjébe.
Elsőre sikerült a kulcsok formmal történő elküldése, és ezután már csak aktiválnom kellett a "FORCE HTTPS" nevű gombot.

Ezután a honlapom már bejött https protokollal, persze a firefox mondta, hogy érkezik egy tanúsítvány.

-------------

Kérdésem:

ha valaki hülyetelefonnal ilyen oldalt letölt és üres képernyő jelenik meg, mert képtelen a rajta futó böngésző kezelni a tanúsítványt, akkor mi a teendőm?

Valami marhaságot csináltam?

Előfordulhat, hogy mivel a tanúsítványt nem egy megbízható CA - tanúsító hatóság állította ki, hibaüzenet jelenik meg a böngészőben, és emiatt kell kézzel elfogadni a tanúsítványt?

Vagy a tanúsítványból származó hosztnév nem egyezik meg a kapcsolatot létrehozó hosztnévvel, az is baj?

Jobb lett volna inkább vásárolnom kulcsot a tárhelyszolgáltatómtól? (Két óriáspizza ára...)

10-féle lény van:
-- aki ismeri a bináris számrendszert,
-- és amelyik nem.

ha valaki hülyetelefonnal ilyen oldalt letölt és üres képernyő jelenik meg, mert képtelen a rajta futó böngésző kezelni a tanúsítványt, akkor mi a teendőm?

elengedni a usert

Valami marhaságot csináltam?

elég szuboptimális, lásd lent

Előfordulhat, hogy mivel a tanúsítványt nem egy megbízható CA - tanúsító hatóság állította ki, hibaüzenet jelenik meg a böngészőben, és emiatt kell kézzel elfogadni a tanúsítványt?

nem előfordulhat, hanem pontosan ez lesz. Minden böngésző pontosan ezt fogja tenni. A google bot meg letol a picsába a lista aljára (ha egyáltalán felkerülsz)

Vagy a tanúsítványból származó hosztnév nem egyezik meg a kapcsolatot létrehozó hosztnévvel, az is baj?

igen, az is baj, vagy tételesen fel kell sorolni az összes lehetséges hostnevet, mint subjectAltName, vagy wildcard certet kell csinálni. (amiben a fődomain azért még külön benne kell legyen, mert a *.example.com az nem example.com)

Jobb lett volna inkább vásárolnom kulcsot a tárhelyszolgáltatómtól? (Két óriáspizza ára...)

Igen, de még jobb lett volna mondjuk certbotot (vagy acme.sh-t, vagy valamit) használni, és behúzni egy ingyenes letsencrypt (vagy egyéb free CA) tanúsítványát, akkor nem krákognak a kliensek.

A saját magad által aláírt tanúsítványt semmilyen készüléken, semmilyen böngésző nem fogja elfogadni, a weboldal látogatójának kézzel kell jóváhagynia, hogy a "nem biztonságos oldalt" meglátogathassa.

A fentebb többféle megoldást kifejtettünk arra, hogyan juthatsz zéró óriáspizza áráért ingyenes, megbízható CA által aláírt tanúsítványhoz. (Let's Encrypt)

Egy hónap volt, hogy önállóan legalább ennyit meg tudjak csinálni, miközben alig vannak erről az ssl-dolgokról fogalmaim.

A megoldásom az, hogy mivel egyszerűen nem értem, mit írtok, leszedem a tárhelyről az ssl-t, nem lesz https-elérésem. Ahogy webáruházam sem, mert lassan abból is elegem van. 30 évvel ezelőtt simán belemélyedtem volna bármilyen hasonló területbe, de ma már nem. Ha egy hónapon belül sem jövök rá valamire, azt el kell engednem, az élet a lemondásokról szól.

10-féle lény van:
-- aki ismeri a bináris számrendszert,
-- és amelyik nem.

Minden tisztelettel, egy Let's Encrypt cert igénylésénél egyszerűbb dolog aligha van a témában, tipikusan a szolgáltatónál megnyomsz egy gombot és "varázsütésre" ott terem, nem véletlenül javasoltam ezt az első hsz-ben (akkor sem sokkal bonyolultabb, ha kézzel csinálod a szerveren, konkrétan egy darab parancs, majd egy darab cron job a megújításhoz). Tényleg nem értem mi azzal a gond vagy mi akadályozza, hogy megcsináld. Mondanám, hogy megcsinálom neked, de.. inkább nem mondom. :)

A CPaneleken normális helyen az AutoSSL alapon alapból készül cert minden hoszthoz, legalábbis megpróbálja. Ez semmi különös, ez egy alap feature, ezt csinálja szépen a háttérben. Ahol látok ilyet működni, ott is remekül megy. A szolgáltatói WHM felületen van opció, hogy Let's Encrypt vagy a CPanel saját alapúja legyen, de általában mindkettő rendben megy. Aki CPanel tárhelyet vesz, annak ebből érdemes kiindulnia. :)

Az más kérdés, hogy ha valaki mindenképp szeretne valamilyen fizetős certet, akkor szive joga.

Ahol nem CPaneleznek, általában ott alapból, vagy kérésre belövik az letsencryptes certet, bár kivételek mindíg lesznek.

Arra próbáltam utalni, hogy normálisan beállított, és működő CPanel tárhelynél ez nem feladat, mert van. Nagyon gyorsan megcsinálja az új hosztnév beállítása után, vagy ha a megfelelő rekordok már a tárhelyre mutatnak (vagy megnyomja az ember a Run AutoSSL gombot az SSL/TLS Status menüben). Bár a validációs módok miatt ajánlott, hogy ahol a CPanel tárhely, ott legyen a domain névszerver, nem jó kavarni.

Nem kell belemélyedni, ha akarsz webáruházat, fogjál valakit, és csináltasd meg, szerintem halmokban állnak az ilyen cégek, és azért az ssl-n túl lesz ott még technikai szempontból pár meglepi.

(Egyébként nem annyira nagy ördöngösség ám az az ssl, legalábbis eddig a szintig, lehet, ha guglizol egyet valami egyetemi magyarázóra, akkor abból összeáll a kép)

A jelenlegi Premium csomagomban jár a tárhelyhez egy ingyenes SSL, örökérvényű.
A többi 3-5000 ft darabonként.

Manuálisan csak ssh-n tudnék csinálni valahogyan, de nekem az meredek. Majd ha egyszer aktuális lesz komolyabban a következő évtizedben, akkor a 60. születésnapomra meglepem magam vele.

10-féle lény van:
-- aki ismeri a bináris számrendszert,
-- és amelyik nem.

jó, de pont azt mondom, hogy ha az sslt nem akarod felszedni, és ennyire komfort zónán kívül van, akkor jó eséllyel a webshophoz szükséges technikai ismeretek egy jó része is annyira ott lesz, hogy az se fog jól menni. Meg kell csináltatni valakivel, akivel azon a szinten lehet neked maradni, hogy egy websop rendel, a tartalmáról beszélgessetek, meg a használatáról, az SSL mint olyan meg érdeklje őt.

Mostanra egy kicsit ellentmondásos lett ez a beszélgetés, mert SSL-t és webshop-ot szeretnél, de nem akarsz bele időt tenni, de megrendelni sem akarod mástól, mert abból nem tanulsz. Ez a két dolog szerintem vagy-vagy, nem lehet csak egyiket választani és nem lehet mindkettőt kizárni (azaz de, csak akkor nem valósul meg semmi).

A Hostinger-nél egy hPanel nevű saját feljlesztésű menedzsment felület van a weboldaluk szerint (nem cPanel-es már, az régebben volt). Kizártnak tartom, hogy a webtárhelyhez az SSL beállítása több legyen egy pipáláson ezen az admin felületen (amihez van hozzáférésed, mert előfizetőjük vagy).
Ha nem tudod mi az SSL (és hozzá kapcsolódóan a tanúsítványok) és hogyan működik, akkor egy max. 1 perces Google kereséssel találsz róla tetszőleges nyelven leírást kezdőtől haladó szintig.

A webshop az ennél nagyságrendekkel nagyobb falat, azzal még a web(oldal)fejlesztőkön belül sem mindenki foglalkozik. Ha Te sem szeretnél nulláról csinálni, akkor bérelj egyet az UNAS-nál vagy más hasonló webshop szolgáltatónál, és szabd magadra. Ha egyedit szeretél, akkor vagy rendelsz egy ilyen fejleszésével foglalkozótól, vagy elkezded megtanulni pl. Wordpress/WooCommerce alapon összerakni valamit - ez sokkal-sokkal több idő lesz, mint az SSL megértése és aktiválása.

Végül is majdnem megvagy, csak a saját cert generálás helyett egy letsencrypt certet szerezz be. Azt nem értem, hogy minek mc, ha egyszer úgyis shellben csinálod, és beveretheted oda, ha meg scriptet írsz, akkor mindjárt a text editort is lehet hívni, és abba gépeled be. Az mkdir-hez jobb a -p kapcsolót használni, az a köztes mappákat is létrehozza, ha nem léteznének. ls-nél az -all nem ad hibaüzenetet, hanem -a -l -l egymásutánjának veszi, gondolom itt a költő az --all (ugyanaz, mint az -a) kapcsolóra gondolt, vagy az -la-ra, ami szintén feleslegesnek tűnik ennél a felhasználásnál, ide elég lenne a ls, ls -l vagy ls -1 és még a szóban forgó ssl mappa elérési útja sem kell, mert a cd-zés után az a $PWD.

A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)

Én egy itteni fórumtárs által lefikazott (webszervert az óvodás is tud írni) Caddy HTTP(S) szervert ajánlanék reverse proxynak. Ha jól van felvéve a domain és a tűzfal, már kapja is magára a Letsencrypt tanúsítványt. Egy minimális VM-ben vagy konténerben elfutkorászik.