अब तक जो मैंने पढ़ा (और अनुभव किया), उसमें तीन मुख्य विधियाँ हैं जिनका उपयोग किया जा सकता है:
- ssh.plist फ़ाइल में सेटिंग बदलें;
- / etc / सेवाओं फ़ाइल में सेटिंग बदलें;
- /etc/sshd.conf फ़ाइल में सेटिंग बदलें।
इसे करने का एक और तरीका, जिसे मैं व्यक्तिगत रूप से अब तक इन सभी तरीकों में से सभी को पसंद करता हूं, क्योंकि यह मैक ओएस एक्स सिस्टम फाइलों के साथ खिलवाड़ करने से बचता है।
- समाज डाउनलोड करें: http://www.dest-unreach.org/socat/download/socat-1.7.3.2.tar.gz
- Tar.gz फ़ाइल को अपने / usr / स्थानीय / निर्देशिका में स्थानांतरित करें (
sudo mv ./socat-1.7.3.2.tar.gz /usr/local/bin/socat-1.7.3.2.tar.gz
)
- अपने / usr / स्थानीय / बिन निर्देशिका (
cd /usr/local/bin
) पर जाएं
- को विस्तारित:
sudo tar -xvzf socat-1.7.3.2.tar.gz
- असंपीड़ित फ़ाइल निर्देशिका में जाएँ:
cd ./socat-1.7.3.2
- सामान्य कॉन्फ़िगरेशन चलाएं, सोसाइट स्थापित करने के लिए बनाएं और स्थापित करें (
sudo ./configure && sudo make && sudo make install
)
- पोर्ट 22 (डिफ़ॉल्ट ssh) को आप चाहते हैं कि किसी भी पोर्ट पर (निम्नलिखित पूर्व में। 2222) सोशट कॉल भेजकर सही विकल्प का उपयोग करें (
sudo socat TCP-LISTEN:2222,reuseaddr,fork TCP:localhost:22
)
आप कर रहे हैं और अपने मैक ओएस एक्स सिस्टम फ़ाइलों को अपरिवर्तित छोड़ दिया जाता है। इसके अलावा, यह विधि न केवल स्नो लेपर्ड पर काम करती है, बल्कि मैक ओएस एक्स के सभी संस्करणों पर और किसी भी मशीन पर, जिस पर सोसाइटी चल सकती है।
यदि आप एक राउटर / फ़ायरवॉल का उपयोग करते हैं, तो आखिरी चीज़ आपको अपने राउटर / फ़ायरवॉल में सही रीडायरेक्ट कमांड शामिल करना है।
इसके अलावा, यह बहस में फंसने से बचा जाता है कि क्या ssh.plist पद्धति, सेवाओं का तरीका या जो भी विधि अन्य की तुलना में बेहतर, अधिक सुरुचिपूर्ण या बदतर है।
आप आसानी से एक स्क्रिप्ट तैयार कर सकते हैं, जो आपके द्वारा पुनः आरंभ की गई सोसाइटी रिडायरेक्शन को फिर से बनाने के लिए शुरू होती है। इसे इसमें रखें /Library/LaunchDaemons/com.serverfault.sshdredirect.plist
:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.serverfault.sshdredirect</string>
<key>KeepAlive</key>
<dict>
<key>NetworkState</key>
<true/>
</dict>
<key>RunAtLoad</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/socat</string>
<string>TCP-LISTEN:2222,reuseaddr,fork</string>
<string>TCP:localhost:22</string>
</array>
</dict>
</plist>
sudo launchctl load -w /Library/LaunchDaemons/com.serverfault.sshdredirect.plist
इसे लोड करने के लिए उपयोग करें । यह भविष्य के रिबूट पर स्वचालित रूप से लोड होगा।
इसके अलावा, आप लूपबैक (127.0.0.1) और (ii) अपने sshd.conf फ़ाइल में एक समान परिवर्तन करने से किसी भी अन्य इंटरफ़ेस से अपने पोर्ट 22 के किसी भी कनेक्शन को ब्लॉक करने के लिए (i) अपने फ़ायरवॉल को सेट करके सुरक्षा में सुधार कर सकते हैं। केवल लूपबैक पर ssh सुनो।
का आनंद लें।
/usr/libexec/sshd-keygen-wrapper
(नीचे दिए गए प्लास्ट्स में दिखाया गया है) प्लिस्ट में ही निर्दिष्ट की तुलना में एक अलग एसएसएच शुरू कर सकता है। यदि आप इसे बिल्ली करते हैं, तो यह हमेशा शुरू होता है/usr/sbin/sshd
।