برای چه؟
با افزایش سانسور اینترنت توسط رژیمهای مستبد، تعداد فزایندهای از منابع و سایتهای مفید اینترنتی مسدود میشوند. از جمله اطلاعات فنی.
بنابراین، استفاده کامل از اینترنت غیرممکن می شود و حق اساسی آزادی بیان، مندرج در .
مقاله 19
هر کس حق آزادی عقیده و بیان دارد. این حق شامل آزادی داشتن عقاید بدون مداخله و جستجو، دریافت و انتشار اطلاعات و عقاید از طریق هر رسانه و بدون توجه به مرزها می شود.
در این راهنما، ما نرم افزار رایگان* خود را در 6 مرحله اجرا می کنیم. بر اساس تکنولوژی ، در زیرساخت ابری (AWS)، با استفاده از یک حساب رایگان (به مدت 12 ماه)، در یک نمونه (ماشین مجازی) مدیریت شده توسط .
من سعی کردهام این راهنما را تا حد امکان برای افراد غیر IT دوستانه کنم. تنها چیزی که لازم است پشتکار در تکرار مراحل توضیح داده شده در زیر است.
یادداشت
- AWS فراهم می کند برای مدت 12 ماه با محدودیت 15 گیگابایت ترافیک در ماه.
- به روزترین نسخه این کتابچه راهنمای کاربر را می توانید در اینجا پیدا کنید
مراحل
- برای یک حساب رایگان AWS ثبت نام کنید
- یک نمونه AWS ایجاد کنید
- اتصال به یک نمونه AWS
- پیکربندی Wireguard
- پیکربندی مشتریان VPN
- بررسی صحت نصب VPN
لینک های مفید
1. ثبت حساب AWS
ثبت نام برای یک حساب رایگان AWS به یک شماره تلفن واقعی و یک کارت اعتباری معتبر Visa یا Mastercard نیاز دارد. توصیه می کنم از کارت های مجازی که به صورت رایگان ارائه می شوند استفاده کنید یا . برای بررسی اعتبار کارت در هنگام ثبت نام 1 دلار کسر می شود که بعدا برگردانده می شود.
1.1. باز کردن کنسول مدیریت AWS
باید یک مرورگر باز کنید و به آدرس زیر بروید:
بر روی دکمه "ثبت نام" کلیک کنید

1.2. پر کردن اطلاعات شخصی
داده ها را پر کنید و روی دکمه "ادامه" کلیک کنید

1.3. پر کردن اطلاعات تماس
اطلاعات تماس را پر کنید

1.4. مشخص کردن اطلاعات پرداخت
شماره کارت، تاریخ انقضا و نام دارنده کارت.

1.5. تایید حساب
در این مرحله شماره تلفن تأیید می شود و 1 دلار مستقیماً از کارت پرداخت برداشت می شود. یک کد 4 رقمی روی صفحه کامپیوتر نمایش داده می شود و تلفن مشخص شده از آمازون تماس دریافت می کند. در حین تماس، باید کد نشان داده شده روی صفحه را شماره گیری کنید.

1.6. انتخاب طرح تعرفه
انتخاب - طرح اولیه (رایگان)

1.7. وارد کنسول مدیریت شوید

1.8. انتخاب مکان مرکز داده

1.8.1. تست سرعت
قبل از انتخاب یک مرکز داده، توصیه می شود از طریق آن تست کنید سرعت دسترسی به نزدیکترین مراکز داده، در مکان من نتایج زیر است:
- سنگاپور

- شهر پاریس

- فرانکفورت

- استکهلم

- لندن

مرکز داده در لندن بهترین نتایج را از نظر سرعت نشان می دهد. بنابراین من آن را برای سفارشی سازی بیشتر انتخاب کردم.
2. یک نمونه AWS ایجاد کنید
2.1 یک ماشین مجازی ایجاد کنید
2.1.1. انتخاب نوع نمونه
به طور پیش فرض، نمونه t2.micro انتخاب شده است، همان چیزی است که ما نیاز داریم، فقط دکمه را فشار دهید بعدی: پیکربندی جزئیات نمونه

