پیکربندی openvpn در centos7

پیکربندی openvpn در centos7

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

open vpn چیست؟

open vpn مشهورترین پروتکل vpn است که در اکثر سایت ها و شرکت های بزرگ داخلی و خارجی مورد استفاده قرار میگیرد و گاها این پروتکل به تنهایی قابل اکتفا است که به چرا های این ضمینه خواهیم پرداخت و در اکثر ادارات و موسسات بزرگ همینطور ارگان ها و … از این پروتکل امن و پرسرعت استفاده میکنند که میتوان انواع مختلفی از کاربرد آن را توصیف کرد .به دلیل اینکه در کشور عزیزمان ایران فیلترینگ وجود دارد مانند سایر کشور های مختلف دنیا کاربران زیادی برای دور زدن آن از وی پی ان استفاده میکنند که صحیح یا غلط بودن آن به شخص استفاده کننده مربوط میشود و ما در این مقاله قصد آموزش راه کار دور زدن فیلترینگ و… را آموزش نخواهیم داد و صرفا نحوه استفاده مناسب آن که میتوان در شرکت یا در منزل برای امنیت بیشتر از آن استفاده کرد یا مثلا دفاتر اسناد رسمی کشور که از اینترنت و openvpn برای امنیت و دسترسی به اتوماسین ها و سیستم های داخلی یا اینترانت یا … استفاده میکنند هدف ما است.

نکته: این آموزش جنبه دور زدن فیلترینگ و … را ندارد و هدف از تولید این محتوا آشنایی با پروتکل openvpn و استفاده درست آن برای امنیت است. برفرض مثال دسترسی به اینترنت بانک شما محدود است به ۱ آیپی تعریف شده و شما در سفر یا در منزل در حال استراحت هستید و نیاز شدیدی دارید به پرداخت فاکتور یا امور مالی که با استفاده از این پروتکل به سادگی میتوانید آیپی خود را به آیپی مد نظری که تعریف و نصب کردید و مجوز استفاده از آن را دارید تغییر و به امور خود برسید.

Openvpn برخلاف سایر پروتکل‌های تونل سازی مبتنی بر IPSec ( مانند L2tp )، برای تأیید اعتبار و رمزنگاری اطلاعات، به SSL / TLS تکیه می‌کند.

این فناوری امنیتی استاندارد، برای ایجاد اتصالات ایمن و از راه دور از مکانی به مکان دیگر یا از نقطه‌ای به نقطه دیگر است. استفاده ازSSL برای محافظت از معاملات مالی، انتقال داده‌ها، ایمیل و موارد دیگر بسیار معروف و شناخته شده است.
OpenVPN تقریبا با تمامی سیستم‌عامل‌های اصلی مانند ویندوز، اندروید، IOS، مک و لینوکس سازگار است. این VPN، استانداردهای قدرتمند رمزنگاری را ارائه می‌دهد و برای شکستن محدودیت‌های جغرافیایی بسیار عالی عمل می‌کند.

Openvpn اوپن سورس (Open Source) است و از رمزگذاری حداکثر ۲۵۶ بیتی پشتیبانی می‌کند.

پیکربندی openvpn در centos7

مقدمه

یک شبکه خصوصی مجازی (VPN) به شما امکان می دهد شبکه های غیرقابل اعتماد را مثل اینکه در یک شبکه خصوصی هستید مرور کنید. این امکان را برای شما فراهم می کند که با اتصال ایمن و ایمن از تلفن هوشمند یا لپ تاپ خود هنگام اتصال به یک شبکه غیر قابل اعتماد ، مانند WiFi در هتل یا کافی شاپ ، به اینترنت و ایمن دسترسی داشته باشید.

در هنگام اتصال با اتصالات HTTPS ، این تنظیم به شما امکان می دهد ورود و معاملات بی سیم خود را ایمن کنید. و هرگونه ترافیک HTTP بدون رمزگذاری را از شبکه غیر قابل اعتماد محافظت کنید.

OpenVPN یک راه حل کامل VPN با منبع آزاد و امن با منبع آزاد (SSL) است که شامل طیف گسترده ای از تنظیمات است. در این آموزش OpenVPN را روی سرور CentOS 7 تنظیم می کنید و سپس پیکربندی می کنید تا از یک دستگاه مشتری قابل دسترسی باشد.

