server سرور OpenVPN را در RHEL 8 / CentOS 8 – مجموعه امنیت اطلاعات نصب و پیکربندی کنید

این راهنما نحوه نصب و پیکربندی سرور OpenVPN را در RHEL / CentOS 8. توضیح می دهد.

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

OpenVPN – این یک راه حل کامل VPN Secure Socket Layer (SSL) با منبع باز است که از طیف گسترده ای از تنظیمات پشتیبانی می کند.

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

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

در این پست ما به روش ساده ای برای نصب و پیکربندی سرور OpenVPN در RHEL / CentOS 8. خواهیم پرداخت.

سرور OpenVPN را روی RHEL / CentOS 8 نصب کنید

دو گزینه برای تنظیم سرور OpenVPN در RHEL / وجود دارد. CentOS 8.

  • نصب سرور OpenVPN به صورت دستی – وقت گیر
  • نصب سرور OpenVPN با استفاده از اسکریپت های خودکار سریع و آسان است

مرحله 1: EPEL را اضافه کنید و git را نصب کنید

مخزن EPEL را به RHEL خود اضافه کنید / CentOS 8.

این شامل بسته openvpn و وابستگی های لازم است.

ما همچنین نیاز داریم git برای دریافت کد از Github.

اطمینان حاصل کنید که آن نصب شده است.

 sudo dnf -y install git 

مرحله 2: مخزن openvpn-install

را کلون کنید. اکنون مخزن openvpn-install را با استفاده از ابزار git کلون کنید. در مرحله اول نصب شده:

 $  cd ~ 
$  git clone https://github.com/Nyr/openvpn-install.gitociation19459022]
کلون کردن به "openvpn-install" ...
از راه دور: شمارش اشیاء: 360 ، انجام شده است.
از راه دور: در کل 360 (دلتا 0) ، استفاده مجدد از 0 (دلتا 0) ، بارگیری مجدد از بسته 360
دریافت اشیاء: 100٪ (360/360) ، 104.04 KiB | 263.00 KiB / s ، انجام شده است.
حل کردن دلتا: 100٪ (180/180) ، انجام شده است. 

مرحله 3: نصب OpenVPN

را به فهرست دایرکتوری openvpn نصب کنید و اسکریپت نصب را اجرا کنید.

 $  chmod + x openvpn-install. sh 