2.1.2. تنظیم گزینه های نمونه
در آینده، یک IP عمومی دائمی را به نمونه خود متصل خواهیم کرد، بنابراین در این مرحله، اختصاص خودکار یک IP عمومی را خاموش می کنیم و دکمه را فشار می دهیم. بعدی: افزودن فضای ذخیره سازی

2.1.3. اتصال ذخیره سازی
اندازه "هارد دیسک" را مشخص کنید. برای اهداف ما 16 گیگابایت کافی است و دکمه را فشار می دهیم بعدی: اضافه کردن برچسب ها

2.1.4. تنظیم برچسب ها
اگر چندین نمونه ایجاد کنیم، میتوان آنها را با برچسبها گروهبندی کرد تا مدیریت را تسهیل کند. در این مورد، این قابلیت اضافی است، بلافاصله دکمه را فشار دهید بعدی: پیکربندی گروه امنیتی

2.1.5. باز کردن پورت ها
در این مرحله با باز کردن پورت های مورد نیاز فایروال را پیکربندی می کنیم. مجموعه پورت های باز را Security Group می نامند. ما باید یک گروه امنیتی جدید ایجاد کنیم، به آن یک نام، توضیحات بدهیم، یک پورت UDP (قانون سفارشی UDP) اضافه کنیم، در قسمت Rort Range، یک شماره پورت از محدوده اختصاص دهیم. 49152-65535. در این مورد شماره پورت 54321 را انتخاب کردم.

پس از پر کردن اطلاعات مورد نیاز، روی دکمه کلیک کنید بررسی و راه اندازی
2.1.6. نمای کلی همه تنظیمات
در این صفحه یک نمای کلی از تمام تنظیمات نمونه ما وجود دارد، ما بررسی می کنیم که آیا همه تنظیمات مرتب هستند یا خیر، و دکمه را فشار می دهیم راه اندازی

2.1.7. ایجاد کلیدهای دسترسی
سپس یک کادر محاوره ای ارائه می شود که یک کلید SSH موجود را ایجاد یا اضافه می کند، که بعداً از راه دور به نمونه خود متصل خواهیم شد. برای ایجاد یک کلید جدید گزینه «ایجاد جفت کلید جدید» را انتخاب می کنیم. اسمش را بگذارید و روی دکمه کلیک کنید دانلود جفت کلیدبرای دانلود کلیدهای تولید شده آنها را در مکانی امن در رایانه محلی خود ذخیره کنید. پس از دانلود، روی دکمه کلیک کنید. نمونه ها را راه اندازی کنید

2.1.7.1. ذخیره کلیدهای دسترسی
در اینجا مرحله ذخیره کلیدهای تولید شده از مرحله قبل نشان داده شده است. بعد از اینکه دکمه را فشار دادیم دانلود جفت کلید، کلید به عنوان یک فایل گواهی با پسوند *.pem ذخیره می شود. در این مورد من آن را یک نام گذاشتم wireguard-awskey.pem

2.1.8. مروری بر نتایج ایجاد نمونه
در مرحله بعد، پیامی درباره راهاندازی موفقیتآمیز نمونهای که به تازگی ایجاد کردهایم میبینیم. با کلیک بر روی دکمه می توانیم به لیست نمونه های خود برویم مشاهده نمونه ها

2.2. ایجاد یک آدرس IP خارجی
2.2.1. شروع ایجاد یک IP خارجی
در مرحله بعد، باید یک آدرس IP خارجی دائمی ایجاد کنیم که از طریق آن به سرور VPN خود متصل می شویم. برای انجام این کار، در پنل ناوبری در سمت چپ صفحه، مورد را انتخاب کنید IP های الاستیک از دسته شبکه و امنیت و دکمه را فشار دهید تخصیص آدرس جدید

2.2.2. پیکربندی ایجاد یک IP خارجی
در مرحله بعد باید گزینه را فعال کنیم استخر آمازون (به طور پیش فرض فعال است) و روی دکمه کلیک کنید اختصاص دادن

