نصب VpnHood! SERVER روی ویندوز
سرور VPN اختصاصی خود را روی یک سیستم ویندوز دارای IP عمومی راهاندازی کنید. آن را بهصورت مدیریتشده از VpnHood! MANAGER اضافه کنید، یا تنها با یک دستور PowerShell بهصورت مستقل نصب کنید.
پیش از شروع
- یک سیستم با IP عمومی و ویندوز ۱۰، ویندوز ۱۱ یا ویندوز سرور ۲۰۱۶ و جدیدتر، روی معماری x64. پیشنیازهای سیستم محدودیتهای ویندوز را فهرست میکند.
- در ویندوز ۱۰ و ۱۱، آداپتور VPN سرور به روشن بودن Hyper-V نیاز دارد، چون NAT در ویندوز همراه آن میآید، و نسخههای Home اصلاً Hyper-V ندارند. بدون آن، سرور فقط بهصورت پروکسی کار میکند. در ویندوز سرور لازم نیست چیزی را روشن کنید.
- PowerShell با دسترسی Administrator، برای اجرای همه دستورهای این صفحه.
- پورت TCP به شماره
443باید باز باشد؛ هم در فایروال سیستم و هم در فایروال سرویسدهنده ابری شما. سرور روی این پورت به درخواستها گوش میدهد.
لینوکس توصیه میشود؛ زیرا NAT در ویندوز فقط IPv4 را ترجمه میکند، بنابراین سرور تنها روی لینوکس از IPv6 بهدرستی پشتیبانی میکند.
نصب سرور مستقل
این دستور را اجرا کنید. سرور در C:\Program Files\VpnHood\VpnHoodServer نصب و اجرا میشود. نصبکننده سه سؤال میپرسد: در هر سؤال Enter را بزنید تا پیشنهاد آن پذیرفته شود.
[Net.ServicePointManager]::SecurityProtocol = "Tls,Tls11,Tls12"; iwr "https://github.com/vpnhood/VpnHood.App.Server/releases/latest/download/VpnHoodServer-win-x64.ps1" -UseBasicParsing | iexسپس به اپلیکیشنها اجازه عبور از فایروال ویندوز را بدهید؛ نصبکننده آن را تغییر نمیدهد.
New-NetFirewallRule -DisplayName "VpnHood SERVER" -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allowاولین کلید دسترسی خود را بسازید
سرور مستقل فقط به دستگاههایی اجازه اتصال میدهد که کلید دسترسی ساختهشده توسط خودش را داشته باشند. برای ایجاد کلید، این دستور را روی سرور اجرا کنید.
powershell -ExecutionPolicy Bypass -File "$Env:ProgramFiles\VpnHood\VpnHoodServer\vhserver.ps1" genکلید زیر عبارت --- AccessKey --- نمایش داده میشود و با vh: شروع میشود؛ کل خط را کپی کنید. چند خط بالاتر، HostEndPoints: باید آدرس IP عمومی سرور شما را نشان دهد.
برای محدود کردن یک کلید، همان گزینههای لینوکس را به دستور اضافه کنید.
هر کسی که به این کلید دسترسی داشته باشد میتواند از طریق سرور شما متصل شود. آن را مانند رمز عبور محفوظ نگه دارید.
اتصال
VpnHood! CLIENT را روی هر دستگاه نصب کنید، کلید را اضافه کرده و متصل شوید.
شروع و توقف سرور
سرور بهصورت وظیفه زمانبندیشده VpnHoodServer اجرا میشود که آن را هنگام بوت اجرا میکند و اگر متوقف شود، ظرف یک دقیقه دوباره راه میاندازد. پس برای توقف سرور ابتدا باید این وظیفه را غیرفعال کنید، همان کاری که دستور دوم انجام میدهد. دستور سوم آن را دوباره فعال میکند.
(Get-ScheduledTask VpnHoodServer).StateDisable-ScheduledTask VpnHoodServer; powershell -ExecutionPolicy Bypass -File "$Env:ProgramFiles\VpnHood\VpnHoodServer\vhserver.ps1" stopEnable-ScheduledTask VpnHoodServer; Start-ScheduledTask VpnHoodServerلاگهای آن در C:\Program Files\VpnHood\VpnHoodServer\storage\logs\server.log قرار دارد.
بهروزرسانیها
مگر اینکه آن را هنگام نصب غیرفعال کرده باشید، سرور بهطور خودکار به هر نسخه جدید بهروزرسانی میشود: وظیفه VpnHoodServerUpdater روزی یکبار بررسی را انجام میدهد.
برای غیرفعال کردن این مورد، دستور نصب مستقل را دوباره اجرا کنید و در پاسخ به Keep the server up to date by itself (Y/n) گزینه n را وارد کنید. نصاب پاسخ و تنظیمات شما را ذخیره میکند و نسخه سرور تا زمانی که خودتان دستور را دوباره اجرا نکنید تغییر نخواهد کرد.
در صورت امکان، بهروزرسانیها را روشن نگه دارید. برخی از نسخهها مشکلات امنیتی را برطرف میکنند. اپلیکیشن بهروزشده همچنان به سرور قدیمیتر متصل میشود، اما از سرورهای پیش از v9.0.859 UDP دریافت نمیکند، و اپلیکیشنها فقط تا آوریل ۲۰۲۷ از سرورهای قدیمیتر از VpnHood 9.1 پشتیبانی میکنند.
حذف نصب
برای حذف سرور، آن را از Installed apps در تنظیمات ویندوز حذف کنید یا اسکریپت حذف را اجرا کنید. این کار سرور را متوقف کرده و وظیفهها و فایلهای آن را پاک میکند، اما تنظیمات، کلیدهای دسترسی و گواهیها را در C:\Program Files\VpnHood\VpnHoodServer\storage برای نصبهای بعدی نگه میدارد.
powershell -ExecutionPolicy Bypass -File "$Env:ProgramFiles\VpnHood\VpnHoodServer\vhuninstall.ps1"حذف کامل تنظیمات و کلیدها: دستگاههای دارای این کلیدها دیگر نمیتوانند متصل شوند، حتی پس از نصب مجدد
powershell -ExecutionPolicy Bypass -File "$Env:ProgramFiles\VpnHood\VpnHoodServer\vhuninstall.ps1" -purgeقانون فایروال را هم حذف کنید
Remove-NetFirewallRule -DisplayName "VpnHood SERVER"