VPN çıkışının arkasında port tarama sonuçları neden değişir?
Çıkışı değiştirin; hizmet yerinden kıpırdamasa da bir port farklı yanıt verebilir. Yol gözlemini gerçekten ihtiyaç duyduğunuz envanterden ayırın.
Aynı port kontrolünü bir ofis hattından ve bir VPN çıkışından çalıştırın; iki yanıt kimsenin değiştirmediği bir adres konusunda anlaşamayabilir. Bu fark, rotadan ve hangi ana bilgisayarın yanıt verdiğinden gelir, hizmetin çalışıp çalışmamasından değil. Üç soru bu açıklamaları ayırır: sonda gerçekte ne sordu, hangi ana bilgisayar yanıtladı ve kendi sunucunuz ne kaydetti. Bunları bu sırayla ele alın ve bir sonrakine geçmeden her yanıtı yazın.
İki çalıştırmayı karşılaştırmadan önce sondayı onarın
Bir durum sözcüğü ancak iki sözcük de aynı deneyden çıktığında başka bir durum sözcüğüyle karşılaştırılabilir. Beş alan bunu sabitler: uzak tarafın gördüğü kaynak adres, çözülen hedef, port, tarama türü ve zaman. Bunlardan herhangi birini değiştirin; ilkini iki kez ölçmek yerine ikinci bir deney yapmış olursunuz.
Her şeyden önce kaynağı kontrol edin, çünkü bir VPN istemcisi açıkken trafik hâlâ fiziksel arabirimden çıkıyor olabilir. Uzak tarafa ne gördüğünü sorun, sonra çekirdeğe hangi arabirimi seçtiğini sorun:
curl -s https://ifconfig.me
ip route get 203.0.113.20Farklı ağlarda iki adres, açıklamanın zaten elinizde olduğu anlamına gelir ve bu kontrollerin geri kalanı onu yalnızca doğrular. Bunlar uyuştuğunda, sondayı neden bayrağı açık olarak kaydedin; böylece durum çıplak bir sözcük olarak tek başına durmak yerine bir açıklamaya bağlı olarak döner. Tarama türü de o kayda aittir, çünkü ne sorulduğunu tanımlar, ne döndüğünü değil. Kaynağı, yöntemi ve zaman damgası olmayan bir durum hiçbir şeyle karşılaştırılamaz:
nmap -sT -p 443,8443 --reason 203.0.113.20Bu çıktıyı kaydın yanında tutun, sonraki kişinin göremeyeceği bir kaydırma tamponunda değil. Birbirine uymayan iki dürüst tarama ancak kimse koşulları yazmadığında tartışmadır. Koşullar sabitlendiğinde ya sonuçlar uyuşur ve soru kapanır ya da farklıdırlar ve fark yol hakkında bir olgudur.
El sıkışmayı hangi ana bilgisayarın bitirdiğini bulun
Tamamlanmış bir el sıkışma, onu bir ana bilgisayarın tamamladığını kanıtlar ve o ana bilgisayar aklınızdaki süreç olmak zorunda değildir. Bir yük dengeleyici, ters vekil veya SYN vekili gerçek sunucu devreye girmeden önce yanıt verebilir; bu olağan tasarımdır, belirti değildir. Beklenen ad için geçerli bir sertifika da bunu daraltmaz, çünkü sertifika bir hizmet ilişkisini tanımlar ve hangi makinenin bağlantıyı sonlandırdığı hakkında hiçbir şey söylemez.
Nmap port durumu başvurusu bunu temel kabul eder: durum, sondanın gönderildiği yerden neleri gözlemleyebildiğini kaydeder, portun bir özelliğini değil. Bir durum sözcüğünü böyle okuyun; uyuşmayan iki çalıştırma çelişkili değil tutarlı görünmeye başlar ve soru portun açık olup olmadığından onun önünde kimin durduğuna kayar.
İkinci soruyu dışarıdan değil arka uçta yanıtlayın. Bağlantıları kabul edip sonra kendi üst akışına ulaşamayan bir ön uç, yavaş bir uygulamayla sağlıklı bir hizmetin tam dış görüntüsünü üretir. İki durumu yalnızca üst akışın kendi kaydı ayırır:
tail -n 5 /var/log/nginx/access.log
ss -ltnp 'sport = :443'Günlük satırı, uygulamanın gerçekte gördüğü istemci adresini gösterir; ikinci komut ise 443 portunu tutan sürecin sizin uygulamanız mı yoksa önündeki bir şey mi olduğunu gösterir. İkisi hangi adresin bağlandığı konusunda uyuşmuyorsa, tek bir isteğin iki bacağına bakıyorsunuz demektir ve bilet bunu söylemelidir.
Tüneli suçlamadan önce kendi kurallarınızı denetleyin
Kasıtlı politika, bir portun bir ağda yanıt verip diğerinde vermemesinin en yaygın nedenidir ve mevcut açıklamaların en az ilginç olanıdır. Erişim kuralları bir kaynağa izin verip gerisini atmak için vardır, bu yüzden çıkışın değişmesi tam olarak onların yazılma nedenidir. Bu nedenle VPN üzerinden farklı bir durum, sağlayıcının trafiği incelediğini göstermez. Kaynak adresinizin artık farklı olduğunu gösterir, ki bu çok daha küçük bir iddiadır.
Bu kurallar sunucuda okunabilir, bu yüzden ağın ortası hakkında tahmin yürütmek yerine onları okuyun. İki adres aralığından herhangi birini anan filtre kurallarını listeleyin, sonra bağlantının daemon'a ulaşıp ulaşmadığını kontrol edin:
nft list ruleset | grep -n -e 203.0.113 -e 198.51.100
journalctl -u sshd -n 50 | grep 203.0.113Boş ikinci sonuç bilgilendiricidir, çünkü daemon'a hiçbir şey ulaşmamıştır ve soru bir filtreye, bir güvenlik grubuna veya yolun kendisine aittir. Bir isabet, hizmetin kaynağınızı gördüğü ve yanıtını seçtiği anlamına gelir ve bu karar genellikle okuyabileceğiniz bir kuralda yazılıdır. Sonuçların hiçbiri sağlayıcı hakkında bir hikâyeyi desteklemez ve ikisini de paket yakalamaktan daha ucuza denetleyebilirsiniz.
Taşımayı, sertifikayı ve yanıtı ayrı ayrı okuyun
Üç katman üç gözlem üretir ve bunlardan birini test eden bir sonda diğer ikisi hakkında rapor veremez. Tek bir hükümde katlamak yerine kayıtta ayrı satırlar olarak tutun, çünkü her satır kendi biçiminde başarısız olur ve başarısızlık biçimi bir sonraki sefer nereye bakmanız gerektiğini söyler.
| Observation | What it settles | What it leaves open |
|---|---|---|
| Connection completed | A host on the path accepted the handshake | Which host, and whether its upstream is reachable |
| Certificate valid for the name | The endpoint holds a credential for that name | Whether the process behind it is the one you meant |
| Expected response body | The application handled the request | Anything about other ports or other paths |
| Connection refused | A host replied and nothing was listening | Whether a filter sits ahead of the refused port |
| Timeout | No reply arrived before the deadline | Drop, blackhole route or an overloaded host |
Tek bir komut, denetlediğiniz bir hizmete karşı ilk üç satırı üretir. Çıktısını sohbet mesajına değil, taramanın yanındaki kayda koyun:
curl -v --resolve office.example:443:203.0.113.20 https://office.example/Çıktıyı sırayla okuyun: el sıkışma taşıma sorusunu yanıtlar, sertifika konusu ad sorusunu ve yanıt gövdesi uygulama sorusunu. El sıkışma satırı başarılı olup yanıt satırı olmadığında, bloke edilmiş bir port değil üst akışı bozuk bir ön ucunuz var. Bu, açtığınız biletten farklı bir bilettir ve bunu açıkça söylemeye değer.
Bilete dört olgu yazarak bitirin: kaynak adres, tarama türü, yanıt veren ana bilgisayar ve zaman. Daha sonraki bir karşılaştırmanın ihtiyaç duyduğu her şey bu dörtlüde yaşar ve davayı sonra devralan kişide terminal geçmişiniz olmayacaktır. Dördünü de dolduramıyorsanız, çalıştırma bitmemiştir.