WireGuard או OpenVPN: במה לבחור לשרת VPN עצמאי?
WireGuard מהיר יותר, קצר יותר להגדרה ובעל משטח ביקורת קטן יותר. גלו את 4 המקרים שבהם OpenVPN עדיין עדיף, כולל TCP 443, סיסמה וגישור שכבה 2.
התשובה הקצרה
WireGuard לעומת OpenVPN, עבור אדם אחד שמפעיל שרת VPN ב-VPS שלו, אינו תחרות צמודה: בחרו ב-WireGuard. הוא קטן יותר, פועל בתוך ליבת Linux, מתחבר בתוך שבריר שנייה, ותצורת לקוח תקינה כוללת כ-10 שורות. ל-OpenVPN נותרו 4 שימושים ממשיים. אם אף אחד מהם אינו רלוונטי לכם, אינכם זקוקים לו.
השימושים האלה הם יציאה מרשת שמאפשרת רק את יציאת TCP 443, התחברות אל רשות אישורים קיימת, אימות משתמשים מזוהים באמצעות סיסמה או גורם אימות נוסף, וגישור בשכבה 2. כל מה שמופיע בהמשך הוא הראיות להמלצה הזאת, והנקודה המדויקת שבה כל חריג מתחיל להיות רלוונטי עבורכם.
מדוע WireGuard נבחר על ידי מפעילי שרתים עצמאיים
קל מספיק לקרוא את קוד המקור. פרויקט WireGuard כולל את מימוש הפרוטוקול בכ-4,000 שורות קוד. OpenVPN מגיע למאות אלפי שורות אם סופרים גם את ספריית OpenSSL, שעליה הוא מסתמך עבור כל פעולה קריפטוגרפית. לגודל יש חשיבות, משום שכל שורת קוד היא חלק ממשטח התקיפה, ולא אתה ולא הבודק שלך תקראו 100,000 שורות. 4,000 שורות אפשר לקרוא.
הוא פועל בליבה. WireGuard נמצא בליבת Linux הראשית מאז 5.6, ולכן Ubuntu 24.04 ו-Debian 13 כוללות אותו ללא צורך בהידור. החבילות מוצפנות במקום שבו הן כבר נמצאות — במרחב הליבה — בלי להעתיק אותן לתהליך במרחב המשתמש ובחזרה. בדוק זאת לפני כל דבר אחר:
sudo modprobe wireguard && echo okב-VPS המבוסס על KVM הפקודה מציגה ok. בווירטואליזציה של מכולות המשתפת את ליבת המארח, כגון OpenVZ או LXC, היא נכשלת ומציגה Operation not supported, משום שאי-אפשר לטעון מודול לליבה שאינה שלך.
אין דבר שיש לנהל עליו משא ומתן. ל-WireGuard יש חבילת צופן קבועה אחת: ChaCha20-Poly1305 עבור הנתונים, עם מפתחות Curve25519. אין גרסה שאפשר להוריד אליה ואין אפשרות שאפשר להגדיר באופן שגוי. OpenVPN מנהל משא ומתן עם כל לקוח על הצופן ועל גרסת TLS (אבטחת שכבת התעבורה). זו גמישות, אך גם המקום שבו מתרחשות טעויות תצורה. שרת שנשאר עם data-ciphers AES-256-GCM:AES-128-CBC יחזור ללא בעיה לצופן CBC עבור לקוח שאינו מציע אפשרות טובה יותר, ושום דבר ביומן לא יציין זאת כבעיה.
הפורט אינו משיב. חבילת WireGuard שנכשלת בבדיקת אימות ההודעה מושלכת ללא תשובה כלשהי, ולכן nmap -sU -p 51820 מחזיר open|filtered, בין אם משהו מאזין ובין אם לא. שרת OpenVPN במצב TCP משלים את לחיצת היד של TCP לפני שהוא מחליט שאינך מורשה להתחבר. די בכך כדי להוכיח לסורק שמשהו קיים. OpenVPN מעל UDP עם tls-crypt שקט כמעט באותה מידה, ולכן זו טענה נגד הפעלת OpenVPN על TCP, ולא נגד OpenVPN עצמו.
נדידה אינה כרוכה בעלות. עמית ב-WireGuard מזוהה לפי המפתח הציבורי שלו, ולא לפי הכתובת שלו. המחשב הנייד שלך עובר מהרשת הביתית לנקודה חמה סלולרית, שולח לחיצת יד אחת מהכתובת החדשה, והשרת מעדכן את נקודת הקצה שאליה הוא משיב. שום דבר אינו מתחבר מחדש, משום ששום דבר לא היה מחובר מלכתחילה. OpenVPN יכול לבצע פעולה דומה באמצעות float, אך בדרך כלל הלקוח מפרק ובונה מחדש הפעלת TLS מלאה. לכן ההשהיה בעת פתיחת המכסה מורגשת ב-OpenVPN ואינה מורגשת ב-WireGuard.
מהירות ב-2026: הפער הצטמצם
במשך שנים הטיעון המרכזי בנוגע למהירות היה ש-OpenVPN העתיק כל מנה אל מרחב המשתמש, הצפין אותה שם, ולאחר מכן העתיק אותה בחזרה, בעוד ש-WireGuard מעולם לא יצא מהליבה. זו כבר אינה התמונה המלאה, והשוואה שמתעלמת מכך אינה מעודכנת.
OpenVPN 2.7 שוחרר בפברואר 2026 עם תמיכה במודול הליבה ovpn, שמוזג אל Linux 6.16. מדובר ב-DCO (העברת ערוץ הנתונים לעומס בליבה): ערוץ הבקרה נשאר במרחב המשתמש, ונתיב הנתונים העיקרי עובר אל הליבה. זה דומה בקירוב לאופן שבו WireGuard פועל מאז ומתמיד. במערכת עם ליבה ועם OpenVPN חדשים מספיק כדי להשתמש בכך, התפוקה נמצאת באותה קטגוריה, ולא בקטגוריה שונה לחלוטין. בדקו מה מותקן אצלכם בפועל:
uname -r
openvpn --version | head -n 1
modinfo ovpn 2>/dev/null | head -n 3נכון ליולי 2026, Ubuntu 24.04 LTS רגיל כולל OpenVPN 2.6, ולא 2.7, והמודול ovpn דורש את גרסה 2.7. בגרסה זו ניתן להשתמש בהעברת עומס רק באמצעות החבילה הישנה יותר openvpn-dco-dkms, שבונה מודול מחוץ לעץ מול הליבה הפעילה שלכם, ולכן נבנית מחדש בכל שדרוג של הליבה. זהו רכיב משתנה שאין ל-WireGuard.
קראו את הפרטים הקטנים על DCO לפני שתחשיבו אותו לסיבה להישאר. הוא תומך במנהרות Layer 3 בלבד, מקבל רק צפני AEAD (הצפנה מאומתת עם נתונים משויכים: AES-GCM או ChaCha20-Poly1305), אינו תומך בדחיסה, ובשרת הוא פועל רק עם topology subnet. כל אחת מהמגבלות האלה מסירה חלק מהגמישות שהייתה מלכתחילה הטיעון המרכזי בעד OpenVPN. OpenVPN מהיר הוא OpenVPN שהוגדר כך שייראה כמו WireGuard.
אל תסמכו על נתון תפוקה שפורסם, כולל הנתון שבעמוד זה. ב-VPS, התקרה נקבעת בדרך כלל לפי הקצאת המעבד או הקצאת הרשת, ולא לפי הפרוטוקול. מדדו את המערכת שלכם באמצעות iperf3 כשהוא פועל דרך המנהרה, ולאחר מכן שוב מחוץ לה, והשוו בין שתי התוצאות.
מתי OpenVPN עדיין מצדיק את השימוש בו
עליכם לצאת דרך TCP בפורט 443. WireGuard פועל ב-UDP בלבד, בכוונה, ולא צפוי להתווסף אליו מצב TCP. רשת של מלון או proxy ארגוני שמאפשרים רק TCP 443 יעבירו OpenVPN שהוגדר באמצעות proto tcp-server ו-port 443, משום שהתעבורה הזו נראית כמו הפעלת TLS רגילה. כדי לעבור באותה רשת, WireGuard זקוק לעטיפה כגון wstunnel או udp2raw. פירוש הדבר הוא תהליך נוסף שיש להפעיל ולתחזק עם עדכוני אבטחה. שימו לב להתנגשות: אם שרת web כבר תופס את TCP 443 בכתובת ה-IP הזו, אחד משני השירותים חייב לעבור לפורט אחר.
אתם כבר מפעילים רשות אישורים. OpenVPN מאמת באמצעות אישורי X.509, ולכן הוא משתלב ב-PKI (תשתית מפתחות ציבוריים) שאתם כבר מפעילים. אישורים פוקעים באופן עצמאי, וניתן לבטל אישור על ידי הוספתו לרשימת ביטול אישורים שהשרת קורא באמצעות crl-verify. ל-WireGuard אין אישורים, אין פקיעה ואין רשימת ביטול אישורים. הסרת עמית מחייבת עריכה של תצורת השרת וטעינה מחדש שלה. עבור 10 עמיתים, הדבר תקין. עבור 400 עמיתים, כאשר קיימת דרישת ביקורת, מודל האישורים מספק לכם תועלת ממשית.
אתם זקוקים למשתמשים בעלי שמות, ולא למפתחות בלבד. OpenVPN יכול להעביר את האימות למערכת חיצונית באמצעות auth-user-pass-verify או באמצעות תוסף כגון openvpn-plugin-auth-pam.so. כך ניתן להוסיף LDAP או גורם אימות שני המבוסס על סיסמה חד-פעמית. ל-WireGuard אין כלל מושג של משתמש. מפתח נמצא בתצורה או שאינו נמצא בה. אם הדרישה שלכם היא ש-"Sara חייבת להזין קוד מהטלפון שלה", WireGuard אינו יכול לבטא זאת בעצמו.
אתם זקוקים ל-Layer 2, או ללקוח עבור מערכת ישנה במיוחד. OpenVPN עם dev tap מגשר על מסגרות Ethernet. הדבר חשוב עבור פרוטוקולים המשתמשים בשידור ובשביל משחקי LAN ישנים. WireGuard פועל ב-Layer 3 בלבד, וכך יישאר. ל-OpenVPN יש גם לקוחות בחומרה ובמערכות הפעלה שלעולם לא יופיע בהן יישום WireGuard. שתי הסיבות האלה הולכות ומצטמצמות, ו-dev tap אינו תואם ל-DCO. לכן, בעת בחירה בגישור, אתם משתמשים במסלול האיטי.
העלות בפועל של שתי התצורות
זהות של WireGuard נוצרת באמצעות פקודה אחת. הסוגריים חשובים, משום שהם מגדירים את הרשאות הקובץ לפני יצירת המפתח:
(umask 077; wg genkey > private.key)
wg pubkey < private.key > public.keyהמקבילה ב-OpenVPN היא רשות אישורים (CA) שעכשיו נמצאת באחריותכם כל עוד ה-VPN קיים:
sudo apt install -y easy-rsa
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
./easyrsa init-pki
./easyrsa build-ca
./easyrsa gen-req server nopass
./easyrsa sign-req server serverאף אחת מהרשימות אינה מוטה. ה-CA מספק תוקף וביטול אישורים, אך מחייב אתכם להגן על מפתח פרטי במשך שנים, לזכור לחדש את האישור ולבנות מחדש את המערכת אם תאבדו אותו. אם אינכם משתמשים במה שהוא מספק, אתם משלמים ללא תמורה. ההליך המלא של WireGuard, כולל העברת מנות, NAT (תרגום כתובות רשת) וכשלי handshake שמבזבזים אחר צהריים שלם, מופיע במדריך לאירוח עצמי של VPN מסוג WireGuard ב-VPS שלכם.
מה כל אחד מהם דורש מחומת האש שלך
WireGuard זקוק לכלל נכנס אחד בדיוק, עבור UDP בפורט שמופיע ב-ListenPort:
sudo ufw allow 51820/udp
sudo ufw status verboseOpenVPN זקוק כברירת מחדל ל-UDP 1194, או ל-TCP 443 אם בחרת באפשרות זו. לאחר מכן, בשני המקרים יש להפעיל העברת IP ולהגדיר כלל NAT מקור, משום שמערכת Linux משליכה מנות שאינן מיועדות אליה. חלק זה זהה בשני הפרוטוקולים, והוא המקור לרוב הדיווחים מסוג "המנהרה מתחברת, אך אין אינטרנט". אם ufw חדש לך, התחל ביסודות חומת האש ufw ב-VPS, וזכור שרוב הספקים מפעילים חומת אש נוספת ברשת, בלוח הבקרה שלהם: כלל שהוספת בשרת לא ישפיע אם המנה לא מגיעה כלל לשרת. הבנת מהו פורט וכיצד Linux מאזינה בו הופכת את שתי הבדיקות האלה למהירות יותר.
כיצד לבחור, בפסקה אחת
הפעילו את WireGuard, אלא אם כן אתם יכולים לציין את הצורך הספציפי שהוא אינו יכול למלא עבורכם. אם אתם זקוקים ל-TCP 443 כדי לעבור דרך רשת מגבילה, הפעילו שם את OpenVPN, ושקלו להפעיל את שניהם: הם משתמשים ביציאות שונות ויכולים לפעול יחד באותו שרת ללא התנגשות. אם אתם זקוקים לחשבונות משתמש נפרדים או לאימות דו-שלבי, אל תנסו לכפות זאת על WireGuard. במקום זאת, הוסיפו מעליו שכבת זהויות. שרת בקרה עצמאי של Headscale משתמש ב-WireGuard מתחת לפני השטח ומוסיף את מודל החשבונות, הפצת המפתחות ואישור ההתקנים ש-WireGuard ללא תוספות משאיר לכם.
מעבר מ-OpenVPN ללא השבתה
אין המרה ישירה. ה-PKI של OpenVPN אינו הופך למפתחות WireGuard, משום של-WireGuard אין תעודות שאפשר להמיר. כל לקוח מקבל זוג מפתחות חדש, שנוצר באותה דרך כמו זוג המפתחות של השרת.
בצעו את המעבר במקביל במקום להחליף מערכת בבת אחת. WireGuard ב-UDP 51820 ו-OpenVPN ב-1194 יכולים לפעול באותו מחשב באותו זמן. לכן הפעילו את wg0, ודאו את פעולתו באמצעות sudo wg show שמציג רשומת latest handshake עדכנית, ולאחר מכן העבירו את הלקוחות בזה אחר זה. כאשר רשימת העמיתים של OpenVPN מפסיקה להשתנות, עצרו את השירות באמצעות sudo systemctl disable --now openvpn-server@server. שמרו את קובצי ה-CA עד שתהיו בטוחים שהמעבר הושלם, משום שאי אפשר לשחזר לקוח שבוטל באמצעות CA שמחקתם.
פרט אחד אינו עובר בין המערכות: חשבונות המשתמשים והסיסמאות שלכם, וכן נתיב הביטול שהיה קשור אליהם. קבעו היכן הנתונים האלה יישמרו לפני שתכבו את השרת הישן, ולא לאחר מכן.
FAQ
האם WireGuard מהיר יותר מ־OpenVPN?
בשרת Ubuntu 24.04 בתצורת ברירת המחדל, כן, ובהפרש ניכר, מכיוון ש־WireGuard מצפין בתוך הליבה, ואילו OpenVPN 2.6 מעביר כל מנה דרך תהליך במרחב המשתמש. ב־OpenVPN 2.7, עם מודול הליבה ovpn מ־Linux 6.16, נתיב הנתונים נמצא גם הוא בליבה, ושני הפתרונות נמצאים באותה קטגוריית ביצועים. מדדו את הביצועים אצלכם באמצעות iperf3 דרך המנהרה, במקום להסתמך על נתון מבלוג, מכיוון שב־VPS המגבלה היא בדרך כלל המעבד או מכסת רוחב הפס.
האם WireGuard יכול לפעול דרך יציאת TCP 443?
לא באופן עצמאי. WireGuard תומך ב־UDP בלבד לפי התכנון, ולא מתוכנן עבורו מצב TCP. כדי לעבור דרך רשת שמאפשרת רק TCP 443, עוטפים אותו במנהרה כגון wstunnel או udp2raw. פעולה זו מוסיפה תהליך שיש להפעיל ולעדכן בשני הקצוות. אם זו סביבת העבודה הרגילה שלכם, OpenVPN עם proto tcp-server ו־port 443 הוא הפתרון הפשוט יותר.
האם OpenVPN אינו מאובטח כעת?
לא. OpenVPN עדכני, עם צופן AEAD כגון AES-256-GCM ועם tls-crypt מופעל, הוא פתרון VPN מאובטח. הטיעון לטובת WireGuard מבוסס על דבר אחר: OpenVPN כולל הרבה יותר קוד והרבה יותר אפשרויות, ולכן הוא מציב בפני מנהל מערכת עייף דרכים רבות יותר להגדיר אותו באופן שגוי. פחות אפשרויות פירושן פחות אפשרויות לשגיאות.
במה לבחור עבור VPN אישי ב־VPS?
WireGuard. זוג מפתחות אחד לכל התקן, קובץ תצורה אחד שאורכו כ־10 שורות, יציאת UDP אחת פתוחה ולחיצת יד שמסתיימת לפני ששמים לב שהיא התחילה. בחרו ב־OpenVPN רק אם אתם מתחברים באופן קבוע מרשתות שחוסמות UDP, או אם עליכם להשתלב ברשות אישורים או בספריית משתמשים שכבר קיימות.