پیش نیاز ها

۱- سرور مجازی

۲-سیستم عامل centos7

۳- نرم افزار putty جهت اتصال به کنسول سرور یا نرم افزار های مشابه جهت اجرای دستورات

۴- در صورت نیاز یک دامنه با dns رکورد های اختصاصی برای آیپی مد نظر شما با یک A record از سایر دامنه ها که آیپی آن با آیپی سرور برابری داشته باشد.

۵- یک سیستم کلاینت که میتواند تلفن هوشمند یا یک کامپیوتر ساده جهت تست پروتکل

در صورتی که سرور مجازی ندارید میتوانید با نرم افزار های شبیه ساز سرور یا مجازی ساز های مختلف در سیستم خود این آموزش را دنبال کنید یا با خرید از فاما سرور سرور مجازی و سرور اختصاصی خود را تهیه کنید و در صورت نیاز بصورت رایگان اپلکیشن ها و… را با هماهنگی با پشتیبانی برای شما فعال کنید.

 

نصب OpenVPN

برای شروع ، OpenVPN را روی سرور نصب خواهیم کرد. همچنین Easy RSA را نصب خواهیم کرد ، یک ابزار مدیریت زیرساخت اصلی کلید که به ما کمک می کند تا مجوز داخلی داخلی (CA) را برای استفاده با VPN خود تنظیم کنیم. ما همچنین از Easy RSA برای ایجاد اتصالات VPN بعداً برای ایجاد جفت های کلیدی SSL استفاده خواهیم کرد.

به عنوان کاربر sudo غیر ریشه به سرور وارد شوید و لیست های بسته را به روز کنید تا مطمئن شوید که آخرین نسخه ها را دارید.

sudo yum update -y

مخازن اضافی برای انبار Enterprise Linux (EPEL) یک مخزن اضافی است که توسط پروژه فدورا حاوی بسته های غیر استاندارد اما محبوب است. OpenVPN در مخازن پیش فرض CentOS موجود نیست اما در EPEL موجود است ، بنابراین EPEL را نصب کنید:

sudo yum install epel-release -y

سپس لیست های بسته خود را یک بار دیگر به روز کنید:

sudo yum update -y

بعد ، OpenVPN و wget را نصب کنید ، که ما برای نصب Easy RSA استفاده خواهیم کرد:

sudo yum install -y openvpn wget

نکته: در صورتی که با ارور مواجه شدید احتمال میرود که دستور wget در سرور شما نصب نیست که میتوانید با دستور زیر wget را نصب کنید.

yum install wget -y

با استفاده از wget ، Easy RSA را بارگیری کنید. برای اهداف این آموزش ، توصیه می کنیم از easy-rsa-2 استفاده کنید زیرا مستندات بیشتری برای این نسخه موجود است. می توانید لینک بارگیری آخرین نسخه آسان-rsa-2 را در صفحه انتشار پروژه مشاهده کنید:

wget -O /tmp/easyrsa https://github.com/OpenVPN/easy-rsa-old/archive/2.3.3.tar.gz

بعد ، فایل فشرده شده را با تار استخراج کنید:

tar xfz /tmp/easyrsa

با این کار دایرکتوری جدیدی به نام easy-rsa-old-2.3.3 ایجاد می شود. یک زیرشاخه جدید زیر / etc / openvpn بسازید و نام آنرا ساده (rsa) دهید:

sudo mkdir /etc/openvpn/easy-rsa

پرونده های Easy RSA استخراج شده را در فهرست جدید کپی کنید:

