لقد وجدت أسهل طريقة لتثبيت WireGuard وإدارته على أي مضيف Linux!
للحصول على النسخة المستقرة يرجى قراءة التعليمات الموجودة على فرع الإنتاج !
نحن نقدم أكثر من علامة واحدة لصورة عامل الإرساء، وسيساعدك ما يلي في تحديد أي منها يناسبك بشكل أفضل.
علامة | فرع | مثال | وصف |
---|---|---|---|
latest | production | ghcr.io/wg-easy/wg-easy:latest أو ghcr.io/wg-easy/wg-easy | مستقرة قدر الإمكان، والحصول على إصلاحات الأخطاء بسرعة عند الحاجة، ونشرها ضد production . |
14 | production | ghcr.io/wg-easy/wg-easy:14 | نفس الأحدث، التزم بعلامة الإصدار. |
nightly | master | ghcr.io/wg-easy/wg-easy:nightly | يحصل غير المستقر في الغالب على تحديثات متكررة للحزمة والتعليمات البرمجية، ويتم نشرها ضد master . |
development | طلبات السحب | ghcr.io/wg-easy/wg-easy:development | يستخدم للتطوير واختبار التعليمات البرمجية من العلاقات العامة قبل الهبوط في master . |
إذا لم تكن قد قمت بتثبيت Docker بعد، فقم بتثبيته عن طريق تشغيل:
curl -sSL https://get.docker.com | sh
sudo usermod -aG docker $( whoami )
exit
وقم بتسجيل الدخول مرة أخرى.
لتثبيت wg-easy وتشغيله تلقائيًا، ما عليك سوى تشغيل:
docker run --detach
--name wg-easy
--env LANG=de
--env WG_HOST= < YOUR_SERVER_IP >
--env PASSWORD_HASH= ' <YOUR_ADMIN_PASSWORD_HASH> '
--env PORT=51821
--env WG_PORT=51820
--volume ~ /.wg-easy:/etc/wireguard
--publish 51820:51820/udp
--publish 51821:51821/tcp
--cap-add NET_ADMIN
--cap-add SYS_MODULE
--sysctl ' net.ipv4.conf.all.src_valid_mark=1 '
--sysctl ' net.ipv4.ip_forward=1 '
--restart unless-stopped
ghcr.io/wg-easy/wg-easy
استبدل
<YOUR_SERVER_IP>
بـ WAN IP الخاص بك، أو اسم مضيف DNS الديناميكي.استبدل
<YOUR_ADMIN_PASSWORD_HASH>
بتجزئة كلمة مرور bcrypt لتسجيل الدخول إلى واجهة مستخدم الويب. راجع How_to_generate_an_bcrypt_hash.md للحصول على إرشادات حول كيفية إنشاء كلمة مرور مجزأة.
ستكون واجهة مستخدم الويب متاحة الآن على http://0.0.0.0:51821
.
ستكون مقاييس Prometheus متاحة الآن على http://0.0.0.0:51821/metrics
. لوحة القيادة جرافانا 21733
سيتم حفظ ملفات التكوين الخاصة بك في
~/.wg-easy
يمكن إطلاق WireGuard Easy مع Docker Compose أيضًا - ما عليك سوى تنزيل docker-compose.yml
وإجراء التعديلات اللازمة وتنفيذ docker compose up --detach
.
هل تستمتع بهذا المشروع؟ شراء إميل بيرة! ؟
التبرع للمكون الأساسي: WireGuard
يمكن تكوين هذه الخيارات عن طريق تعيين متغيرات البيئة باستخدام -e KEY="VALUE"
في أمر docker run
.
البيئة | تقصير | مثال | وصف |
---|---|---|---|
PORT | 51821 | 6789 | منفذ TCP لواجهة مستخدم الويب. |
WEBUI_HOST | 0.0.0.0 | localhost | ترتبط واجهة مستخدم الويب بعنوان IP بـ. |
PASSWORD_HASH | - | $2y$05$Ci... | عند التعيين، يتطلب كلمة مرور عند تسجيل الدخول إلى واجهة مستخدم الويب. راجع كيفية إنشاء bcrypt hash.md لمعرفة كيفية إنشاء التجزئة. |
WG_HOST | - | vpn.myserver.com | اسم المضيف العام لخادم VPN الخاص بك. |
WG_DEVICE | eth0 | ens6f0 | جهاز Ethernet يجب إعادة توجيه حركة مرور Wireguard من خلاله. |
WG_PORT | 51820 | 12345 | منفذ UDP العام لخادم VPN الخاص بك. سوف يستمع WireGuard إلى ذلك (وإلا الافتراضي) داخل حاوية Docker. |
WG_CONFIG_PORT | 51820 | 12345 | منفذ UDP المستخدم في Home Assistant Plugin |
WG_MTU | null | 1420 | وحدة MTU التي سيستخدمها العملاء. يستخدم الخادم WG MTU الافتراضي. |
WG_PERSISTENT_KEEPALIVE | 0 | 25 | القيمة بالثواني لإبقاء "الاتصال" مفتوحًا. إذا كانت هذه القيمة 0، فلن يتم الاحتفاظ بالاتصالات على قيد الحياة. |
WG_DEFAULT_ADDRESS | 10.8.0.x | 10.6.0.x | نطاق عناوين IP للعملاء. |
WG_DEFAULT_DNS | 1.1.1.1 | 8.8.8.8, 8.8.4.4 | سيستخدمها عملاء خادم DNS. إذا تم التعيين على قيمة فارغة، فلن يستخدم العملاء أي DNS. |
WG_ALLOWED_IPS | 0.0.0.0/0, ::/0 | 192.168.15.0/24, 10.0.1.0/24 | سيستخدمها عملاء IPs المسموح بهم. |
WG_PRE_UP | ... | - | راجع config.js لمعرفة القيمة الافتراضية. |
WG_POST_UP | ... | iptables ... | راجع config.js لمعرفة القيمة الافتراضية. |
WG_PRE_DOWN | ... | - | راجع config.js لمعرفة القيمة الافتراضية. |
WG_POST_DOWN | ... | iptables ... | راجع config.js لمعرفة القيمة الافتراضية. |
WG_ENABLE_EXPIRES_TIME | false | true | تمكين وقت انتهاء الصلاحية للعملاء |
LANG | en | de | لغة واجهة المستخدم على الويب (تدعم: en، ua، ru، tr، no، pl، fr، de، ca، es، ko، vi، nl، is، pt، chs، cht، it، th، hi، ja، si) . |
UI_TRAFFIC_STATS | false | true | تمكين إحصائيات عميل RX / TX التفصيلية في واجهة مستخدم الويب |
UI_CHART_TYPE | 0 | 1 | UI_CHART_TYPE=0 # تم تعطيل المخططات، UI_CHART_TYPE=1 # مخطط خطي، UI_CHART_TYPE=2 # مخطط مساحي، UI_CHART_TYPE=3 # مخطط شريطي |
WG_ENABLE_ONE_TIME_LINKS | false | true | تمكين عرض وإنشاء روابط التنزيل القصيرة لمرة واحدة (تنتهي صلاحيتها بعد 5 دقائق) |
MAX_AGE | 0 | 1440 | الحد الأقصى لعمر جلسات واجهة مستخدم الويب بالدقائق. 0 يعني أن الجلسة ستكون موجودة حتى يتم إغلاق المتصفح. |
UI_ENABLE_SORT_CLIENTS | false | true | تمكين عملاء فرز واجهة المستخدم حسب الاسم |
ENABLE_PROMETHEUS_METRICS | false | true | تمكين مقاييس بروميثيوس http://0.0.0.0:51821/metrics و http://0.0.0.0:51821/metrics/json |
PROMETHEUS_METRICS_PASSWORD | - | $2y$05$Ci... | في حالة التعيين، تكون المصادقة الأساسية مطلوبة عند طلب المقاييس. راجع كيفية إنشاء bcrypt hash.md لمعرفة كيفية إنشاء التجزئة. |
إذا قمت بتغيير
WG_PORT
، فتأكد من تغيير المنفذ المكشوف أيضًا.
للتحديث إلى الإصدار الأحدث، ما عليك سوى تشغيل:
docker stop wg-easy
docker rm wg-easy
docker pull ghcr.io/wg-easy/wg-easy
ثم قم بتشغيل الأمر docker run -d ...
أعلاه مرة أخرى.
باستخدام Docker Compose WireGuard Easy، يمكن تحديثه بأمر واحد: docker compose up --detach --pull always
(إذا تم تحديد علامة صورة في ملف Compose ولم تكن latest
، فتأكد من تغييرها إلى العلامة المطلوبة ؛ بشكل افتراضي يتم حذفه ويتم تعيينه على latest
).
سيتم إعادة إنشاء حاوية WireGuared Easy تلقائيًا إذا تم سحب صورة أحدث.
بالنسبة لسيناريوهات حالة الحافة الأقل شيوعًا أو المحددة، يرجى الرجوع إلى المعلومات التفصيلية المتوفرة في Wiki.