2.2.3. مروری بر نتایج ایجاد یک آدرس IP خارجی
صفحه بعدی نشانی IP خارجی دریافتی ما را نشان می دهد. توصیه می شود آن را حفظ کنید و حتی یادداشت کنید بهتر است. بیش از یک بار در فرآیند راه اندازی و استفاده بیشتر از سرور VPN مفید خواهد بود. در این راهنما، من از آدرس IP به عنوان مثال استفاده می کنم. 4.3.2.1. پس از وارد کردن آدرس، دکمه را فشار دهید نزدیک

2.2.4. لیست آدرس های IP خارجی
در مرحله بعد، فهرستی از آدرسهای IP عمومی دائمی (IP elastics) به ما ارائه میشود.

2.2.5. اختصاص IP خارجی به یک نمونه
در این لیست، آدرس IP دریافتی را انتخاب می کنیم و دکمه سمت راست ماوس را فشار می دهیم تا یک منوی کشویی ظاهر شود. در آن، مورد را انتخاب کنید آدرس همکارتا آن را به نمونه ای که قبلا ایجاد کردیم اختصاص دهیم.

2.2.6. تنظیم تخصیص IP خارجی
در مرحله بعد، نمونه ما را از لیست کشویی انتخاب کنید و دکمه را فشار دهید وابسته

2.2.7. مروری بر نتایج تخصیص IP خارجی
پس از آن، می بینیم که نمونه ما و آدرس IP خصوصی آن به آدرس IP عمومی دائمی ما متصل است.

اکنون میتوانیم از خارج، از طریق رایانهمان از طریق SSH، به نمونه جدید ایجاد شده خود متصل شویم.
3. به یک نمونه AWS متصل شوید
یک پروتکل امن برای کنترل از راه دور دستگاه های کامپیوتری است.
۳.۱ اتصال از طریق SSH از یک کامپیوتر به Windows
برای اتصال به کامپیوتر با Windows، ابتدا باید برنامه را دانلود و نصب کنید .
3.1.1. وارد کردن کلید خصوصی برای Putty
3.1.1.1. پس از نصب Putty، برای وارد کردن کلید گواهی در قالب PEM به فرمتی مناسب برای استفاده در Putty، باید ابزار PuTTYgen همراه با آن را اجرا کنید. برای انجام این کار، مورد را در منوی بالا انتخاب کنید تبدیل -> کلید واردات

3.1.1.2. انتخاب کلید AWS در قالب PEM
بعد، کلیدی را که قبلاً در مرحله 2.1.7.1 ذخیره کرده بودیم، در مورد ما نام آن را انتخاب کنید wireguard-awskey.pem

3.1.1.3. تنظیم گزینه های واردات کلید
در این مرحله باید یک نظر برای این کلید (توضیحات) مشخص کنیم و یک رمز عبور و تایید برای امنیت تعیین کنیم. هر بار که وصل می شوید درخواست می شود. بنابراین، ما کلید را با رمز عبور از استفاده نامناسب محافظت می کنیم. شما نیازی به تعیین رمز عبور ندارید، اما اگر کلید به دست اشتباهی بیفتد، امنیت کمتری دارد. بعد از اینکه دکمه را فشار دادیم ذخیره کلید خصوصی

3.1.1.4. ذخیره یک کلید وارد شده
یک گفتگوی ذخیره فایل باز می شود و ما کلید خصوصی خود را به عنوان یک فایل با پسوند ذخیره می کنیم .ppkمناسب برای استفاده در برنامه بتونه.
نام کلید را مشخص کنید (در مورد ما wireguard-awskey.ppk) و دکمه را فشار دهید ذخیره.

3.1.2. ایجاد و پیکربندی یک اتصال در Putty
3.1.2.1. ارتباط ایجاد کنید
برنامه Putty را باز کنید، یک دسته را انتخاب کنید جلسه (به طور پیش فرض باز است) و در فیلد نام میزبان آدرس IP عمومی سرور خود را که در مرحله 2.2.3 دریافت کردیم را وارد کنید. در زمینه جلسه ذخیره شده یک نام دلخواه برای اتصال ما وارد کنید (در مورد من wireguard-aws-لندن) و سپس دکمه را فشار دهید ذخیره برای ذخیره تغییراتی که ایجاد کردیم.

