כיום, טכנולוגיות VPN ופרוקסי מבוקשות יותר ויותר. משתמשים משתמשים בהן לגישה מאובטחת לאינטרנט, עקיפת צנזורה והגנה מפני איומים חיצוניים. כשאתה מתחבר לשרת כזה, כל התעבורה שלך עוברת דרך מנהרה מוצפנת, והשרת הופך לשער הכניסה שלך לרשת.
פרוטוקולים קלאסיים כמו OpenVPN או WireGuard מתפקדים היטב בתנאים יציבים, אך לעיתים קרובות סובלים מירידות מהירות בחיבורים גרועים עם אובדן חבילות גבוה (רשתות סלולריות, Wi-Fi ציבורי, מדינות עם צנזורה מחמירה). כאן נכנסים לתמונה פרוטוקולים מודרניים כמו Hysteria2 ו-TUIC. הם בנויים על גבי QUIC, ומציעים מהירות גבוהה, השהייה נמוכה וטשטוש תנועה יעיל כמו HTTPS רגיל (HTTP/3).
Hysteria2 משתמש באלגוריתם "Brutal", אשר מנצל באופן אגרסיבי את רוחב הפס הזמין. TUIC (גרסה 5) מאופיין בתקורה מינימלית, תמיכה מצוינת ב-UDP ויצירת חיבור 0-RTT.
במאמר זה, נסקור את תהליך הגדרת השרת באובונטו/דביאן ואת תהליך ההתחברות מ-Windows.
מה תצטרכו: VPS עם מערכת הפעלה Ubuntu 22.04/24.04 או Debian 12, גישת root וכתובת IP של השרת. אין צורך בדומיין.
מתחבר לשרת
Windows (PuTTY): פתחו את PuTTY, הזינו את YOUR_SERVER_IP כמארח, 22 כפורט, והתחברו כ-root עם הסיסמה מהאימייל של ספק ה-VPS שלכם.
לינוקס/מקוס (טרמינל):
ssh root@YOUR_SERVER_IP
כל הפקודות שלהלן מופעלות בשרת, באותו סשן.
הכנת שרת (אובונטו / דביאן)
הפעל העברת IP
זה מאפשר לשרת להעביר חבילות של הלקוח הלאה לאינטרנט.
nano /etc/sysctl.conf
הזן או צור סיסמה (השתמש באותיות ומספרים באנגלית בלבד, ללא רווחים).
חפש ובטל את ההערות (הסר את הסימן # בהתחלה) או הוסף את השורה הבאה:
net.ipv4.ip_forward=1
שמור את הקובץ (Ctrl+O, Enter) וצא (Ctrl+X). החל את השינויים מבלי לאתחל מחדש:
sysctl -p
הגדרת NAT (מסווה)
הגדרה זו מאפשרת ללקוחות גישה לאינטרנט דרך השרת שלך באמצעות כתובת ה-IP שלו.
גלה את שם ממשק הרשת החיצוני שלך (זה שפונה לאינטרנט):
ip link show
בדרך כלל זה eth0, ens3, או enp1s0. העתיקו או זכרו אותו, לאחר מכן הוסיפו את כלל המסווה ל-iptables - החליפו את eth0 בשם הממשק שלכם:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
שמירת כללי iptables
כדי למנוע איפוס של הכללים לאחר אתחול מחדש של השרת, יש לשמור אותם.
apt update
apt install iptables-persistent -y
netfilter-persistent save
במהלך ההתקנה ייתכן שתופיע בקשה לשמור את כללי ה-IPv4/IPv6 הנוכחיים - ענה "כן" בשתי הפעמים.
הגדרת חומת אש (UFW)
אנו פותחים את כל הפורטים שנצטרך מיד, כך שאין צורך לחזור לשלב זה מאוחר יותר: 22 עבור SSH (דילוג על זה ינעל אתכם מחוץ לשרת), 443/udp עבור Hysteria2, ו-8443/udp עבור TUIC.
apt install ufw -y
ufw allow 22/tcp
ufw allow 443/udp
ufw allow 8443/udp
ufw --force enable
ufw status
הפלט של status ufw אמור לרשום את שלושת הכללים כפעילים.
היסטריה2
התקנת שרת Hysteria2
chmod +x hysteria-linux-amd64
mv hysteria-linux-amd64 /usr/local/bin/hysteria
hysteria version
ודא שפלט הגרסה מופיע ללא שגיאות - זה מאשר שהקובץ הבינארי פועל כהלכה.
יצירת תעודת SSL חתומה עצמית
אנו זקוקים למפתחות הצפנה משלנו כדי להגן על התעבורה בין המחשב שלך לשרת. מכיוון שאין לנו דומיין, ניצור אישור חתום עצמית ותוקף למשך 365 ימים. מסיבה זו, תצטרך להפעיל את "דלג על אימות אישור" בלקוח בהמשך.
mkdir -p /etc/hysteria
chmod 755 /etc/hysteria
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/hysteria/private.key \
-out /etc/hysteria/cert.crt \
-subj "/CN=YOUR_SERVER_IP"
ls -la /etc/hysteria/
יש לרשום גם cert.crt וגם private.key.
יצירת קובץ התצורה
nano /etc/hysteria/config.yaml
הדבק את הסיסמה הבאה, תוך החלפת YOUR_PASSWORD בסיסמה שלך (אותיות ומספרים באנגלית בלבד, ללא רווחים):
listen: :443
tls:
cert: /etc/hysteria/cert.crt
key: /etc/hysteria/private.key
auth:
type: password
password: "YOUR_PASSWORD"
masquerade:
type: proxy
proxy:
url: https://cloudflare.com
rewriteHost: true
בלוק המסכות גורם לשרת להיראות כמו אתר אינטרנט רגיל אם מישהו פותח את כתובת ה-IP שלו בדפדפן, במקום לחשוף סימנים של פרוקסי.
שמור (Ctrl+O, Enter) וצא (Ctrl+X).
הגדרת הפעלה אוטומטית
nano /etc/systemd/system/hysteria.service
קובץ היחידה systemd עבור הפעלה אוטומטית של Hysteria2.
[Unit]
Description=Hysteria2 Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/hysteria server --config /etc/hysteria/config.yaml
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now hysteria.service
systemctl status hysteria.service
הסטטוס אמור להראות פעיל (פועל). אם הקונסולה "תקוע" בתצוגת יומן הרישום, לחץ על Q כדי לצאת ממנה.
TUIC גרסה 5
הורדה והתקנה של TUIC
mkdir -p /usr/local/sbin/tuic
בדוק את הגרסאות הזמינות:
curl -s https://api.github.com/repos/tuic-protocol/tuic/releases | grep -Po '"tag_name": "\K[^"]*' | head -10
הורד את קובץ השרת הבינארי - החלף את מספר הגרסה הנוכחי ב-1.0.0:
wget https://github.com/tuic-protocol/tuic/releases/download/1.0.0/tuic-server-1.0.0-x86_64-unknown-linux-gnu \
-O /usr/local/sbin/tuic/tuic-server
chmod +x /usr/local/sbin/tuic/tuic-server
/usr/local/sbin/tuic/tuic-server --version
יצירת אישור חתום עצמית עבור TUIC
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /usr/local/sbin/tuic/privkey.pem \
-out /usr/local/sbin/tuic/fullchain.pem \
-subj "/CN=YOUR_SERVER_IP"
ls -la /usr/local/sbin/tuic/
יצירת UUID
apt install uuid-runtime -y
uuidgen
העתק את ה-UUID שנוצר - תזדקק לו גם בתצורת השרת למטה וגם בהגדרות הלקוח.
יצירת קובץ התצורה
קובץ config.json המוגמר עבור שרת TUIC:
nano /usr/local/sbin/tuic/config.json
{
"server": "[::]:8443",
"users": {
"YOUR_UUID": "YOUR_TUIC_PASSWORD"
},
"certificate": "/usr/local/sbin/tuic/fullchain.pem",
"private_key": "/usr/local/sbin/tuic/privkey.pem",
"congestion_control": "bbr",
"alpn": ["h3"],
"log_level": "warn"
}
אנו משתמשים כאן בפורט 8443 מכיוון ש-443 כבר תפוס על ידי Hysteria2. החליפו את YOUR_UUID בערך משלב 4.3 ואת YOUR_TUIC_PASSWORD בסיסמה שלכם.
שמור (Ctrl+O, Enter) וצא (Ctrl+X).
בדיקת הפעלה ידנית
/usr/local/sbin/tuic/tuic-server -c /usr/local/sbin/tuic/config.json
אם לא מופיעות שגיאות, התצורה תקפה. עצור אותה באמצעות Ctrl+C ועבור להגדרת הפעלה אוטומטית.
הגדרת הפעלה אוטומטית
nano /etc/systemd/system/tuic-server.service
[Unit]
Description=TUIC Server
After=network.target nss-lookup.target
[Service]
User=root
WorkingDirectory=/usr/local/sbin/tuic
ExecStart=/usr/local/sbin/tuic/tuic-server -c config.json
Restart=on-failure
RestartPreventExitStatus=1
RestartSec=5
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now tuic-server.service
systemctl status tuic-server.service
הסטטוס אמור להראות פעיל (פועל).
כעת שניים מהפרוטוקולים המודרניים הטובים והמהירים ביותר פועלים במקביל בשרת, שניהם מחופשים לתעבורת QUIC/HTTPS רגילה: Hysteria2 בפורט הסטנדרטי 443/udp, ו-TUIC v5 בפורט 8443/udp.
התחברות מ-Windows
התקנת Hiddify
הורד והתקן את Hiddify עבור Windows מהאתר הרשמי: https://hiddify.com. לחץ על תוכנית ההתקנה עם "הבא" / "התקן". אם Windows SmartScreen מופיע, בחר "מידע נוסף" → "הפעל בכל מקרה".
פרופיל Hysteria2
לחץ על + (פרופיל חדש) ← "הזנה ידנית" ← פרוטוקול Hysteria2 , ומלא:
|
שדה |
ערך |
|
שם פרופיל |
שרת Hysteria2 שלי |
|
כתובת |
כתובת_ה_שרת_שלך |
|
נָמָל |
443 |
|
סיסמה |
הסיסמה משלב 3.3 |
|
SNI |
כתובת_ה_שרת_שלך |
|
דלג על אימות אישור |
On |
יש להפעיל את האפשרות Skip Cert Verification מכיוון שהאישור חתום על ידי החתימה עצמית - אין רשות אישורים מהימנה מאחוריו.
פרופיל TUIC v5
לחצו על + (פרופיל חדש) → "הזנה ידנית" → פרוטוקול TUIC , ומלאו:
|
שדה |
ערך |
|
שם פרופיל |
שרת ה-TUIC שלי |
|
כתובת |
כתובת_ה_שרת_שלך |
|
נָמָל |
8443 |
|
UUID |
ה-UUID משלב 4.3 |
|
סיסמה |
הסיסמה משלב 4.4 |
|
בקרת גודש |
Bbr |
|
SNI |
כתובת_ה_שרת_שלך |
|
דלג על אימות אישור |
On |
חיבור ואימות
בחר פרופיל, ולאחר מכן לחץ על כפתור "התחבר" העגול הגדול. הסטטוס אמור להשתנות ל"מחובר".
כדי לוודא שהתעבורה אכן מנותבת דרך השרת שלך, פתח כל שירות בדיקת IP בדפדפן שלך - הכתובת המוצגת צריכה להתאים ל-YOUR_SERVER_IP.
סיכום
לאחר השלמת מדריך זה, יהיו לכם שני פרוטוקולים מהירים מהדור הבא הפועלים במקביל בשרת שלכם: Hysteria2 בפורט 443/UDP ו-TUIC v5 בפורט 8443/UDP. שני הפרוטוקולים מסווים את התעבורה המועברת כחיבור QUIC מוצפן סטנדרטי (HTTP/3), מה שמבטיח חיבור יציב גם בערוצים לא יציבים במיוחד.
ניתן להשתמש בפרופילים שהוגדרו לא רק ב-Windows אלא גם לייבא אותם לאפליקציית Hiddify לנייד עבור אנדרואיד או iOS עם הגדרות דומות.
אם אתם נתקלים בקשיי חיבור, בדקו תחילה את מצבי השירות באמצעות פקודת systemctl status hysteria.service (או tuic-server.service), ודאו שכללי חומת האש פעילים (ufw status), ובדקו שוב שכתובת ה-IP, ה-UUID והסיסמאות הוזנו כהלכה. שימו לב: אישורים חתומים עצמית תקפים למשך 365 ימים, כך שאחרי שנה בדיוק יהיה צורך לחדש אותם באמצעות אותה פקודת openssl req.