$  sudo ./openvpn-install.shociation19659023-03 شما چند نکته را برای تغییر یا تأیید تنظیمات پیش فرض برای نصب دریافت خواهید کرد. 

 به این نصب کننده "جنگجو" در OpenVPN خوش آمدید!
 قبل از شروع تنظیم باید چند سؤال از شما بپرسم.
 اگر گزینه خوبی ندارید می توانید گزینه های پیش فرض را ترک کرده و مطبوعات را وارد کنید.
 ابتدا آدرس IPv4 رابط شبکه مورد نظر خود را OpenVPN ارائه دهید
 گوش دادن به
 آدرس IP:  192.168.122.198 
 این سرور در پشت NAT قرار دارد. آدرس عمومی یا نام میزبان IPv4 چیست؟
 آدرس IP عمومی / نام میزبان:  vpn.example.com 
 برای اتصالات OpenVPN کدام پروتکل را می خواهید؟
    1) UDP (توصیه می شود)
    2) TCP
 پروتکل [1-2]:  1 
 می خواهید OpenVPN به چه پورت گوش کند؟
 بندر: 1194
 کدام DNS را می خواهید با VPN استفاده کنید؟
    1) رسیورهای فعلی سیستم
    2) 1.1.1.1
    3) گوگل
    4) OpenDNS
    5) تأیید صحت
 DNS [1-5]:  1 
 سرانجام ، نام خود را برای گواهی مشتری بگویید.
 لطفا ، فقط از یک کلمه استفاده کنید ، بدون شخصیت های خاص.
 نام مشتری:  computingforgeeks 
 باشه ، این تنها چیزی بود که لازم داشتم ما اکنون آماده هستیم تا سرور OpenVPN شما را تنظیم کنیم.
 برای ادامه هر کلید را فشار دهید ...
 به روزرسانی مخازن مدیریت اشتراک.
 به روزرسانی مخازن مدیریت اشتراک.
 بسته های اضافی برای Enterprise Linux 7 - x86_64 189 kB / s | 16 مگابایت 01:24
 آخرین بررسی تاریخ انقضاء فوق داده: 0:00:54 پیش از تاریخ 20 مارس 2019 07:23:31 PM EAT.
 بسته epel-release-7-11.noarch از قبل نصب شده است.
 وابستگی ها برطرف شد.
 کاری برای انجام دادن ندارد
 کامل!
 به روزرسانی مخازن مدیریت اشتراک.
 به روزرسانی مخازن مدیریت اشتراک.
 در انتظار پردازش با pid 1906 به پایان رسید.
 بسته iptables-1.8.0-11.el8.x86_64 قبلاً نصب شده است.
 بسته opensl-1: 1.1.1-6.el8.x86_64 قبلاً نصب شده است.
 بسته های ca-گواهینامه ها-2018.2.24-6.el8.noarch از قبل نصب شده است.
 وابستگی ها برطرف شد.
  اندازه مخزن Arch Archive Package
 نصب:
  openvpn x86_64 2.4.7-1.el7 اپل 522 کیل
 نصب وابستگی:
  pkcs11-helper x86_64 1.11-3.el7 epel 56 k
  libnsl x86_64 2.28-18.el8 rhel-8-for-x86_64-baseos-beta-rpms 84 k
  compat-opensl10 x86_64 1: 1.0.2o-3.el8 rhel-8-for-x86_64-baseos-beta-rpms 1.1 M
 خلاصه معاملات
 4 بسته را نصب کنید
 اندازه بارگیری: 1.8 M
 اندازه نصب شده: 4.6 M
 بارگیری بسته ها:
 (1/4): pkcs11-helper-1.11-3.el7.x86_64.rpm 34 kB / s | 56 کیلوبایت 00:01
 (2/4): openvpn-2.4.7-1.el7.x86_64.rpm 191 kB / s | 522 kB 00:02
 (3/4): libnsl-2.28-18.el8.x86_64.rpm 26 kB / s | 84 کیلوبایت 00:03
 (4/4): compat-opensl10-1.0.2o-3.el8.x86_64.rpm
....................... 

شما باید تنظیم کنید:

  • آدرس IP سرور را که توسط VPN
  • نام میزبان سرور استفاده می شود ، در صورت داخل NAT
  • پروتکل OpenVPN استفاده شده TCP یا UDP است
  • درگاه OpenVPN
  • DNS Nameserver برای استفاده با VPN
  • اولین نام پروفایل مشتری

اگر نصب موفقیت آمیز بود ، می بایست پیامی مشابه با شماره زیر دریافت کنید.

 ..............
 بررسی کنید که درخواست با امضا مطابقت دارد
 امضاء
 نام ممتاز موضوع به شرح زیر است
 نام مشترک: ASN.1 12: 'computingforgeeks'
 گواهینامه تا 17 مارس 16:24:47 2029 GMT (3650 روز) گواهی می شود
 پایگاه داده را با 1 مدخل جدید بنویسید
 پایگاه داده به روز شد
 استفاده از SSL: opensl OpenSSL 1.1.1 FIPS 11 سپتامبر 2018
 با استفاده از پیکربندی از /etc/openvpn/easy-rsa/pki/safessl-easyrsa.cnf
 بارگیری /etc/openvpn/easy-rsa/pki/.rnd به RNG
 140135296710464: خطا: 2406F079: مولد شماره تصادفی: RAND_load_file: امکان باز کردن پرونده: crypto / rand / randfile.c: 90: نام پرونده = / etc / openvpn / easy-rsa / pki / .rnd
 یک CRL به روز شده ایجاد شده است.
 پرونده CRL: /etc/openvpn/easy-rsa/pki/crl.pem
 788
 موفقیت
 موفقیت
 موفقیت
 موفقیت
 موفقیت
 موفقیت
 612
 ایجاد Symlink /etc/systemd/system/multi-user.target.wants/[email protected] /usr/lib/systemd/system/[email protected].
 تمام شد
 پیکربندی مشتری شما در: /root/computingforgeeks.ovpn در دسترس است
 اگر می خواهید مشتری بیشتری اضافه کنید ، کافی است این اسکریپت را دوباره اجرا کنید! 

