Certifikáty Let's Encrypt nefungují na Androidu

darebacik

  • *****
  • 1 012
Certifikáty Let's Encrypt nefungují na Androidu
« kdy: 05. 07. 2018, 08:22:04 »
Mam nejake weby s certifikatmi od letsencrypt. Vacsinou nemam problem nikde, ale ked chcem web prehliadat na android 6.0.1, tak stale hlasi Vyskytli sa problemy s bezpecnostnym certifikatom
Ked kliknem na zobrazit certifikat, tak dostanem Certifikat nepochadza z doverihodnej autority
Minimalne je to tak na android 6.0.1 miui stable 8.5.3.0, prehliadac 8.7.7


ByCzech

  • *****
  • 1 879
Re:problem s letsencrypt na androide
« Odpověď #1 kdy: 05. 07. 2018, 08:52:25 »
Bez toho, abychom věděli jaké konkrétní weby to může být pouze pokus o trefu na slepo:

https://community.letsencrypt.org/t/incompatibility-with-android-6-0/37349

Re:problem s letsencrypt na androide
« Odpověď #2 kdy: 05. 07. 2018, 09:11:07 »
Posílá server kompletní certifikační cestu, tj. všechny certifikáty s výjimkou kořenového? Certifikáty Let's Encrypt jsou podepsané ještě další certifikační autoritou, a některé starší systémy neznají přímo certifikáty Let's Encrypt, ale znají tu nadřazenou certifikační autoritu (DST Root CA X3).

kkt1

  • *****
  • 796
Re:problem s letsencrypt na androide
« Odpověď #3 kdy: 05. 07. 2018, 09:40:57 »
Napis web, rekneme ti jestli je problem na webu nebo u tebe.

Re:problem s letsencrypt na androide
« Odpověď #4 kdy: 05. 07. 2018, 12:18:59 »
S Androidem jsem měl přesně stejný problém a stačilo právě přibalit mezilehlý certifikát Let's Encrypt k certifikátu pro danou doménu, čímž již byla známá cesta až k (důvěryhodnému) kořeni.
  • Jabber: vrtule@jabber.cz


darebacik

  • *****
  • 1 012
Re:problem s letsencrypt na androide
« Odpověď #5 kdy: 05. 07. 2018, 12:28:17 »
Citace od: Martin Dráb kdy 05. 07. 2018, 12:18:59
S Androidem jsem měl přesně stejný problém a stačilo právě přibalit mezilehlý certifikát Let's Encrypt k certifikátu pro danou doménu, čímž již byla známá cesta až k (důvěryhodnému) kořeni.
Ako přibalit mezilehlý certifikát Let's Encrypt k certifikátu pro danou doménu

Re:problem s letsencrypt na androide
« Odpověď #6 kdy: 05. 07. 2018, 12:41:25 »
Citace od: darebacik kdy 05. 07. 2018, 12:28:17
Ako přibalit mezilehlý certifikát Let's Encrypt k certifikátu pro danou doménu
Záleží na konkrétním serveru. Např. nginx umožňuje uvést zvlášť cestu k serverovému certifikátu a zvlášť k mezilehlému certifikátu autority, nebo dáte všechny certifikáty do jednoho souboru a uvedete cestu jenom k němu. Certifikáty se do daného souboru prostě nakopírují za sebou, takže v souboru je pak:

-----BEGIN CERTIFICATE-----
... 1. certifikát ...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
... 2. certifikát ...
-----END CERTIFICATE-----

ByCzech

  • *****
  • 1 879
Re:problem s letsencrypt na androide
« Odpověď #7 kdy: 05. 07. 2018, 17:36:41 »
Citace od: darebacik kdy 05. 07. 2018, 12:28:17
Citace od: Martin Dráb kdy 05. 07. 2018, 12:18:59
S Androidem jsem měl přesně stejný problém a stačilo právě přibalit mezilehlý certifikát Let's Encrypt k certifikátu pro danou doménu, čímž již byla známá cesta až k (důvěryhodnému) kořeni.
Ako přibalit mezilehlý certifikát Let's Encrypt k certifikátu pro danou doménu

Dostal jste odpověď už v prvním příspěvku, četl jste ten odkaz?

CitaceThe website send incomplete chain of certificates. It should be configured to send fullchain.pem instead of cert.pem.

darebacik

  • *****
  • 1 012
Re:problem s letsencrypt na androide
« Odpověď #8 kdy: 05. 07. 2018, 23:18:28 »
do confu pre vhost
/etc/apache2/sites-available/web.confsom pribalil aj existujuci fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/web/fullchain.pemrestart apache
systemctl reload apache2a problem pretrvava aj nadalej

Re:problem s letsencrypt na androide
« Odpověď #9 kdy: 05. 07. 2018, 23:31:06 »
Jestli to chápu správně, tak jste upravoval PEM soubor, ve kterém není certifikát, ale privátní klíč. Webserver ale klientovi (prohlížeči) posílá certifikát(y), ne privátní klíče, takže mezilehlé certifikáty musíte přibalit k certifikátu (často soubor s příponou .crt).
  • Jabber: vrtule@jabber.cz

