DNS هنگام ترکیب Tor و VPN کجا میرود
مرورگر Tor، سیستمعامل و کلاینت تونل هر یک میتوانند نامی متفاوت را از مسیری متفاوت تجزیه کنند. تبادلها را پیش از آنکه نشت بنامیدش دنبال کنید.
دو ابزار حریم خصوصی در حال اجرا هستند، یک صفحه بارگذاری نمیشود و یک آزمون تجزیهگر میگوید چیزی بیرون از مرورگر نامی دریافت کرده است. پیش از آنکه این به گزارش نشت تبدیل شود، تبادلی را که از آن آمده نام ببرید. پیکربندی Tor بههمراه VPN دستکم سه جستوجوی متفاوت نام با سه مالک متفاوت دارد، و مرور آنها به همان ترتیبی که رخ میدهند سریعترین راه دیدن این است که کدامیک بدرفتاری میکند.
هر تبادل را پیش از آنکه نشت بنامیدش نام ببرید
تبادل نخست خود نقطه پایانی VPN را تجزیه میکند و پیش از وجود هرگونه محافظت رخ میدهد. دومی مقصدی را برای مرورگر Tor تجزیه میکند، که میتواند نام را به پروکسی بسپارد بهجای آنکه آن را محلی تجزیه کند. سومی همه چیز دیگر روی دستگاه را پوشش میدهد، از جمله بررسیهای بهروزرسانی، کلاینتهای ایمیل و جستوجوهای سرویس خود سیستمعامل. تنها نخستین مورد میتواند بدون دخالت دو مورد دیگر رخ دهد.
هر یک از آنها میتواند مسیری متفاوت را دنبال کند، و یک آزمون واحد در مرورگر تنها درخواست خودش را میبیند. اینکه یک نتیجه را وضعیت هر سه بگیریم همان جایی است که بیشتر سردرگمی آغاز میشود.
پیش از تغییر هر چیز بنویسید کدام نامها به کدام لایه تعلق دارند. نامهای سازمانی خصوصی، یک مقصد عمومی و خود نقطه پایانی تونل شرایط یکسانی ندارند، و سیاستی که آنها را یک دسته بگیرد چیزی را خراب خواهد کرد.
جستوجوی راهاندازی پیش از تونل رخ میدهد
کلاینتی که با نام میزبان پیکربندی شده باید آن نام را تجزیه کند تا تونل را باز کند، و در آن لحظه تونلی نیست که درخواست را حمل کند. هر تجزیهگری که سیستمعامل در شبکه کنونی عرضه کند پاسخ میدهد، که میتواند دروازه اسیر، تجزیهگر هتل یا یک تجزیهگر عمومی باشد. این نشت در تونل نیست، چون هنوز تونلی وجود ندارد.
تغییر تنظیم DNS امن مرورگر هم به این جستوجو دست نمیزند، چون به سرویسی تعلق دارد که بیرون از مرورگر اجرا میشود و پیش از باز شدن هر صفحهای آغاز میشود. اگر نام نقطه پایانی تجزیه نشود، هیچ سیاستی درون تونل کمکی نمیکند، چون شکست یک مرحله پیشتر از هر چیزی رخ میدهد که پیکربندی توصیف میکند.
این تنها جایی است که استفاده از نشانی تحتاللفظی برای نقطه پایانی، اگر ارائهدهنده پشتیبانی کند، یک وابستگی را جای افزودن حذف میکند. همچنین توانایی پیروی از ارائهدهندهای را که نشانیها را میچرخاند از میان برمیدارد، پس این معامله واقعی است و باید تصمیم گرفته شود نه آنکه کشف شود.
مرورگر و بقیه دستگاه تفاوت دارند
واسط SOCKS در Tor پشتیبانی میکند که نام میزبان مقصد به پروکسی سپرده شود، یعنی طرف دور تجزیه را انجام میدهد و دستگاه محلی هرگز نمیپرسد. برنامهای عمومی که از پروکسی پشتیبانی میکند ممکن است نخست نام را محلی تجزیه کند و سپس به نشانی بهدستآمده متصل شود، که درخواستی محلی برای مقصدی میسازد که کاربر گمان میکرد از پروکسی میگذرد. پس دو برنامه میتوانند همزمان یک تنظیم پروکسی را به اشتراک بگذارند و در جاهای متفاوت نشت کنند. هیچ چیز در یک نشانی پروکسی مشترک به شما نمیگوید کدام یک از دو رفتار در جریان است.
مرورگرها زمانی که DNS امن فعال است لایه دیگری میافزایند، چون مرورگر میتواند ارائهدهنده خودش را انتخاب کند و بهکلی از تجزیهگر سیستم بگذرد. کلاینت تونل در همین حال میتواند تجزیهگری را برای همه دستگاه از تونل عبور دهد. این دو تنظیم میتوانند هر دو درست باشند و همچنان رفتاری متفاوت برای برنامههای متفاوت توصیف کنند.
برنامهای را که درخواست را ساخته بررسی کنید نه اینکه از یک صفحه آزمون تعمیم دهید. تمایز میان درخواستی که درون تونل حمل میشود و درخواستی که هرگز به Tor نرسید دقیقاً همان تمایزی است که یک نشانی تجزیهگر نمیتواند نشان دهد.
هر برنامه را بررسی کنید، سپس با قصد مقایسه کنید
مشاهدهها را جداگانه اجرا کنید: سیستم چه چیزی را به کار میبرد، مرورگر برای چه چیزی پیکربندی شده، و آیا اتصال SOCKS نامی را حمل میکند یا نشانی. مورد آخر تفاوت میان تجزیه دور و محلی است، و مشخصات افزونههای SOCKS توصیف میکند چگونه نام میزبان سپرده میشود بهجای آنکه نخست تجزیه شود.
resolvectl status | grep -E "Current DNS Server|DNS Servers"
ss -tnp '( dport = :9050 )'
dig +short dev.internal.example
getent hosts vpn-endpoint.example.net
سپس آنچه مشاهده کردید را با آنچه قصد داشتید مقایسه کنید. نامی عمومی که تجزیهگری به انتخاب شما از تونل تجزیه میکند همان یافتهٔ نامی خصوصی نیست که در هنگام عقبنشینی به تجزیهگری عمومی سپرده میشود، و معمولاً تنها دومی نیازمند اقدام است. نخستین مورد پیکربندیای است که همانگونه که طراحی شده کار میکند، حتی اگر در یک گزارش ناآشنا به نظر برسد.
استثناهایی را که میپذیرید ثبت کنید، از جمله جستوجوی راهاندازی که نمیتوان محافظت کرد. استثنای نوشتهشده یک تصمیم طراحی است، در حالی که همان استثنا اگر بعداً کشف شود نقص به نظر میرسد. کسی که آن را پیدا کند چنین با آن رفتار میکند، و شما جلسه را صرف توضیح این میکنید که چرا اینگونه نیست.