پرونده اصلی پیکربندی سرور OpenVPN ، /etc/openvpn/server.conf ، می توانید آن را به دلخواه خود پیکربندی کنید.

 $ cat / etc. /openvpn/server.conf
بندر 1194
پروتئین udp
دیو تیون
sndbuf 0
rcvbuf 0
حدود ca.crt
سرور گواهی
کلید سرور
dh dh.pem
auth SHA512
tls-auth ta.key 0
زیر شبکه توپولوژی
سرور 10.8.0.0 255.255.255.0
ifconfig-pool-dewam ipp.txt
فشار دادن "تغییر مسیر دروازه def1 بای پس-dhcp"
فشار "dhcp-option DNS 192.168.122.1"
نگهدارنده 10 120
رمزگذاری AES-256-CBC
کاربر هیچ کس
هیچ کس را گروه بندی نکنید
کلید پایدار
مداوم
وضعیت openvpn-status.log
فعل 3
crl-verify crl.pem 

در طی مراحل نصب ، رابط مجازی tun0 ایجاد می شود.

توسط مراجعان OpenVPN استفاده می شود.

 $  ip addr | grep tun0 
 3: tun0: mtu 1500 qdisc fq_codel وضعیت UNKNOWN گروه پیش فرض qlen 100
     inet 10.8.0.1/24 brd 10.8.0.255 دامنه جهانی tun0 

زیر شبکه پیش فرض برای این رابط 10.8.0.0/24 است.

به سرور یک آدرس IP اختصاص داده می شود 10.8.0.1:fare19659007-03 مرحله 3. ایجاد پروفایل کاربر OpenVPN (پرونده .ppn)

پس از اتمام مراحل 1 تا 3 ، سرور VPN شما آماده استفاده است. N

شما باید پروفایل های VPN ایجاد کنید که توسط کاربران مورد استفاده قرار گیرد.

با استفاده از همان اسکریپتی که برای نصب استفاده می کردیم.

کنترل و ایجاد و ابطال پروفایل های کاربر را کنترل می کند.

اسکریپت را اجرا کنید و 1 را انتخاب کنید. برای اضافه کردن یک کاربر جدید.

 $  sudo ./openvpn-install.shociation19459022]

به نظر می رسد OpenVPN قبلاً نصب شده است.
 شما می خواهید چه کاری انجام دهید؟
    1) کاربر جدیدی اضافه کنید
    2) یک کاربر موجود را باطل کنید
    3) OpenVPN را حذف کنید
    4) خروج
 گزینه ای را انتخاب کنید [1-4]:  1 
 برای گواهی مشتری نامی به من بگویید.
 لطفا ، فقط از یک کلمه استفاده کنید ، بدون شخصیت های خاص.
 نام مشتری: user1
 استفاده از SSL: opensl OpenSSL 1.1.1 FIPS 11 سپتامبر 2018
 بارگیری /etc/openvpn/easy-rsa/pki/.rnd به RNG
 139966006863680: خطا: 2406F079: تولید کننده شماره تصادفی: RAND_load_file: امکان باز کردن پرونده: crypto / rand / randfile.c: 90: نام پرونده = / etc / openvpn / easy-rsa / pki / .rnd
 ایجاد یک کلید خصوصی RSA
 ………………………………………………………… +++++
 ……………………………………………. +++++
 نوشتن کلید خصوصی جدید به "/etc/openvpn/easy-rsa/pki/private/user1.key.SeCj8ncgaH"
 با استفاده از پیکربندی از /etc/openvpn/easy-rsa/pki/safessl-easyrsa.cnf
 بارگیری /etc/openvpn/easy-rsa/pki/.rnd به RNG
 139828629223232: خطا: 2406F079: مولد شماره تصادفی: RAND_load_file: امکان باز کردن پرونده: crypto / rand / randfile.c: 90: نام پرونده = / etc / openvpn / easy-rsa / pki / .rnd
 بررسی کنید که درخواست با امضا مطابقت دارد
 امضاء
 نام ممتاز موضوع به شرح زیر است
 نام مشترک: ASN.1 12: 'user1'
 گواهینامه تا 17 مارس 16:48:32 2029 GMT (3650 روز) تائید می شود
 پایگاه داده را با 1 مدخل جدید بنویسید
 پایگاه داده به روز شد
 کاربر مشتری 1 اضافه شده است ، پیکربندی در دسترس است: /root/user1.ovpnociation19659034-03 .ovpn پرونده پروفایل OpenVPN در پوشه / root قرار دارد .19659050 † $  sudo ls / root / | grep ovpn 