Jenda

Re:problem s letsencrypt na androide
« Odpověď #10 kdy: 06. 07. 2018, 00:02:29 »
Když je tak tajné, jaký web to je, asi si budeš muset vystačit sám. Mohlo by pomoct https://www.ssllabs.com/ssltest/.

darebacik

  • *****
  • 1 012
Re:problem s letsencrypt na androide
« Odpověď #11 kdy: 06. 07. 2018, 07:29:54 »
Citace od: Martin Dráb kdy 05. 07. 2018, 23:31:06
Jestli to chápu správně, tak jste upravoval PEM soubor, ve kterém není certifikát, ale privátní klíč. Webserver ale klientovi (prohlížeči) posílá certifikát(y), ne privátní klíče, takže mezilehlé certifikáty musíte přibalit k certifikátu (často soubor s příponou .crt).
V adresary /etc/letsencrypt/live/web/mam symlinky na 4 subory
cert.pem
chain.pem
fullchain.pem
privkey.pem
ktore som vygeneroval prikazom./letsencrypt-auto certonly --webroot -w /var/www/web -d moj-web.com -d www.moj-web.comVystup z generovania
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/web/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/web/privkey.pem
   Your cert will expire on 2018-08-31. To obtain a new or tweaked
   version of this certificate in the future, simply run
   letsencrypt-auto again. To non-interactively renew *all* of your
   certificates, run "letsencrypt-auto renew"
- If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Ako som uviedol vyssie v prispevku, pridal som do
/etc/apache2/sites-available/web.conf
direktivu
SSLCertificateKeyFile /etc/letsencrypt/live/web/fullchain.pemAle vysledok sa nedostavil. myslel som si, ze mam tam chybu (key), cize som to upravil na
SSLCertificateFile /etc/letsencrypt/live/web/fullchain.pemale restart apache zlyhal (pre spatny config).
Citace od: Jenda kdy 06. 07. 2018, 00:02:29
Když je tak tajné, jaký web to je, asi si budeš muset vystačit sám. Mohlo by pomoct https://www.ssllabs.com/ssltest/.
Web tu nechcem uvadzat, pretoze je to urceny len pre urcity okruh ludi a nechcem ho zverejnovat. Ten test som vcera spravil ... dostal som hodnotenie  B.
Priznam sa, ze neviem velmi dobre po anglicky, ale test mal vystupy vacsinou v zelenych, resp. oranzovych cislach. Jedine cervenym bolo v sekcii Configuration - Handshake Simulation
IE 8 / XP   No FS 1   No SNI 2 Server sent fatal alert: handshake_failure Ak je potrebne dodat nejake vysledky neni problem (web tu ale nechcem zverejnovat)

Re:problem s letsencrypt na androide
« Odpověď #12 kdy: 06. 07. 2018, 08:19:02 »
Apache potřebuje znát jak privátní klíč (který používá při šifrování spojení), tak certifikát a případně certifikační cestu (kterými se prokazuje klientovi). Takže SSLCertificateKeyFile musí ukazovat na privátní klíč, a dále SSLCertificateFile  na serverový certifikát (a mohou za něj být přidané mezilehlé certifikáty, v pořadí nejprve serverový certifikát a pak vždy certifikát, který byl použit k vystavení předchozího certifikátu v souboru), případně mezilehlé certifikáty mohou být v SSLCertificateChainFile.

Takže ve vašem případě:

SSLCertificateKeyFile    /etc/letsencrypt/live/web/privkey.pem
SSLCertificateFile       /etc/letsencrypt/live/web/cert.pem
SSLCertificateChainFile  /etc/letsencrypt/live/web/chain.pem


Nezapomeňte na to, že certifikáty Let's Encrypt mají platnost jen tři měsíce, takže je potřeba je často obnovovat, ideálně automaticky skriptem třeba z cronu.

darebacik

  • *****
  • 1 012
Re:problem s letsencrypt na androide
« Odpověď #13 kdy: 06. 07. 2018, 08:59:31 »
Pridal som tam vsetky certifikaty

SSLCertificateKeyFile    /etc/letsencrypt/live/web/privkey.pem
SSLCertificateFile       /etc/letsencrypt/live/web/cert.pem
SSLCertificateChainFile  /etc/letsencrypt/live/web/chain.pem
SSLCertificateChainFile  /etc/letsencrypt/live/web/fullchain.pem
a stejne to pise, ze certifikat pochadza z nedoverihodnej autority

ByCzech

  • *****
  • 1 879
Re:problem s letsencrypt na androide
« Odpověď #14 kdy: 06. 07. 2018, 09:27:36 »
Zkus to takhle:

SSLCertificateKeyFile    /etc/letsencrypt/live/web/privkey.pem
SSLCertificateFile       /etc/letsencrypt/live/web/fullchain.pem


Nic jiného, jen takto. A pozor na to co máš v SSLCertificateFile!