- لماذا يجب علينا تثبيت OpenVPN على Ubuntu 22.04؟
- المتطلبات الأساسية
- الجزء الأول - تثبيت OpenVPN و EasyRSA
- الجزء الثاني - إنشاء هيئات إصدار الشهادات والمفاتيح والشهادات
- الجزء 3 - تهيئة خادم OpenVPN
- الجزء 4 - تفعيل التوجيه وNAT
- إعدادات جدار الحماية (في حال تفعيلها)
- الجزء 5 - إعداد خدمة OpenVPN
- الجزء 6 - إنشاء ملف عميل (.ovpn) باستخدام شهادة مضمنة
- القسم 7 - إدارة المستخدمين، وإلغاء الشهادات، والأمان
- القسم 8 - نصائح فنية وتحسين التطبيقات
- القسم 9 - مقارنة المواقع والبنية التحتية
- القسم 10 - المراقبة والصيانة
- استكشاف الأخطاء وإصلاحها بسرعة
- ملخص وتوصيات أمنية
- مزايا البنية التحتية والمواقع المتاحة
- الأسئلة الشائعة
لماذا يجب علينا تثبيت OpenVPN على Ubuntu 22.04؟
يقدم هذا الدليل شرحاً عملياً وشاملاً للإعداد والتكوين. أوبن في بي إن على أوبونتو 22.04 صُمم هذا البرنامج لمسؤولي الأنظمة، ومهندسي DevOps، والمتداولين، واللاعبين. تشمل الخطوات تثبيت الحزم، وإنشاء بنية مفاتيح عامة (PKI) باستخدام EasyRSA، وتكوين الخادم والعميل، وإعداد جدار الحماية (ufw/iptables)، وتفعيل التوجيه، وحلول الأمان مثل... تشفير TLSإدارة واستخدام قائمة إبطال الشهادات (CRL) Fail2ban سيكون ذلك.
المتطلبات الأساسية
لاتباع هذا الدليل، ستحتاج إلى ما يلي:
- خادم أوبونتو 22.04 مع مستخدم لديه حق الوصول سودو
- عنوان IP عام أو نطاق IP مخصص (IPv4/IPv6 إذا لزم الأمر)
- ميناء مجاني (مقترح): UDP 1194 أو منفذ مخصص لتقليل احتمالية المسح الضوئي)
- ذاكرة وصول عشوائي (RAM) بسعة 1 جيجابايت على الأقل للأحمال الأساسية؛ قم بزيادة الموارد للاستخدام المؤسسي أو لمئات الاتصالات
الجزء الأول - تثبيت OpenVPN و EasyRSA
أولاً، قم بتحديث الحزم ثم قم بتثبيت OpenVPN و EasyRSA.
sudo apt update && sudo apt upgrade -y
sudo apt install -y openvpn easy-rsaانسخ قالب EasyRSA وقم بإعداد البنية التحتية للمفاتيح العامة (PKI):
make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
./easyrsa init-pkiالجزء الثاني - إنشاء هيئات إصدار الشهادات والمفاتيح والشهادات
خطوات إنشاء المرجع المصدق والمفاتيح والشهادات باستخدام EasyRSA:
./easyrsa build-ca nopass
./easyrsa gen-req server nopass
./easyrsa sign-req server server
./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1
./easyrsa gen-dh
openvpn --genkey --secret /etc/openvpn/ta.key
./easyrsa gen-crl
cp pki/crl.pem /etc/openvpn/crl.pem
chmod 644 /etc/openvpn/crl.pemالملفات المطلوبة للخادم:
- /etc/openvpn/server.crt
- /etc/openvpn/server.key
- /etc/openvpn/ca.crt
- /etc/openvpn/dh.pem
- /etc/openvpn/ta.key
- /etc/openvpn/crl.pem
الجزء 3 - تهيئة خادم OpenVPN
ملف تكوين نموذجي في /etc/openvpn/server/server.conf إنشاء. المثال التالي هو تكوين أساسي وآمن باستخدام AES-256-GCM و tls-crypt.
port 1194
proto udp
dev tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key
dh /etc/openvpn/dh.pem
tls-crypt /etc/openvpn/ta.key
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist /var/log/openvpn/ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 1.1.1.1"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
cipher AES-256-GCM
auth SHA256
ncp-ciphers AES-256-GCM
persist-key
persist-tun
user nobody
group nogroup
status /var/log/openvpn/status.log
log /var/log/openvpn/openvpn.log
verb 3
crl-verify /etc/openvpn/crl.pemنصائح:
- استخدام AES-256-GCM و مصادقة SHA256 مُستَحسَن.
- لتقليل زمن الاستجابة على الشبكات الحساسة مثل شبكات التداول أو الألعاب، بروتوكول UDP إنه أكثر ملاءمة؛ وهو ممكن في الشبكات المحدودة بروتوكول التحكم بالنقل (TCP) قد يكون ذلك ضرورياً.
- أنت تستطيع الحد الأدنى لإصدار TLS هو 1.2 أو الحد الأدنى لإصدار TLS هو 1.3 وأضف قائمة بأنواع التشفير الأكثر صرامة.
الجزء 4 - تفعيل التوجيه وNAT
يجب تفعيل خاصية إعادة التوجيه وتكوين NAT لتمرير حركة مرور العميل إلى الإنترنت.
تفعيل إعادة توجيه IPv4 مؤقتًا:
sudo sysctl -w net.ipv4.ip_forward=1لجعله دائمًا:
echo "net.ipv4.ip_forward=1" | sudo tee /etc/sysctl.d/99-openvpn.conf
sudo sysctl --systemإضافة قاعدة NAT باستخدام iptables (بافتراض أن واجهة الإخراج هي eth0):
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADEلجعل القواعد دائمة، استخدم iptables-persistent أو netfilter-persistent:
sudo apt install -y iptables-persistent
sudo netfilter-persistent saveإذا من جداول نفتابلز يمكنك تعريف ما يعادل NAT في nft.
إعدادات جدار الحماية (في حال تفعيلها)
إذا من عمال المناجم غير المتعاقدين قبل تفعيل NAT، استخدم الملف /etc/ufw/before.rules قم بتحرير قسم NAT وأضفه. مثال قصير:
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
COMMITثم في /etc/default/ufw كمية إعادة توجيه IPv4 ل "“نعم”أو استخدم sysctl. ثم افتح منفذ OpenVPN وقم بتمكين ufw:
sudo ufw allow 1194/udp
sudo ufw enableالجزء 5 - إعداد خدمة OpenVPN
قم بتشغيل الخدمة وتفعيلها (قد يختلف اسم الخدمة حسب التوزيعة):
sudo systemctl start [email protected]
sudo systemctl enable [email protected]للتحقق من الحالة والسجل:
sudo systemctl status openvpn-server@server
journalctl -u openvpn-server@server -fالجزء 6 - إنشاء ملف عميل (.ovpn) باستخدام شهادة مضمنة
لتسهيل عملية التوزيع، أنشئ ملفًا بامتداد .ovpn يتضمن جميع الشهادة/المفتاح يتم تضمينها داخلها. استبدل المثال التالي بناءً على القيم المُولَّدة:
client
dev tun
proto udp
remote YOUR_SERVER_IP 1194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
cipher AES-256-GCM
auth SHA256
verb 3
<ca>
-----BEGIN CERTIFICATE-----
(محتوای ca.crt)
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
(محتوای client1.crt)
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
(محتوای client1.key)
-----END PRIVATE KEY-----
</key>
<tls-crypt>
-----BEGIN OpenVPN Static key V1-----
(محتوای ta.key)
-----END OpenVPN Static key V1-----
</tls-crypt>انقل هذا الملف إلى أجهزة الكمبيوتر التي تعمل بنظام Windows أو Mac أو Linux. على نظام Linux، يمكنك استخدام NetworkManager أو الأمر openvpn --config client.ovpn يستخدم.
القسم 7 - إدارة المستخدمين، وإلغاء الشهادات، والأمان
تشمل إدارة المستخدمين وأمنهم ما يلي:
- إضافة مستخدم جديد: قم بإنشاء المفتاح والتوقيع مثل العميل 1.
- إلغاء الشهادة (إلغاء): ./easyrsa revoke client1 && ./easyrsa gen-crl ثم انسخ crl.pem إلى /etc/openvpn/crl.pem وأعد تحميل الخادم.
- الاستخدام المشترك للشهادات ومصادقة المستخدم وكلمة المرور: يمكنك استخدام PAM أو RADIUS وإضافة OTP/2FA لمزيد من الأمان.
- فشل2بان: التثبيت والتكوين لمراقبة السجلات ومنع محاولات الاختراق.
- إدارة السجلات: قلل مستويات التسجيل في بيئة الإنتاج واستخدم أداة logrotate للحفاظ على ملفات السجل.
sudo apt install -y fail2ban
# create a custom jail for openvpn as neededالقسم 8 - نصائح فنية وتحسين التطبيقات
بعض الاقتراحات العملية لسيناريوهات مختلفة:
للتداول/الفوركس والعملات الرقمية
- اختر موقعًا قريبًا من البورصات أو خوادم التداول لتقليل زمن الاستجابة (على سبيل المثال لندن، فرانكفورت، نيويورك، طوكيو).
- استخدم خادمًا افتراضيًا خاصًا مخصصًا للتداول مع زمن استجابة منخفض، وموارد مخصصة، وخادم مضاد لهجمات DDoS.
- استخدم بروتوكول UDP وقم بتعيين MTU المناسب (على سبيل المثال tun-mtu 1500 أو أقل) لمنع التجزئة.
للألعاب
- اختر موقعًا بأقل زمن استجابة (ping) واستخدم خوادم افتراضية خاصة (VPS) أو خوادم عالية السرعة مع شبكة سريعة.
- اختبار A/B لمعرفة ما إذا كانت شبكة VPN تعمل بالفعل على تحسين التوجيه وتقليل زمن الاستجابة (ping).
للذكاء الاصطناعي والعرض ثلاثي الأبعاد
- بالنسبة لعمليات نقل البيانات الكبيرة، من الأفضل استخدام الشبكات الخاصة السحابية (VPCs) أو شبكات VPN على مستوى الشبكة مع بروتوكول BGP.
- استخدم خوادم مزودة بشبكة بسرعة 10 جيجابت في الثانية للاتصال بخادم وحدة معالجة الرسومات.
القسم 9 - مقارنة المواقع والبنية التحتية
مثال على الفوائد حسب المنطقة:
- أوروبا (فرانكفورت، لندن، أمستردام): مناسب للمتداولين الأوروبيين وذو زمن استجابة منخفض للبورصات.
- أمريكا (نيويورك، نيوجيرسي، ميامي): مناسب لأسواق أمريكا الشمالية والأحمال الحساسة للتأخير.
- آسيا (طوكيو، سنغافورة، سيول): مناسب لأسواق منطقة آسيا والمحيط الهادئ وخدمات الألعاب والذكاء الاصطناعي في المنطقة.
شركتنا لديها أكثر من 85 موقعًا عالميًايوفر هذا النظام شبكات BGP وCDN، والتي يمكن أن تكون فعالة في تقليل زمن الوصول، وزيادة الاستقرار، ومنع هجمات DDoS.
القسم 10 - المراقبة والصيانة
نصائح حول الصيانة وقابلية التوسع:
- مراقبة OpenVPN باستخدام Prometheus/Grafana أو Zabbix (باستخدام المصدرين أو تحليل السجلات).
- الصيانة الدورية لقائمة إبطال الشهادات (CRL) وفحص سجلات الاتصال.
- بالنسبة لعدد كبير من العملاء، استخدم موازن الأحمال وخوادم OpenVPN متعددة مع خاصية التوافر العالي وشهادة المرجع المصدق المشتركة.
استكشاف الأخطاء وإصلاحها بسرعة
- تحقق من السجل:
sudo journalctl -u openvpn-server@server -e - فحص النفق:
ip a show tun0 - فحص الميناء:
sudo ss -ulpn | grep 1194 - اختبار NAT: من عميل VPN، قم بإجراء اختبار ping لـ 8.8.8.8 وعنوان IP العام للخادم.
ملخص وتوصيات أمنية
التوصيات الرئيسية:
- استخدم دائمًا بروتوكول TLS (tls-crypt) وهيئة إصدار شهادات قوية.
- استخدم تشفيرًا قويًا (AES-256-GCM) و TLS 1.2 على الأقل.
- قم بتنفيذ إجراء إلغاء وإلغاء قائمة الشهادات لإزالة الوصول في حالة حدوث تسريب للمفتاح.
- استخدم برنامج fail2ban وقواعد تحديد معدل الطلبات في جدار الحماية الخاص بك.
- لا تنسَ مراقبة السجلات ومراجعتها دوريًا.
مزايا البنية التحتية والمواقع المتاحة
يُتيح استخدام بنية تحتية جاهزة في مواقع متعددة مزايا عديدة، منها تقليل زمن الاستجابة (ping)، وزيادة الاستقرار، والحماية من هجمات DDoS. كما تُقدم خيارات متخصصة، مثل خوادم VPS للتجارة، وخوادم الألعاب، وخوادم GPU، وخوادم الحماية من هجمات DDoS.









