
एक हाई-स्पीड कवर्ट टनल जो टीसीपी ट्रैफिक को एसएमटीपी ईमेल संचार के रूप में प्रच्छन्न करके डीप पैकेट इंस्पेक्शन (DPI) फायरवॉल को बायपास करता है।
एक उच्च-गति वाली गुप्त सुरंग जो डीप पैकेट इंस्पेक्शन (DPI) फ़ायरवॉल को बायपास करने के लिए TCP ट्रैफ़िक को SMTP ईमेल संचार के रूप में छिपाती है।
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌──────────────┐
│ Application │─────▶│ Client │─────▶│ Server │─────▶│ Internet │
│ (Browser) │ TCP │ SOCKS5:1080 │ SMTP │ Port 587 │ TCP │ │
│ │◀─────│ │◀─────│ │◀─────│ │
└─────────────┘ └─────────────┘ └─────────────┘ └──────────────┘
│ │
│ Looks like │
│ Email Traffic │
▼ ▼
┌────────────────────────────────┐
│ DPI Firewall │
│ ✅ Sees: Normal SMTP Session │
│ ❌ Cannot see: Tunnel Data │
└────────────────────────────────┘
| विशेषता | विवरण |
|---|---|
| 🔒 TLS एन्क्रिप्शन | STARTTLS के बाद सभी ट्रैफ़िक TLS 1.2+ से एन्क्रिप्ट होता है |
| 🎭 DPI से बचाव | प्रारंभिक हैंडशेक वास्तविक SMTP सर्वर (Postfix) की नकल करता है |
| ⚡ उच्च गति | हैंडशेक के बाद बाइनरी स्ट्रीमिंग प्रोटोकॉल - न्यूनतम ओवरहेड |
| 👥 बहु-उपयोगकर्ता | प्रति-उपयोगकर्ता रहस्य, IP श्वेतसूची और लॉगिंग सेटिंग्स |
| 🔑 प्रमाणीकरण | HMAC-SHA256 के साथ प्रति-उपयोगकर्ता पूर्व-साझा कुंजियाँ |
| 🌐 SOCKS5 प्रॉक्सी | मानक प्रॉक्सी इंटरफ़ेस - किसी भी एप्लिकेशन के साथ काम करता है |
| 📡 मल्टीप्लेक्सिंग | एकल सुरंग पर कई कनेक्शन |
| 🛡️ IP श्वेतसूची | IP पते/CIDR द्वारा प्रति-उपयोगकर्ता पहुँच नियंत्रण |
| 📦 आसान इंस्टॉलेशन | systemd सेवा के साथ एक-लाइनर सर्वर इंस्टॉलेशन |
| 🎁 क्लाइंट पैकेज | प्रत्येक उपयोगकर्ता के लिए स्वतः-जनरेटेड ZIP फ़ाइलें |
| 🔄 स्वतः-पुनःकनेक्ट | कनेक्शन खोने पर क्लाइंट स्वचालित रूप से पुनः कनेक्ट होता है |
📚 गहन तकनीकी विवरण, प्रोटोकॉल विनिर्देशों और सुरक्षा विश्लेषण के लिए, TECHNICAL.md देखें।
अपने VPS की ओर इशारा करने वाला एक मुफ्त डोमेन प्राप्त करें:
उदाहरण: myserver.duckdns.org → 203.0.113.50 (आपका VPS IP)
curl -sSL https://raw.githubusercontent.com/x011/smtp-tunnel-proxy/main/install.sh | sudo bash
इंस्टॉलर निम्न कार्य करेगा:
बस इतना ही! आपका सर्वर तैयार है।
smtp-tunnel-adduser bob # Add user + generate client ZIP
smtp-tunnel-listusers # List all users
smtp-tunnel-deluser bob # Remove a user
smtp-tunnel-update # Updates code, preserves config/certs/users
username.zip फ़ाइल प्राप्त करें| प्लेटफ़ॉर्म | कैसे चलाएँ |
|---|---|
| 🪟 Windows | start.bat पर डबल-क्लिक करें |
| 🐧 Linux | ./start.sh चलाएँ |
| 🍎 macOS | ./start.sh चलाएँ |
लॉन्चर स्वचालित रूप से निर्भरताएँ इंस्टॉल करेगा और क्लाइंट शुरू करेगा।
✅ आपको यह दिखना चाहिए:
SMTP Tunnel Proxy Client
User: alice
[INFO] Starting SMTP Tunnel...
[INFO] SOCKS5 proxy will be available at 127.0.0.1:1080
Connecting to myserver.duckdns.org:587
Connected - binary mode active
SOCKS5 proxy on 127.0.0.1:1080
cd alice
pip install -r requirements.txt
python client.py
# Download files
scp [email protected]:/etc/smtp-tunnel/ca.crt .
# Create config.yaml:
cat > config.yaml << EOF
client:
server_host: "myserver.duckdns.org"
server_port: 587
socks_port: 1080
username: "alice"
secret: "your-secret-from-admin"
ca_cert: "ca.crt"
EOF
# Run client
python client.py -c config.yaml
SOCKS5 प्रॉक्सी को 127.0.0.1:1080 पर सेट करें
127.0.0.1, पोर्ट: 1080127.0.0.1:1080 के साथ प्रोफ़ाइल बनाएँसेटिंग्स → नेटवर्क और इंटरनेट → प्रॉक्सी → मैनुअल सेटअप → socks=127.0.0.1:1080
सिस्टम प्राथमिकताएँ → नेटवर्क → उन्नत → प्रॉक्सीज़ → SOCKS प्रॉक्सी → 127.0.0.1:1080
export ALL_PROXY=socks5://127.0.0.1:1080
# curl
curl -x socks5h://127.0.0.1:1080 https://ifconfig.me
# git
git config --global http.proxy socks5://127.0.0.1:1080
# Environment variable
export ALL_PROXY=socks5://127.0.0.1:1080
# Should show your VPS IP
curl -x socks5://127.0.0.1:1080 https://ifconfig.me
config.yaml)| विकल्प | विवरण | डिफ़ॉल्ट |
|---|---|---|
host | सुनने का इंटरफ़ेस | 0.0.0.0 |
port | सुनने का पोर्ट | 587 |
hostname | SMTP होस्टनाम (प्रमाणपत्र से मेल खाना चाहिए) | mail.example.com |
cert_file | TLS प्रमाणपत्र पथ | server.crt |
key_file | TLS निजी कुंजी पथ | server.key |
users_file | उपयोगकर्ता कॉन्फ़िगरेशन का पथ | users.yaml |
log_users | वैश्विक लॉगिंग सेटिंग | true |
users.yaml)प्रत्येक उपयोगकर्ता के पास अलग-अलग सेटिंग्स हो सकती हैं:
users:
alice:
secret: "auto-generated-secret"
# whitelist: # Optional: restrict to specific IPs
# - "192.168.1.100"
# - "10.0.0.0/8" # CIDR notation supported
# logging: true # Optional: disable to stop logging this user
bob:
secret: "another-secret"
whitelist:
- "203.0.113.50" # Bob can only connect from this IP
logging: false # Don't log Bob's activity
| विकल्प | विवरण | डिफ़ॉल्ट |
|---|---|---|
secret | उपयोगकर्ता का प्रमाणीकरण रहस्य | आवश्यक |
whitelist | इस उपयोगकर्ता के लिए अनुमत IP (CIDR समर्थित) | सभी IP |
logging | इस उपयोगकर्ता के लिए गतिविधि लॉगिंग सक्षम करें | true |
| विकल्प | विवरण | डिफ़ॉल्ट |
|---|---|---|
server_host | सर्वर डोमेन नाम | आवश्यक |
server_port | सर्वर पोर्ट | 587 |
socks_port | स्थानीय SOCKS5 पोर्ट | 1080 |
socks_host | स्थानीय SOCKS5 इंटरफ़ेस | 127.0.0.1 |
username | आपका उपयोगकर्ता नाम | आवश्यक |
secret | आपका प्रमाणीकरण रहस्य | आवश्यक |
ca_cert | सत्यापन के लिए CA प्रमाणपत्र | अनुशंसित |
# Check status
sudo systemctl status smtp-tunnel
# Restart after config changes
sudo systemctl restart smtp-tunnel
# View logs
sudo journalctl -u smtp-tunnel -n 100
# Uninstall
sudo /opt/smtp-tunnel/uninstall.sh
python server.py [-c CONFIG] [-d]