คุณพบวิธีที่ง่ายที่สุดในการติดตั้งและจัดการ WireGuard บนโฮสต์ Linux!
สำหรับเวอร์ชัน เสถียร โปรดอ่านคำแนะนำในสาขา การผลิต !
เรามีแท็กรูปภาพนักเทียบท่ามากกว่า 1 แท็ก ข้อมูลต่อไปนี้จะช่วยคุณตัดสินใจว่าแท็กใดที่เหมาะกับคุณที่สุด
แท็ก | สาขา | ตัวอย่าง | คำอธิบาย |
---|---|---|---|
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 | ใช้สำหรับการพัฒนา ทดสอบโค้ดจาก PRs ก่อนลงสู่ 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 เพื่อเข้าสู่ระบบบนเว็บ UI ดูHow_to_generate_an_bcrypt_hash.mdสำหรับคำแนะนำเกี่ยวกับวิธีสร้างรหัสผ่านที่แฮช
ขณะนี้ Web UI จะพร้อมใช้งานบน 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 สำหรับ Web UI |
WEBUI_HOST | 0.0.0.0 | localhost | UI เว็บที่อยู่ IP เชื่อมโยงกับ |
PASSWORD_HASH | - | $2y$05$Ci... | เมื่อตั้งค่าแล้ว ต้องใช้รหัสผ่านเมื่อเข้าสู่ระบบ Web UI ดูวิธีสร้าง bcrypt hash.md เพื่อทราบวิธีสร้างแฮช |
WG_HOST | - | vpn.myserver.com | ชื่อโฮสต์สาธารณะของเซิร์ฟเวอร์ VPN ของคุณ |
WG_DEVICE | eth0 | ens6f0 | อุปกรณ์อีเทอร์เน็ตที่ทราฟฟิก wireguard ควรส่งต่อผ่าน |
WG_PORT | 51820 | 12345 | พอร์ต UDP สาธารณะของเซิร์ฟเวอร์ VPN ของคุณ WireGuard จะรับฟังสิ่งนั้น (มิฉะนั้นจะเป็นค่าเริ่มต้น) ภายในคอนเทนเนอร์ Docker |
WG_CONFIG_PORT | 51820 | 12345 | พอร์ต UDP ที่ใช้กับปลั๊กอิน Home Assistant |
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 | ไคลเอ็นต์ IP ที่ได้รับอนุญาตจะใช้ |
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 | ภาษาเว็บ UI (รองรับ: 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 โดยละเอียดใน Web UI |
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 | อายุสูงสุดของเซสชัน Web UI ในหน่วยนาที 0 หมายความว่าเซสชันจะคงอยู่จนกว่าเบราว์เซอร์จะปิด |
UI_ENABLE_SORT_CLIENTS | false | true | เปิดใช้งานไคลเอ็นต์การเรียงลำดับ UI ตามชื่อ |
ENABLE_PROMETHEUS_METRICS | false | true | เปิดใช้งานตัวชี้วัด Prometheus 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 จะถูกสร้างขึ้นใหม่โดยอัตโนมัติหากมีการดึงอิมเมจที่ใหม่กว่า
สำหรับสถานการณ์ Edge-case ที่พบไม่บ่อยหรือเฉพาะเจาะจง โปรดดูข้อมูลโดยละเอียดที่ให้ไว้ใน Wiki