Ostatnio zauważyłem, że na moim firmowym laptopie certyfikaty w GMAILu nie są od Google, ale z pewnej firmy, która robi zabezpieczenia.
Miałem kilka teorii, ale przekierowanie na DNSie to nie było, bo certyfikat był podmieniony nawet gdy nie byłem w VPNie...
Do tego traceroute wskazywał na maszyny od Google.
Tu miałem lekką dodatkową zagwozdkę bo certyfikat do Google.com był prawdziwy od Google (nie wiem czy to nie przez to, że Google chroni swój certyfikat w Chrome...), stąd miałem przez jakiś czas wrażenie, że to wszystko zależy od tego czy na stronę wejdę przed czy po wejściu do VPNa.
Ale sprawdzenie w sobotę i w niedzielę wykazało, że wszystkie przeglądarki i curl pokazują root certyfikat dostawcy zabezpieczeń...
Idąc śladem DNSa wszedłem do ustawień sieci i tu mi się w oczy rzuciło "proxies"... "To nie może być takie proste" pomyślałem, ale zajrzałem do środka i tak :-) Było przekierowanie do localhost :-)
Kto by pomyślał, że tak stary pomysł jak lokalne proxy z własnym root certyfikatem jest nadal używane :-)
Pamiętam jak tak robił Fiddler2 do rozszyfrowywania ruchu HTTPS żeby móc go podglądać w trakcie debugowania :-)
Tutaj to jest do głębokiej analizy pakietów jak przypuszczam.
Potwierdza to jednak moją teorię, że w komputerach wszystko zawsze sprowadza się do paru naprawdę prostych rzeczy ;-)
Tu było proxy, w innym przypadku są pliki... (tak Linux i chyba też inne *niksy robią mapowanie /etc/localtime). Ale zawsze gdzieś tam jest coś naprawdę prostego...
Z moich doświadczeń wychodzi, że w przypadku rzeczy sieciowych cURL się przydaje, traceroute też, czasem coś do podejrzenia ruchu... niestety ostatnio to głównie logowanie, bo rzeczy w stylu Fidddlera 2 jakoś nie są teraz tak akceptowalne, nie mówiąc już o wiresharku ;-) (netcap też robi cuda, pamiętam jak kiedyś jakiś Opos pomógł mi w którejś z poprzednich firm zgrać tak ruch między BigIP/F5, a naszymi serwerami (to były czasy gdy serwery między sobą gadały po HTTP, a BigIP robił SSLa)
W przypadku Java'y podejrzanie często przydatny jest jps, jstack (albo kill -3 <pid>).
Dla gradle'a task dependencies pomaga... (pomógł mi w piątek ;-))
Podobne postybetaLinux to jednak fajny jest ;-)Szukanie czemu mi nie działa program na Java 17, a czemu działa na Java 8 ;-)To uczucie gdy przechytrzysz elektronikę ;-)Chrome2ChromeV2 na GitHub :-)Głupi HTTPS...