به OpenVPN متصل شدهاید اما پینگ یا اشتراک SMB ندارید؟ سه دروازه را بررسی کنید
یک تونل کارآمد هیچ چیزی دربارهٔ ارسال، پورتهای SMB یا جستجوی نام نمیگوید. هر دروازه را به ترتیب بیازمایید و در نخستین دروازهای که شکست میخورد بایستید.
تونل بالا میآید، کلاینت نشانی میگیرد و هیچ چیز در LAN دور پاسخ نمیدهد. پینگ شکست میخورد، اشتراک باز نمیشود و گزارش VPN پاک به نظر میرسد، چون از دید آن نشست سالم است. میان آن نشست و یک فایل روی سرور سه دروازهٔ مستقل قرار دارد: سیاست ارسال، پورتهایی که سرویس نیاز دارد و نامی که به جای نشانی تایپ کردید.
هر دروازه با نشانهای متفاوت شکست میخورد و تنها دروازهٔ نخست روی سرور VPN است.
ارسال یک سیاست روی زنجیرهٔ FORWARD است
پذیرش شنوندهٔ OpenVPN در INPUT رخ میدهد، به همین دلیل تونل میتواند متصل شود در حالی که هر بستهٔ رو به LAN دور ریخته میشود. ترافیکی که از tun0 میرسد و از رابط LAN خارج میشود از FORWARD عبور میکند و میزبان با سیاست پیشفرض DROP آن را بیصدا دور میریزد. پیش از دست زدن به هر چیز دیگر هم sysctl و هم زنجیره را بررسی کنید: sysctl net.ipv4.ip_forward و iptables -L FORWARD -v -n.
جهتی را که میخواهید و پاسخهای مربوط به آن را مجاز کنید، مثلاً یک قاعدهٔ accept از رابط تونل به رابط LAN بههمراه یک قاعدهٔ stateful برای ترافیک established و related. اگر LAN پشت روتر دیگری است، آن روتر به مسیری بازگشتی به استخر کلاینتها یا source NAT روی سرور VPN نیاز دارد. پیش از افزودن قواعد بیشتر، آن مسیر را با یک پینگ تأیید کنید، چون قاعدهای که به آن نمیرسیم هرگز در شمارنده دیده نمیشود.
SMB به بیش از یک پورت نیاز دارد
اشتراک فایل یک گفتوگوی واحد TCP 445 نیست. کشف از UDP 137 و 138 استفاده میکند، نشستهای قدیمیتر NetBIOS از TCP 139 و نشستهای مدرن SMB از TCP 445. قاعدهای که تنها 445 را باز میکند آن وضعیت آزاردهنده را میسازد که درایو نگاشتشده کار میکند و مرور شبکه نه، یا برعکس.
انتقالهای بزرگ از تونل هم به مشکلات MSS میخورند که شبیه اشتراک خراب به نظر میرسند. SYN که اندازهٔ کامل قطعهٔ LAN را اعلام میکند با MTU کوچکتر تونل دور ریخته میشود و اتصال پس از دستدادن معلق میماند. محدود کردن MSS در مسیر ارسال، iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu، این دسته از توقف را از میان برمیدارد. با یک کپی چند مگابایتی به جای فهرست پوشه بیازمایید، چون پاسخهای کوچک حتی وقتی انتقالهای انبوه عبور نمیکنند عبور میکنند.
آداپتور تونل بهصورت یک نمایهٔ شبکهٔ جدید میآید
Windows هر آداپتور را در یک نمایهٔ شبکه دستهبندی میکند و آداپتور تونل تازه معمولاً در Public میافتد، جایی که قواعد اشتراک فایل و چاپگر مسدود است. این تصمیم فایروال میزبان روی سرور فایل است، نه مشکل مسیریابی روی سرور VPN. دسته را آگاهانه با Set-NetConnectionProfile -InterfaceAlias "Ethernet 3" -NetworkCategory Private تغییر دهید پس از تأیید اینکه سیاست آن را مجاز میداند، چون دسته همچنین تغییر میدهد که کدام قواعد ورودی اعمال شوند.
همان نمایه پینگی را توضیح میدهد که شکست میخورد در حالی که TCP 445 موفق است: درخواستهای بازتاب در Public بهطور پیشفرض دور ریخته میشوند.
نامها بهخودیخود از تونل مسیریابیشده عبور نمیکنند
تجزیهٔ نام NetBIOS و کشف محلی به پخشهایی وابستهاند که تونل مسیریابیشده حمل نمیکند. بنابراین تایپ نام کوتاه سرور شکست میخورد در حالی که نشانی آن کار میکند و اشتراک خراب به نظر میرسد وقتی تنها جستجو خراب است. یک رکورد DNS برای سرور در حلکنندهای که تونل میدهد اضافه کنید یا در میانبر از نشانی استفاده کنید.
اگر استقرار هنوز به WINS وابسته است، آن را روی کلاینت پیکربندی کنید نه اینکه امیدوار باشید ترافیک پخش ظاهر شود. نخست با نشانی بیازمایید تا خطای نام با خطای فایروال اشتباه نشود.
هر بار یک لایه را بیازمایید و نخستین شکست را بخوانید
از پایین به بالا بروید: به دروازهٔ تونل پینگ بزنید، به یک میزبان LAN با نشانی پینگ بزنید، سپس پورت سرویس را با Test-NetConnection -ComputerName 10.8.0.5 -Port 445 باز کنید و تنها پس از آن به اشتراک احراز هویت کنید. نخستین گامی که شکست میخورد همان لایهای است که باید درست شود و هر گام بعدی تا عبور آن نویز است. پینگی که پاسخ میدهد در حالی که پورت بسته میماند به فایروال خود سرور فایل اشاره دارد و پورتی که با وجود پینگهای خاموش باز میشود به فیلتر ICMP اشاره دارد. نخستین گام شکستخورده را پیش از هر تغییری بنویسید، چون تغییر دوم نتیجهٔ اولی را پنهان میکند.
اگر سرور VPN روتر LAN نیست، مسیر بازگشت را روی همان روتر تأیید کنید پیش از افزودن قواعد بیشتر به سرور. بدون آن، درخواستها به میزبان میرسند و پاسخها از مسیر پیشفرض به سمت اینترنت خارج میشوند، که از سمت کلاینت دقیقاً شبیه دور ریختن توسط فایروال است.
حساب اشتراک را در یادداشتهایتان از ورود VPN جدا نگه دارید، چون تونل موفق هیچ چیزی دربارهٔ مجوزهای فایل نمیگوید. افشای SMB به اینترنت برای دور زدن قاعدهٔ گمشده راهحل نیست.