می خواهید از طریق یک شبکه خصوصی مجازی (VPN) به اینترنت ایمن و امن از تلفن هوشمند یا لپتاپ خود دسترسی داشته باشید حتی اگر به یک شبکه ناامن مانند وایفای یک هتل یا کافه متصل هستید. یک VPN به شما امکان می دهد تا به صورت خصوصی و ایمن از شبکه های ناامن عبور کنید، به طوری که انگار در یک شبکه خصوصی هستید. ترافیک از سرور VPN خارج می شود و سفر خود را به مقصد ادامه می دهدOpenVPN یک راه حل VPN Secure Socket Layer (SSL) متن باز کامل است که طیف گسترده ای از پیکربندی ها را پشتیبانی می کند. در این آموزش ، ما یک سرور OpenVPN را در یک Vps تنظیم می کنیم و سپس دسترسی به آن را از Windows ، OS X ، iOS و Android پیکربندی می کنیم. این آموزش مراحل نصب و پیکربندی را برای این تنظیمات در ساده ترین حالت ممکن نگه می دار
نصب OpnVpn
برای شروع ، ما OpenVPN را روی سرور خود نصب خواهیم کرد. OpenVPN در مخازن پیش فرض Ubuntu موجود است ، بنابراین می توانیم apt برای نصب آن استفاده کنیم. ما همچنین بسته easy-rsa را نصب خواهیم کرد که به ما در راه اندازی CA داخلی (مرجع گواهینامه) برای استفاده با VPN خود کمک می کند.برای به روزرسانی شاخص بسته های سرور خود و نصب بسته های مورد نیاز ، نوع:
sudo apt-get update
sudo apt-get install openvpn easy-rsa
این دستور بسته های OpenVPN و easy-rsa را به سرور شما اضافه می کند و آنها را نصب می کند.
نصب th ca directory
OpenVPN یک VPN TLS/SSL است. این بدان معنی است که از گواهینامه ها برای رمزگذاری ترافیک بین سرور و کلاینت ها استفاده می کند. برای صدور گواهینامه های معتبر ، به ایجاد مرجع گواهینامه (CA) ساده خودمان نیاز خواهیم داشت.برای شروع ، می توانیم دایرکتوری قالب easy-rsa را با دستور make-cadir به دایرکتوری خانگی خود کپی کنیم:
make-cadir ~/openvpn-ca
به دایرکتوری جدیداً ایجاد شده منتقل شوید تا پیکربندی CA را شروع کنید:
cd ~/openvpn-ca
کانفیگ و پیگربندی the ca certificate
برای پیکربندی مقادیری که CA ما استفاده خواهد کرد ، باید فایل vars را درون دایرکتوری ویرایش کنیم. اکنون آن فایل را در ویرایشگر متن خود باز کنید:
nano vars
در داخل ، برخی از متغیرهایی را خواهید یافت که می توانند تنظیم شوند تا نحوه ایجاد گواهینامه های شما تعیین شود. ما فقط باید نگران چند مورد از آنها باشیم.به پایین فایل بروید و تنظیماتی را پیدا کنید که پیش فرض های زمینه را برای گواهینامه های جدید تنظیم می کنند. این باید چیزی شبیه به این باشد:
مقادیر قرمز را به هر چیزی که ترجیح می دهید ویرایش کنید ، اما آنها را خالی نگذارید:
در حالی که اینجا هستیم ، ما همچنین مقدار KEY_NAME را درست زیر این بخش ویرایش خواهیم کرد که زمینه موضوع را پر می کند. برای ساده نگه داشتن ، در این راهنما آن را سرور می نامیم:
~/openvpn-ca/vars
export KEY_NAME="server"
هنگامی که تمام شدید ، فایل را ذخیره کرده و ببندید.
اجرا کردن the Certificate Authority
اکنون می توانیم از متغیرهایی که تنظیم کرده ایم و ابزارهای easy-rsa برای ساخت مرجع گواهینامه خود استفاده کنیم.مطمئن شوید که در دایرکتوری CA خود هستید ، سپس فایل vars را که قبلاً ویرایش کردید منبع بگیرید:
cd ~/openvpn-ca
source vars
اگر به درستی منبع بگیرید ، باید موارد زیر را مشاهده کنید:
Output NOTE: If you run ./clean-all, I will be doing a rm -rf on /home/sammy/openvpn-ca/keys
اطمینان حاصل کنید که در یک محیط پاک کار می کنیم با تایپ:
./clean-all
اکنون می توانیم CA اصلی خود را با تایپ کردن ایجاد کنیم:
./build-ca
این فرآیند ایجاد کلید مرجع گواهینامه اصلی و گواهی را آغاز می کند. از آنجا که فایل vars را پر کردیم ، تمام مقادیر باید به طور خودکار پر شوند. فقط با فشار دادن ENTER از طریق اعلان ها برای تأیید انتخاب ها تأیید کنید:
ساخت The server certificate and Encryption file
در مرحله بعدی ، گواهینامه سرور و جفت کلید خود را همراه با برخی فایل های اضافی که در طول فرآیند رمزگذاری استفاده می شوند ، تولید خواهیم کرد. با تایپ کردن شروع کنید:
./build-key-server server
بار دیگر ، اعلان ها دارای مقادیر پیش فرض بر اساس آرگومان (server) که ما به تازگی ارسال کرده ایم و محتویات فایل vars ما که منابع آن را ارائه داده ایم ، خواهند بود. با خیال راحت مقادیر پیش فرض را با فشار دادن ENTER بپذیرید. برای این تنظیم رمز عبور چالشی وارد نکنید. در انتهای کار ، باید y را برای دو سؤال برای امضای گواهینامه و ثبت آن وارد کنید:در مرحله بعدی ، چند مورد دیگر تولید خواهیم کرد. می توانیم یک کلید Diffie-Hellman قوی برای استفاده در هنگام تبادل کلید با تایپ کردن:
./build-dh
این ممکن است چند دقیقه طول بکشد تا کامل شود.بعد از آن ، می توانیم یک امضای HMAC برای تقویت قابلیت های تأیید اصالت TLS سرور تولید کنیم:
openvpn --genkey --secret keys/ta.key
نصب کلاینت certificate
در مرحله بعدی ، می توانیم یک گواهینامه مشتری و جفت کلید ایجاد کنیم. اگرچه این کار را می توان در دستگاه کلاینت انجام داد و سپس برای اهداف امنیتی توسط سرور/CA امضا کرد ، اما برای سادگی این راهنما ، ما کلید امضا شده را در سرور برای سادگی تولید می کنیم. ما در این راهنما یک کلید/گواهینامه کلاینت واحد ایجاد خواهیم کرد ، اما اگر بیش از یک کلاینت دارید ، می توانید این فرایند را به هر تعداد دلخواه تکرار کنید. برای هر کلاینت یک مقدار منحصر به فرد را به اسکریپت منتقل کنید. از آنجا که ممکن است در زمان دیگری به این مرحله برگردید ، دوباره فایل vars را منبع می گیریم. ما از client1 به عنوان مقدار برای اولین گواهینامه/زوج کلید خود برای این راهنما استفاده خواهیم کرد. برای تولید اعتبارنامه بدون رمز عبور ، برای کمک به ارتباطات خودکار ، از دستور build-key به صورت زیر استفاده کنید:
cd ~/openvpn-casource vars./build-key client1
اگر به جای آن ، می خواهید یک مجموعه اعتبارنامه محافظت شده با رمز عبور ایجاد کنید ، از دستور build-key-pass استفاده کنید:
cd ~/openvpn-casource vars./build-key-pass client1
دوباره ، مقادیر پیش فرض پر شده است ، بنابراین فقط می توانید Enter را برای ادامه فشار دهید. رمز عبور چالش را خالی بگذارید و مطمئن شوید که برای اعلان هایی که از شما می پرسند آیا می خواهید گواهینامه را امضا و ثبت کنید y را وارد کنید.
کانفیگ کردن سرویس OpenVpn
در مرحله بعدی ، می توانیم با استفاده از اعتبارنامه ها و فایل های ایجاد شده ، پیکربندی سرویس OpenVPN را شروع کنیم.کپی کردن فایل ها به دایرکتوری OpenVPNبرای شروع ، ما باید فایل های مورد نیاز خود را به دایرکتوری پیکربندی /etc/openvpn کپی کنیم.می توانیم با همه فایل های تولید شده شروع کنیم. اینها هنگام ایجاد در دایرکتوری ~/openvpn-ca/keys قرار داده شدند. ما باید گواهینامه CA ، گواهینامه و کلید سرور ، امضای HMAC و پرونده Diffie-Hellman را منتقل کنیم:
cd ~/openvpn-ca/keys
sudo cp ca.crt server.crt server.key ta.key dh2048.pem /etc/openvpn
در مرحله بعدی ، باید یک نمونه فایل پیکربندی OpenVPN را کپی و در دایرکتوری پیکربندی کپی کنیم تا بتوانیم از آن به عنوان پایه برای تنظیم خود استفاده کنیم:
gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | sudo tee /etc/openvpn/server.conf
کنون که فایل های ما سر جای خود هستند ، می توانیم فایل پیکربندی سرور را اصلاح کنیم:
sudo nano /etc/openvpn/server.conf
ابتدا ، بخش HMAC را با جستجو برای دستور tls-auth پیدا کنید. "؛" را برای غیرفعال کردن خط tls-auth بردارید:
tls-auth ta.key 0 # This file is secret
اکنون ، بخش مربوط به رمزهای نگاری را با جستجو برای خطوط cipher که با علامت "؛" غیرفعال شده اند پیدا کنید. رمزنگار AES-128-CBC سطح رمزنگاری خوبی را ارائه می دهد و به خوبی پشتیبانی می شود. برای غیرفعال کردن خط cipher AES-128-CBC علامت "؛" را حذف کنید
cipher AES-128-CBC
در زیر این خط ، یک خط auth برای انتخاب الگوریتم خلاصه پیام HMAC اضافه کنید. برای این کار ، SHA256 یک انتخاب خوب است:
auth SHA256
سرانجام ، تنظیمات کاربر و گروه را پیدا کنید و "؛" را در ابتدای آن ها بردارید تا آن خطوط غیرفعال شوند:
user nobodygroup nogroup
فعال و استارت کردن سرویس opneVpn
سرانجام آماده شروع سرویس OpenVPN در سرور خود هستیم. می توانیم این کار را با استفاده از systemd انجام دهیم.برای شروع سرور OpenVPN باید نام فایل پیکربندی خود را به عنوان یک متغیر نمونه بعد از نام فایل واحد systemd مشخص کنیم. فایل پیکربندی سرور ما /etc/openvpn/server.conf نام دارد ، بنابراین هنگام فراخوانی آن @server را به انتهای واحد ما اضافه خواهیم کرد:
sudo systemctl start openvpn@server
برای اطمینان از شروع موفقیتآمیز سرویس ، تایپ کنید:
sudo systemctl status openvpn@server
سرور های مجازی(vps) بام تک در دیتاسنترهای اروپا و با زیر ساخت ابری IP ثابت اختصاصی و قیمت مناسب تجربه متفاوتی به شما ارائه می دهد . با پرداخت ریالی و در چند دقیقه سرور مجازی VPS شما راه اندازی می شود همچنین در پنل مدیریت بام تک می توانید به اطلاعات روت سرور دسترسی داشته باشید و سرور خود را مدیریت کنید برای مشاهده ليست قیمت های سرور مجازی بام تک می توانید به وب سایت بام تک مراجعه کنید خرید سرور مجازی