iPhone, iPad और Mac के लिए एक knockd क्लाइंट
जब एक पता समय पर पोर्ट के किसी गुप्त अनुक्रम को हिट करता है, तो knockd एक पोर्ट खोलता है। Secret Knock आपके iPhone, iPad, Mac या Apple Watch से वह अनुक्रम भेजता है, जाँचता है कि पोर्ट जवाब देता है और आपका SSH ऐप खोलता है।
Secret Knock क्या भेजता है
किसी दरवाज़े का हर चरण एक पोर्ट पर TCP या UDP दस्तक होता है, जिसमें उससे पहले वैकल्पिक विलंब होता है और UDP के लिए टेक्स्ट या hex के रूप में वैकल्पिक पेलोड होता है। TCP दस्तक एक कनेक्शन प्रयास है: ऐप एक अकेला SYN भेजता है और प्रयास को तुरंत बंद कर देता है, ताकि ऑपरेटिंग सिस्टम उसे फिर से न भेजे — knockd 0.8 दोहराए गए SYN पर अनुक्रम रीसेट कर देता है।
एक-बार के अनुक्रम (knockd के one_time_sequences) भी काम करते हैं: दस्तक का प्रकार › एक-बार के अनुक्रम (knockd) चुनें और सूची दर्ज करें; दरवाज़ा खोलने वाली दस्तक के बाद Secret Knock अगले अनुक्रम पर चला जाता है। knockd.conf आयात करने पर अनुक्रम फ़ाइल नहीं पढ़ी जाती — आयात में यह बताया जाता है — इसलिए वह सूची हाथ से दर्ज करें।
सर्वर सेट अप करें
एक न्यूनतम knockd अनुभाग, जो दस्तक देने वाले पते के लिए SSH को 10 सेकंड तक खोलता है। अपने पोर्ट स्वयं चुनें — प्रकाशित उदाहरणों का कभी पुन: उपयोग न करें।
[options]
UseSyslog
[openSSH]
sequence = 7311:tcp,8822:tcp,9133:udp
seq_timeout = 10
tcpflags = syn
start_command = /usr/sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
cmd_timeout = 10
stop_command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT ऐप में दरवाज़ा जोड़ें
- 1नया दरवाज़ा › टेम्पलेट से शुरू करें › knockd नमूना तीन-पोर्ट TCP अनुक्रम और जाँचने के लिए पोर्ट के रूप में SSH भर देता है; पोर्ट को अपने पोर्ट से बदलें।
- 2या + › फ़ाइल से आयात करें चुनें और अपनी knockd.conf चुनें: अनुक्रम वाला हर अनुभाग एक दरवाज़ा बन जाता है।
- 3यदि आपके सर्वर का knockd केवल एक परिवार पर सुनता है, तो दरवाज़े के लिए IPv4 या IPv6 पिन करें।
- 4पीतल के नॉकर को दबाकर रखें। पोर्ट 22 के जवाब देने पर दरवाज़ा दरवाज़ा थोड़ा खुला दिखाता है, और SSH खोलें आपको आपके SSH ऐप में ले जाता है।
GitHub पर सभी उदाहरण → इस पेज पर हर कॉन्फ़िगरेशन, कॉपी करने के लिए तैयार: github.com/mobilcomm/secretknock-examples (सार्वजनिक डोमेन)।
सवाल
क्या यह knockd के tcpflags = syn के साथ काम करता है?
हाँ। हर TCP दस्तक एक अकेला SYN होती है, और tcpflags = syn ठीक इसी को गिनता है।
क्या मैं उसी दस्तक को कमांड के रूप में देख सकता हूँ?
हाँ। दरवाज़ा संपादक उसी दस्तक को आपके टर्मिनल के लिए knock कमांड के रूप में दिखाता है, जो पेस्ट करने के लिए तैयार होती है।
आपके सेटअप के लिए गाइड
- Port knocking समझें →
- iPhone, Mac और Apple Watch पर fwknop SPA →
- MikroTik पोर्ट नॉकिंग →
- DrayTek Vigor पोर्ट नॉकिंग →
- पोर्ट नॉकिंग के पीछे SSH छिपाएँ →
- Apple Watch पर पोर्ट नॉकिंग →
- पोर्ट पर दस्तक देने से दरवाज़ा क्यों नहीं खुलता →
- knockd.conf के उदाहरण →
- fwknop सर्वर सेटअप →
- पोर्ट नॉकिंग, VPN या fail2ban? →