3.1.2.2. تنظیم خودکار ورود کاربر
بیشتر در دسته بندی اتصال، یک زیر مجموعه را انتخاب کنید داده ها و در میدان نام کاربری ورود خودکار نام کاربری را وارد کنید ubuntu — یک کاربر استاندارد از یک نمونه در AWS با ... است. Ubuntu.

3.1.2.3. انتخاب یک کلید خصوصی برای اتصال از طریق SSH
سپس به زیر مجموعه بروید اتصال/SSH/Auth و در کنار میدان فایل کلید خصوصی برای احراز هویت دکمه را فشار دهید مرور کردن… برای انتخاب یک فایل با گواهی کلید.

3.1.2.4. باز کردن کلید وارداتی
کلیدی را که قبلاً در مرحله 3.1.1.4 وارد کرده بودیم، مشخص کنید، در مورد ما یک فایل است. wireguard-awskey.ppk، و دکمه را فشار دهید باز.

3.1.2.5. ذخیره تنظیمات و شروع اتصال
بازگشت به صفحه دسته جلسه دوباره دکمه را فشار دهید ذخیره، برای ذخیره تغییراتی که قبلا در مراحل قبلی (3.1.2.2 - 3.1.2.4) ایجاد کردیم. و سپس دکمه را فشار می دهیم باز کن برای باز کردن اتصال SSH راه دور که ایجاد و پیکربندی کردیم.

3.1.2.7. ایجاد اعتماد بین هاست
در مرحله بعد، اولین باری که سعی میکنیم وصل شویم، به ما اخطار داده میشود، اعتماد بین دو رایانه پیکربندی نشده است و میپرسد که آیا به رایانه راه دور اعتماد کنیم یا خیر. ما دکمه را فشار می دهیم بله، به این ترتیب آن را به لیست میزبان های قابل اعتماد اضافه می کند.

3.1.2.8. برای دسترسی به کلید رمز عبور را وارد کنید
پس از آن، یک پنجره ترمینال باز می شود که در آن از شما رمز عبور کلید خواسته می شود، اگر آن را زودتر در مرحله 3.1.1.3 تنظیم کرده باشید. هنگام وارد کردن رمز عبور، هیچ عملی روی صفحه انجام نمی شود. اگر اشتباه کردید، می توانید از کلید استفاده کنید Backspace.

3.1.2.9. پیام خوش آمدگویی در ارتباط با موفقیت
پس از وارد کردن موفقیت آمیز رمز عبور، یک متن خوشامدگویی در ترمینال به ما نشان داده می شود که به ما می گوید که سیستم راه دور برای اجرای دستورات ما آماده است.