sudo cp -rf easy-rsa-old-2.3.3/easy-rsa/2.0/* /etc/openvpn/easy-rsa

سپس مالک دایرکتوری را به کاربر sudo غیر root خود تغییر دهید:

sudo chown sammy /etc/openvpn/easy-rsa/

پس از نصب این برنامه ها و انتقال به مکان های مناسب در سیستم شما ، مرحله بعدی سفارشی سازی پیکربندی سمت سرور OpenVPN است.

 

پیکربندی OpenVPN

برای پیکربندی openvpn در centos7 مانند بسیاری دیگر از ابزارهای منبع باز گسترده ، ده ها گزینه پیکربندی در دسترس شما هستند. در این بخش دستورالعمل هایی در مورد نحوه تنظیم پیکربندی اولیه سرور OpenVPN ارائه خواهیم داد.

OpenVPN چندین پرونده پیکربندی نمونه را در فهرست اسناد خود دارد. ابتدا پرونده server.conf را به عنوان نقطه شروع برای فایل پیکربندی خود کپی کنید.

sudo cp /usr/share/doc/openvpn-2.4.4/sample/sample-config-files/server.conf /etc/openvpn

پرونده جدید را برای ویرایش با ویرایشگر متن مورد نظر خود باز کنید. در مثال خود از نانو استفاده خواهیم کرد که اگر در حال حاضر آن را در سرور خود ندارید می توانید با دستور yum install nano بارگیری کنید:

sudo nano /etc/openvpn/server.conf

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

برای نصب ویرایشگر nano از دستور زیر استفاده کنید.

yum install nano -y

چند سطر وجود دارد که ما باید در این پرونده تغییر دهیم ، که اکثر آنها فقط با برداشتن نقطه محکم ، باید بدون نظر باشند ، ؛ ؛ در ابتدای خط. کارکردهای این خطوط ، و سایر سطرهایی که در این آموزش ذکر نشده است ، در نظرات فوق هر یک به تفصیل توضیح داده شده است.

برای شروع کار ، خط حاوی  “push "redirect-gateway def1 bypass-dhcp"” را پیدا کرده و غیر فعال کنید. انجام این کار به مشتری شما می گوید که کلیه ترافیک خود را از طریق سرور OpenVPN شما هدایت کند. آگاه باشید که فعال کردن این قابلیت باعث ایجاد مشکلات اتصال با سایر خدمات شبکه مانند SSH می شود:

این خط را پیدا کنید:

push “redirect-gateway def1 bypass-dhcp”

از آنجا که مشتری شما قادر به استفاده از سرورهای DNS پیش فرض ارائه شده توسط ISP شما نخواهد بود (زیرا ترافیک آن تغییر مسیر خواهد یافت) ، باید به آن بگویید که از کدام سرورهای DNS می تواند برای اتصال به OpenVPN استفاده کند. می توانید سرورهای DNS مختلفی را انتخاب کنید ، اما در اینجا ما از سرورهای DNS عمومی Google استفاده خواهیم کرد که دارای IP های ۸٫۸٫۸٫۸ و ۸٫۸٫۴٫۴ هستند.

این کار را با عدم رعایت هر دو خط “dhcp-option DNS …” و به روز کردن آدرس های IP تنظیم کنید:

push “dhcp-option DNS 8.8.8.8”
push “dhcp-option DNS 8.8.4.4”

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

user nobody
group nobody

بعد ، خط زیر topology subnet را لغو کنید. این به همراه خط server 10.8.0.0 255.255.255.0 در زیر آن ، نصب OpenVPN شما را پیکربندی می کند تا به عنوان یک کار فرعی عمل کند و به دستگاه مشتری می گوید که از چه آدرس IP استفاده کند. در این حالت ، سرور ۱۰٫۸٫۰٫۱ و مشتری اول ۱۰٫۸٫۰٫۲ تبدیل می شود:

 

topology subnet

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

remote-cert-eku “TLS Web Client Authentication”

سرانجام ، OpenVPN اکیداً توصیه می کند که کاربران بتوانند تأیید هویت TLS را انجام دهند ، یک پروتکل رمزنگاری شده که ارتباطات ایمن را از طریق شبکه رایانه ای تضمین می کند. برای انجام این کار ، شما باید یک کلید رمزگذاری استاتیک (که در مثال ما به عنوان myvpn.tlsauth نامگذاری شده است ، ایجاد کنید ، اگرچه می توانید هر نامی را که دوست دارید انتخاب کنید). قبل از ایجاد این کلید ، خط را در پرونده پیکربندی حاوی tls-auth ta.key 0 با آمادگی آن با یک جمع رنگ اظهار نظر کنید. سپس tls-crypt myvpn.tlsauth را به خط زیر آن اضافه کنید:

 

;tls-auth ta.key 0
tls-crypt myvpn.tlsauth

فایل پیکربندی سرور OpenVPN را ذخیره کرده و از آن خارج شوید (در نانو ، CTRL – X ، Y را فشار دهید ، سپس ENTER را انجام دهید) و سپس کلید رمزگذاری استاتیک را با دستور زیر تولید کنید:

sudo openvpn --genkey --secret /etc/openvpn/myvpn.tlsauth

اکنون که سرور شما پیکربندی شده است ، می توانید کلیدهای SSL و گواهی های لازم برای اتصال ایمن به اتصال VPN خود را تنظیم کنید.

پیکربندی openvpn در centos7

پیکربندی openvpn در centos7

تولید کلیدها و گواهینامه ها

 

برای تولید کلیدها و گواهی نامه ها از مجموعه ای از اسکریپت هایی که با برنامه نصب شده اند استفاده می کند. به منظور جلوگیری از پیکربندی مجدد در هر بار نیاز به تولید گواهی ، می توانید پیکربندی Easy RSA را تغییر دهید تا مقادیر پیش فرض مورد استفاده برای زمینه های گواهی ، از جمله کشور ، شهر و آدرس ایمیل مورد نظر خود را تعریف کنید.

ما فرآیند تولید کلیدها و گواهینامه ها را با ایجاد دایرکتوری که Easy RSA در آن کلیدها و مجوزهای تولید شده شما را ذخیره می کند ، آغاز خواهیم کرد:

 

sudo mkdir /etc/openvpn/easy-rsa/keys

متغیرهای پیش فرض گواهی در پرونده vars در /etc/openvpn/easy-rsa تنظیم شده اند ، بنابراین آن پرونده را برای ویرایش باز کنید:

sudo nano /etc/openvpn/easy-rsa/vars

به پایین فایل بروید و مقادیر آغاز شده با صادرات KEY_ را برای مطابقت با اطلاعات خود تغییر دهید. مواردی که بیشترین اهمیت را دارند:

KEY_CN: در اینجا دامنه یا زیر دامنه ای را که برای سرور شما حل می شود ، وارد کنید.

KEY_NAME: شما باید سرور را اینجا وارد کنید. اگر چیز دیگری را وارد کنید ، باید فایلهای پیکربندی مربوط به server.key و server.crt را نیز به روز کنید.

متغیرهای دیگر در این پرونده که ممکن است بخواهید تغییر دهید:

KEY_COUNTRY:برای این متغیر ، مخفف دو حرفی از کشور محل اقامت خود را وارد کنید.

KEY_PROVINCE:این باید نام یا مخفف وضعیت سکونت شما باشد.

KEY_CITY:در اینجا ، نام شهری را که در آن زندگی می کنید ، وارد کنید.

KEY_ORG: این باید نام سازمان یا شرکت شما باشد.

KEY_EMAIL: آدرس ایمیلی را که می خواهید به گواهی امنیتی وصل شوید ، وارد کنید.

KEY_OU: این باید نام “واحد سازمانی” باشد که متعلق به شماست ، به طور معمول یا نام گروه یا تیم شما.

بقیه متغیرها می توانند با اطمینان از خارج از موارد استفاده خاص نادیده گرفته شوند. پس از انجام تغییرات خود ، پرونده باید به این صورت باشد:

. . .

# These are the default values for fields
# which will be placed in the certificate.
# Don’t leave any of these fields blank.
export KEY_COUNTRY=”US”
export KEY_PROVINCE=”NY”
export KEY_CITY=”New York”
export KEY_ORG=”Famaserver.com”
export KEY_EMAIL=”sammy@example.com”
export KEY_EMAIL=sammy@example.com
export KEY_CN=openvpn.example.com
export KEY_NAME=”server”
export KEY_OU=”Community”
. . .

ذخیره کنید و فایل را ببندید.

برای شروع تولید کلیدها و گواهینامه ها ، به متغیرهای جدیدی که در پرونده vars تنظیم کرده اید ، وارد پوشه و منبع ساده rsa شوید:

 cd /etc/openvpn/easy-rsa
source ./vars

اسکریپت تمیز RSA آسان را اجرا کنید تا کلیدها و گواهینامه های موجود در این پوشه را حذف کرده و مجوز مجوز تولید کنید:

./clean-all

بعد ، مجوز گواهینامه را با اسکریپت build-ca بسازید. از شما خواسته می شود مقادیر مربوط به فیلدهای گواهی را وارد کنید ، اما اگر متغیرها را در پرونده وارس تنظیم کنید ، تمام گزینه های شما قبلاً به صورت پیش فرض تنظیم می شوند. برای پذیرش پیش فرض هرکدام می توانید ENTER را فشار دهید:

./build-ca

این اسکریپت پرونده ای به نام ca.key ایجاد می کند. این کلید خصوصی است که برای امضای گواهینامه های سرور و مشتری شما استفاده می شود. در صورت گم شدن ، دیگر نمی توانید به هیچ گواهی نامه ای از این مرجع صدور گواهینامه اعتماد کنید ، و اگر کسی قادر به دسترسی به این پرونده باشد ، می تواند گواهی های جدید را امضا کند و بدون اطلاع شما به VPN شما دسترسی پیدا کند. به همین دلیل ، OpenVPN توصیه می کند تا ca.key را در محلی ذخیره کنید که ممکن است آفلاین باشد و فقط باید هنگام ایجاد گواهینامه های جدید فعال شود.

بعد ، با استفاده از اسکریپت build-key-server سرور یک کلید و مجوز ایجاد کنید:

./build-key-server server

مانند ساخت CA ، مقادیر تعیین شده را به عنوان پیش فرض مشاهده خواهید کرد تا بتوانید در این قسمت ها وارد ENTER شوید. علاوه بر این ، از شما خواسته می شود که رمز عبور چالش و نام شرکت اختیاری را وارد کنید. اگر رمز عبور چالشی را وارد کنید ، هنگام اتصال به VPN از طرف مشتری ، از شما خواسته می شود. اگر نمی خواهید یک رمز عبور چالش تعیین کنید ، فقط این خط را خالی بگذارید و ENTER را فشار دهید. در پایان ، Y را وارد کنید تا تغییرات را انجام دهید.

آخرین قسمت ایجاد کلیدها و گواهینامه های سرور ، تولید فایل تبادل کلید Diffie-Hellman است. برای این کار از اسکریپت build-dh استفاده کنید:

./build-dh

این ممکن است چند دقیقه طول بکشد.

پس از اتمام تولید سرور خود با ایجاد فایل تبادل کلید ، کلیدهای سرور و گواهینامه ها را از فهرست کلیدهای میانبرها در فهرست openvpn کپی کنید:

 cd /etc/openvpn/easy-rsa/keys
sudo cp dh2048.pem ca.crt server.crt server.key /etc/openvpn

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

از آنجا که ما فقط یک مشتری را در اینجا مستقر خواهیم کرد ، ما آنرا مشتری نامیدیم ، اما اگر دوست دارید می توانید آن را به نام توصیفی تری تغییر دهید:

 cd /etc/openvpn/easy-rsa
./build-key client

در آخر ، فایل پیکربندی OpenSSL نسخه باز شده ، Opensl-1.0.0.cnf را به یک نام نسخه ای ، opensl.cnf کپی کنید. عدم انجام این کار می تواند به خطایی منجر شود که OpenSSL نتواند پیکربندی را بارگیری کند زیرا نمی تواند نسخه خود را تشخیص دهد:

cp /etc/openvpn/easy-rsa/openssl-1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf

اکنون که تمام کلیدها و گواهینامه های لازم برای سرور و مشتری شما ایجاد شده است ، می توانید به سمت تنظیم مسیریابی بین دو دستگاه بروید.

پیکربندی openvpn در centos7

مسیریابی

 

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

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

 

sudo firewall-cmd --get-active-zones

 

خروجی
trusted
Interfaces: tun0

در مرحله بعد ، سرویس openvpn را به لیست سرویسهای مجاز توسط firewalld در منطقه فعال خود اضافه کنید و سپس با اجرای مجدد دستور ، آن تنظیم را دائمی کنید اما با گزینه –permanent اضافه کرد:

 sudo firewall-cmd –zone=trusted –add-service openvpn
sudo firewall-cmd –zone=trusted –add-service openvpn –permanent

می توانید بررسی کنید که این سرویس با دستور زیر به درستی اضافه شده است:

sudo firewall-cmd --list-services --zone=trusted

خروجی
openvpn

در مرحله بعد ، یک نمونه نقاب دار را به نمونه زمان اجرا فعلی اضافه کنید ، و سپس با گزینه --permanent مجدداً آن را به آن اضافه کنید تا نقاب به تمام موارد بعدی اضافه شود:

 

 sudo firewall-cmd –add-masquerade
sudo firewall-cmd –permanent –add-masquerade

می توانید بررسی کنید که با این دستور به درستی اضافه شده است:

sudo firewall-cmd --query-masquerade

خروجی
yes

در مرحله بعد ، مسیریابی را به زیر شبکه OpenVPN خود هدایت کنید. می توانید این کار را با ایجاد یک متغیر انجام دهید (SHARK در مثال ما) که نشان دهنده رابط شبکه اصلی مورد استفاده توسط سرور شما و سپس با استفاده از آن متغیر برای اضافه کردن دائم قانون مسیریابی است:

SHARK=$(ip route get 8.8.8.8 | awk 'NR==1 {print $(NF-2)}')

 

sudo firewall-cmd --permanent --direct --passthrough ipv4 -t nat -A POSTROUTING -s 10.8.0.0/24 -o $SHARK -j MASQUERADE

مطمئن باشید که این تغییرات را در قوانین فایروال خود با بارگذاری مجدد فایروال اجرا می کنید:

sudo firewall-cmd --reload

در مرحله بعد ، انتقال IP را فعال کنید. با این کار همه ترافیک وب از مشتری شما به آدرس IP سرور شما منتقل می شود ، و آدرس IP عمومی مشتری شما به طور موثر پنهان می شود.

sysctl.conf را برای ویرایش باز کنید:

sudo nano /etc/sysctl.conf

سپس خط زیر را در بالای پرونده اضافه کنید:

net.ipv4.ip_forward = 1

سرانجام ، سرویس شبکه را مجدداً راه اندازی کنید تا انتقال IP به اجرا درآید:

sudo systemctl restart network.service

با استفاده از قوانین مسیریابی و فایروال ، می توانیم سرویس OpenVPN را روی سرور شروع کنیم.

پیکربندی openvpn در centos7

شروع OpenVPN

 

OpenVPN به عنوان یک سرویس سیستمی با استفاده از systemctl اداره می شود. ما OpenVPN را برای راه اندازی در بوت پیکربندی می کنیم تا بتوانید هر زمان که سرور شما در حال اجرا است به VPN خود متصل شوید. برای این کار ، سرور OpenVPN را با افزودن آن به systemctl فعال کنید:

sudo systemctl -f enable openvpn@server.service

سپس سرویس OpenVPN را شروع کنید:

sudo systemctl start openvpn@server.service

دوبار بررسی کنید که سرویس OpenVPN با دستور زیر فعال است. در خروجی باید فعال (در حال اجرا) را مشاهده کنید:

sudo systemctl status openvpn@server.service
خروجی
● openvpn@server.service – OpenVPN Robust And Highly Flexible Tunneling Application On server
Loaded: loaded (/usr/lib/systemd/system/openvpn@.service; enabled; vendor preset: disabled)
Active: **active (running)** since Wed 2018-03-14 15:20:11 EDT; 7s ago
Main PID: 2824 (openvpn)
Status: “Initialization Sequence Completed”
CGroup: /system.slice/system-openvpn.slice/openvpn@server.service
└─۲۸۲۴ /usr/sbin/openvpn –cd /etc/openvpn/ –config server.conf
. . .

اکنون پیکربندی سمت سرور را برای OpenVPN تکمیل کرده ایم. در مرحله بعد ، دستگاه مشتری خود را پیکربندی کرده و به سرور OpenVPN متصل می شوید.

پیکربندی openvpn در centos7

پیکربندی مشتری

 

 

صرف نظر از سیستم عامل دستگاه مشتری شما ، به یک نسخه محلی ذخیره شده از گواهی CA و کلید مشتری و گواهی تولید شده در مرحله ۳ ، و همچنین کلید رمزگذاری استاتیک که در انتهای مرحله ۲ ایجاد کرده اید ، نیاز دارید.

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

/etc/openvpn/easy-rsa/keys/ca.crt
/etc/openvpn/easy-rsa/keys/client.crt
/etc/openvpn/easy-rsa/keys/client.key
/etc/openvpn/myvpn.tlsauth

 

این فایلها را در دستگاه مشتری خود کپی کنید. می توانید از SFTP یا روش مورد نظر خود استفاده کنید. حتی می توانید پرونده ها را در ویرایشگر متن خود باز کنید و محتویات را در پرونده های جدید در دستگاه مشتری خود کپی و چسباندن کنید. صرفنظر از کدام روش استفاده می کنید ، حتماً توجه داشته باشید که این فایلها را در کجا ذخیره می کنید.

در مرحله بعدی ، یک فایل با نام client.ovpn در دستگاه مشتری خود ایجاد کنید. این یک پرونده پیکربندی برای یک سرویس دهنده OpenVPN است و به آن می گوید چگونه به سرور وصل شوید:

sudo nano client.ovpn

سپس خطوط زیر را به client.ovpn اضافه کنید. توجه کنید که بسیاری از این خطوط منعکس کننده مواردی هستند که ما آنها را بدون نظر اضافه نکردیم یا به پرونده server.conf اضافه نکردیم ، یا به طور پیش فرض در آن قرار داشتیم:

 

client
tls-client
ca /path/to/ca.crt
cert /path/to/client.crt
key /path/to/client.key
tls-crypt /path/to/myvpn.tlsauth
remote-cert-eku “TLS Web Client Authentication”
proto udp
remote your_server_ip 1194 udp
dev tun
topology subnet
pull
user nobody
group nobody

هنگام افزودن این خطوط ، موارد زیر را توجه کنید:

برای بازتاب نامی که به مشتری در کلید و گواهی خود داده اید ، باید خط اول را تغییر دهید. در مورد ما ، این فقط مشتری است
همچنین باید آدرس IP را از آدرس__verver_ip به آدرس IP سرور خود به روز کنید. بندر ۱۱۹۴ می تواند یکسان باشد
اطمینان حاصل کنید که مسیرهای مربوط به پرونده های کلید و گواهینامه شما صحیح است

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

 

Windows:

در ویندوز به دونفره های رسمی OpenVPN Community Edition که همراه با یک رابط کاربری گرافیکی (GUI) نیاز دارید ، نیاز دارید. پرونده پیکربندی .ovpn را در فهرست مناسب ، پیکربندی C: \ Program Files \ OpenVPN \ قرار دهید و روی اتصال در GUI کلیک کنید. رابط کاربری گرافیکی OpenVPN در Windows باید با امتیازات اداری اجرا شود.

macOS:

در MacOS ، برنامه منبع باز Tunnelblick رابط کاربری مشابه OpenVPN GUI در ویندوز را ارائه می دهد ، و همراه با OpenVPN و درایورهای مورد نیاز TUN / TAP را ارائه می دهد. همانند ویندوز ، تنها گام مورد نیاز اینست که پرونده پیکربندی .ovpn را در فهرست ~ / Library / Application Support / Tunnelblick / Configurationations قرار دهید. از طرف دیگر ، می توانید بر روی پرونده .ovpn خود دو بار کلیک کنید.

Linux:

در لینوکس ، باید OpenVPN را از مخازن رسمی توزیع خود نصب کنید. سپس می توانید با اجرای موارد زیر OpenVPN را فراخوانی کنید:

sudo openvpn --config ~/path/to/client.ovpn

 

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

 

امیدوارم از مقاله پیکربندی openvpn در centos7 استفاده کرده باشید.

فاما سرور

نظرات کاربران
مطالب مرتبط
امنیت وردپرس
امنیت وردپرس

در این مقاله به امنیت وردپرس اشاره ای خواهیم داشت که با توجه به هسته و میزبانی وب مقاله را…

نحوه رمزگذاری Nginx در اوبونتو
نحوه رمزگذاری Nginx در اوبونتو

نحوه رمزگذاری Nginx در اوبونتو را مشاهده میکنید از وبلاگ فاما سرور,در این آموزش قصد داریم تا نحوه رمزنگاری وب…

تنظیم ip در Cent os
تنظیم ip در Cent os

تنظیم ip در Cent os یکی از مواردی که اکثر مدیران سرور با آن به مشکل میخورند تنظیم نشدن یا…

درباره فناوران آساک

فاما سرور از گروه شرکت های فاما نام گذاری و تشکیل شده است که در قسمت فوتر میتوانید با خدمات دیگر ما نیز آشنا بشوید و خرسندیم که در این راه و برای رسیدن به موفقیت در کنار شما خواهیم بود.

سرور مجازی ایران

سرور اختصاصی ایران

سرور مجازی آلمان

سرور مجازی آمریکا

سرور مجازی فرانسه

سرور مجازی

سرور ایران

خرید vps

سرور بیگ بلو باتن