computingforgeeks.ovpn
user1.ovpn 

بازبینی نمایه OpenVPN

برای لغو نمایه کاربر ، اسکریپت را اجرا کرده و 2. را انتخاب کنید.

 $  sudo ./openvpn-install.shociation19459022]
به نظر می رسد OpenVPN قبلاً نصب شده است.
 شما می خواهید چه کاری انجام دهید؟
    1) کاربر جدیدی اضافه کنید
    2) یک کاربر موجود را باطل کنید
    3) OpenVPN را حذف کنید
    4) خروج
 گزینه ای را انتخاب کنید [1-4]:  2 
 گواهی مشتری موجود را که می خواهید ابطال کنید انتخاب کنید:
      1) computingforgeeks
      2) user1
 یک مشتری را انتخاب کنید [1-2]:  2 
 آیا واقعاً می خواهید دسترسی کاربر مشتری 1 را لغو کنید؟ [y/N]:  y 
 با استفاده از پیکربندی از /etc/openvpn/easy-rsa/pki/safessl-easyrsa.cnf
 بارگیری /etc/openvpn/easy-rsa/pki/.rnd به RNG
 140410149218112: خطا: 2406F079: تولید کننده شماره تصادفی: RAND_load_file: امکان باز کردن پرونده: crypto / rand / randfile.c: 90: نام پرونده = / etc / openvpn / easy-rsa / pki / .rnd
 لغو مجوز FAC5CC0C127D1242CC55BD31B7FB27D3.
 پایگاه داده به روز شد
 استفاده از SSL: opensl OpenSSL 1.1.1 FIPS 11 سپتامبر 2018
 با استفاده از پیکربندی از /etc/openvpn/easy-rsa/pki/safessl-easyrsa.cnf
 بارگیری /etc/openvpn/easy-rsa/pki/.rnd به RNG
 139874879330112: خطا: 2406F079: تولید کننده شماره تصادفی: RAND_load_file: امکان باز کردن پرونده: crypto / rand / randfile.c: 90: نام پرونده = / etc / openvpn / easy-rsa / pki / .rnd
 یک CRL به روز شده ایجاد شده است.
 پرونده CRL: /etc/openvpn/easy-rsa/pki/crl.pem
 

حذف نصب سرور OpenVPN در RHEL / CentOS 8

اگر دیگر به سرور OpenVPN احتیاج ندارید ، حذف با استفاده از همان اسکریپت نصب می تواند انجام شود.

 $  sudo ./openvpn -install.sh 
به نظر می رسد OpenVPN قبلاً نصب شده است.
 شما می خواهید چه کاری انجام دهید؟
    1) کاربر جدیدی اضافه کنید
    2) یک کاربر موجود را باطل کنید
    3) OpenVPN را حذف کنید
    4) خروج
 گزینه [1-4] را انتخاب کنید: 3
 آیا واقعاً می خواهید OpenVPN را حذف کنید؟ [y/N]:  y 
 788
 موفقیت
 موفقیت
 موفقیت
 موفقیت
 موفقیت
 موفقیت
 به روزرسانی مخازن مدیریت اشتراک.
 به روزرسانی مخازن مدیریت اشتراک.
 وابستگی ها برطرف شد.
...
کامل!
OpenVPN حذف شد! 

مرحله 4: به سرویس دهنده OpenVPN از مشتری متصل شوید

شما می توانید از هر مشتری VPN مورد نظر خود برای پیکربندی سرویس گیرنده OpenVPN در سیستم عامل خود استفاده کنید.

برای کسانی که می خواهند از مشتری رسمی OpenVPN استفاده کنند ، پیکربندی می شوند.

به صفحه بارگیری بروید و آخرین نسخه را بارگیری کنید ، و سپس آن را نصب کنید.

پس از نصب در ویندوز ، با مشخصات ovpn به دایرکتوری بروید ، روی نام پرونده راست کلیک کنید و "اجرای OpenVPN را با این پرونده پیکربندی اجرا کنید"

برای کاربران لینوکس می توانید از NetworkManager و افزونه openvpn استفاده کنید برای اتصال به سرور OpenVPN.