۴. پیکربندی سرور Wireguard
جدیدترین دستورالعملهای نصب و استفاده Wireguard شما میتوانید با استفاده از اسکریپتهای شرح داده شده در زیر، مخزن را مشاهده کنید:
4.1. نصب و راه اندازی Wireguard
در ترمینال، دستورات زیر را وارد کنید (می توانید در کلیپ بورد کپی کنید و با فشار دادن دکمه سمت راست ماوس در ترمینال پیست کنید):
4.1.1. شبیه سازی یک مخزن
مخزن را با اسکریپتهای نصب کلون کنید Wireguard
git clone https://github.com/pprometey/wireguard_aws.git wireguard_aws4.1.2. جابجایی به دایرکتوری با اسکریپت
به دایرکتوری با مخزن کلون شده بروید
cd wireguard_aws4.1.3 اجرای اسکریپت مقداردهی اولیه
اسکریپت نصب را به عنوان مدیر (کاربر ریشه) اجرا کنید Wireguard
sudo ./initial.shدر طول فرآیند نصب، اطلاعات خاصی برای پیکربندی از شما خواسته میشود. Wireguard
4.1.3.1. ورودی نقطه اتصال
آدرس IP خارجی و پورت باز را وارد کنید Wireguard سرور. ما آدرس IP خارجی سرور را در مرحله ۲.۲.۳ بدست آوردیم و پورت را در مرحله ۲.۱.۵ باز کردیم. ما آنها را با هم مشخص میکنیم و با یک دونقطه از هم جدا میکنیم، برای مثال 4.3.2.1:54321و سپس کلید را فشار دهید وارد
خروجی نمونه:
Enter the endpoint (external ip and port) in format [ipv4:port] (e.g. 4.3.2.1:54321): 4.3.2.1:543214.1.3.2. آدرس IP داخلی را وارد کنید
آدرس IP سرور را وارد کنید Wireguard در یک زیرشبکه VPN امن، اگر نمیدانید چیست، کافیست Enter را فشار دهید تا مقدار پیشفرض تنظیم شود (10.50.0.1)
خروجی نمونه:
Enter the server address in the VPN subnet (CIDR format) ([ENTER] set to default: 10.50.0.1):4.1.3.3. تعیین سرور DNS
آدرس IP سرور DNS را وارد کنید یا فقط کلید Enter را فشار دهید تا مقدار پیش فرض را تنظیم کنید 1.1.1.1 (DNS عمومی Cloudflare)
خروجی نمونه:
Enter the ip address of the server DNS (CIDR format) ([ENTER] set to default: 1.1.1.1):4.1.3.4. تعیین رابط WAN
در مرحله بعد، باید نام رابط شبکه خارجی را وارد کنید که به رابط شبکه داخلی VPN گوش می دهد. فقط Enter را فشار دهید تا مقدار پیش فرض AWS را تنظیم کنید (eth0)
خروجی نمونه:
Enter the name of the WAN network interface ([ENTER] set to default: eth0):4.1.3.5. تعیین نام مشتری
نام کاربری VPN خود را وارد کنید. نکته این است که سرور VPN Wireguard تا زمانی که حداقل یک کلاینت اضافه نشود، نمیتواند شروع به کار کند. در این مورد، من نام را وارد کردم Alex@mobile
خروجی نمونه:
Enter VPN user name: Alex@mobileپس از این، یک کد QR با پیکربندی کلاینت تازه اضافه شده باید روی صفحه نمایش داده شود که باید با استفاده از کلاینت موبایل اسکن شود. Wireguard بر Android یا iOS، برای پیکربندی آن. اگر کلاینتها را به صورت دستی پیکربندی کنید، متن فایل پیکربندی نیز در زیر کد QR ظاهر میشود. نحوه انجام این کار در ادامه مورد بحث قرار خواهد گرفت.

4.2. اضافه کردن یک کاربر جدید VPN
برای افزودن یک کاربر جدید، باید اسکریپت را در ترمینال اجرا کنید add-client.sh
sudo ./add-client.shاسکریپت یک نام کاربری می خواهد:
خروجی نمونه:
Enter VPN user name: همچنین، نام کاربران را می توان به عنوان پارامتر اسکریپت ارسال کرد (در این مورد Alex@mobile):
sudo ./add-client.sh Alex@mobileدر نتیجه اجرای اسکریپت، در دایرکتوری با نام مشتری در طول مسیر /etc/wireguard/clients/{ИмяКлиента} فایل پیکربندی مشتری ایجاد خواهد شد /etc/wireguard/clients/{ИмяКлиента}/{ИмяКлиента}.confو صفحه ترمینال یک کد QR برای راه اندازی کلاینت های موبایل و محتویات فایل پیکربندی نمایش می دهد.
4.2.1. فایل پیکربندی کاربر
برای پیکربندی دستی کلاینت با استفاده از دستور می توانید محتویات فایل .conf را روی صفحه نمایش دهید. cat
sudo cat /etc/wireguard/clients/Alex@mobile/Alex@mobile.confنتیجه اجرا:
[Interface]
PrivateKey = oDMWr0toPVCvgKt5oncLLRfHRit+jbzT5cshNUi8zlM=
Address = 10.50.0.2/32
DNS = 1.1.1.1
[Peer]
PublicKey = mLnd+mul15U0EP6jCH5MRhIAjsfKYuIU/j5ml8Z2SEk=
PresharedKey = wjXdcf8CG29Scmnl5D97N46PhVn1jecioaXjdvrEkAc=
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 4.3.2.1:54321توضیحات فایل پیکربندی کلاینت:
[Interface]
PrivateKey = Приватный ключ клиента
Address = IP адрес клиента
DNS = ДНС используемый клиентом
[Peer]
PublicKey = Публичный ключ сервера
PresharedKey = Общи ключ сервера и клиента
AllowedIPs = Разрешенные адреса для подключения (все - 0.0.0.0/0, ::/0)
Endpoint = IP адрес и порт для подключения4.2.2. کد QR برای پیکربندی مشتری
میتوانید با استفاده از دستور، یک کد QR پیکربندی برای یک کلاینت که قبلاً ایجاد شده است را در صفحه پایانه نمایش دهید qrencode -t ansiutf8 (در این مثال از کلاینت با نام Alex@mobile استفاده شده است):
sudo cat /etc/wireguard/clients/Alex@mobile/Alex@mobile.conf | qrencode -t ansiutf85. پیکربندی VPN Clients
5.1. راه اندازی کلاینت موبایل اندروید
مشتری رسمی Wireguard برای اندروید امکان پذیر است
پس از آن، باید پیکربندی را با خواندن کد QR با پیکربندی کلاینت وارد کنید (به بند 4.2.2 مراجعه کنید) و نامی به آن بدهید:

پس از وارد کردن موفقیت آمیز پیکربندی، می توانید تونل VPN را فعال کنید. اتصال موفقیت آمیز با ذخیره کلید در سینی سیستم Android نشان داده می شود

۵.۲. تنظیمات کلاینت Windows
ابتدا باید برنامه را دانلود و نصب کنید - این یک کلاینت است Wireguard برای Windows.
5.2.1. ایجاد یک فایل پیکربندی واردات
برای ایجاد یک فایل متنی روی دسکتاپ کلیک راست کنید.

5.2.2. کپی کردن محتویات فایل پیکربندی از سرور
سپس به ترمینال Putty برمی گردیم و محتویات فایل پیکربندی کاربر مورد نظر را مطابق مرحله 4.2.1 نمایش می دهیم.
بعد، روی متن پیکربندی در ترمینال Putty کلیک راست کنید، پس از اتمام انتخاب، به طور خودکار در کلیپ بورد کپی می شود.

5.2.3. کپی کردن پیکربندی در یک فایل پیکربندی محلی
در این قسمت به فایل متنی که قبلاً در دسکتاپ ایجاد کرده بودیم برمی گردیم و متن پیکربندی را از کلیپ بورد در آن قرار می دهیم.

5.2.4. ذخیره یک فایل پیکربندی محلی
فایل را با پسوند ذخیره کنید تأیید کنید (در این مورد به نام london.conf)

5.2.5. وارد کردن یک فایل پیکربندی محلی
در مرحله بعد، باید فایل پیکربندی را به برنامه TunSafe وارد کنید.

5.2.6. راه اندازی اتصال VPN
این فایل پیکربندی را انتخاب کرده و با کلیک روی دکمه متصل شوید اتصال.

6. بررسی موفقیت آمیز بودن اتصال
برای بررسی موفقیت آمیز بودن اتصال از طریق تونل VPN، باید یک مرورگر را باز کنید و به سایت بروید

آدرس IP نمایش داده شده باید با آدرسی که در مرحله 2.2.3 دریافت کردیم مطابقت داشته باشد.
اگر چنین است، پس تونل VPN با موفقیت کار می کند.
از ترمینال تا Linux با وارد کردن دستور زیر میتوانید آدرس IP خود را بررسی کنید:
curl http://zx2c4.com/ipیا اگر در قزاقستان هستید فقط می توانید به پورنو هاب بروید.
منبع: www.habr.com





