OpenSSH ~ / .ssh / config होस्ट-विशिष्ट ओवरराइड काम नहीं कर रहा है


17

मैंने इस गाइड~/.ssh/config की मदद से अपनी फ़ाइल सेट करने की कोशिश की है । हालाँकि, होस्ट-विशिष्ट उपयोगकर्ता ओवरराइड का कोई प्रभाव नहीं होता है और ssh होस्ट-विशिष्ट के बजाय वैश्विक उपयोगकर्ता नाम का उपयोग करने से कनेक्ट करने का प्रयास करता है। मेरा ssh कॉन्फिगरेशन इस तरह सेट किया गया है:

$ cat ~/.ssh/config
User my_global_username

Host dev1
    HostName 10.40.10.41
    User my_username_on_dev_machines

मैंने Host *किसी लाभ के लिए किसी प्रविष्टि के नीचे वैश्विक उपयोगकर्ता नाम डालने का भी प्रयास किया है । OpenSSH संस्करण और निर्माण मैं चला रहा हूँ OpenSSH_6.2p2 Ubuntu-6ubuntu0.1, OpenSSL 1.0.1e 11 Feb 2013 `है।

जवाबों:


30

में कोई "वैश्विक" मान नहीं है .ssh/config। यदि आप एक डिफ़ॉल्ट मान रखना चाहते हैं तो आपको इसे एक Host *अनुभाग में रखना होगा :

Host dev1
    HostName 10.40.10.41
    User my_username_on_dev_machines

Host *
    User my_global_username

आदेश पर ध्यान दें: पहला मैच जीतता है!


2
कुछ अनुवर्ती प्रश्न: 1) क्या हाल ही में व्यवहार बदल गया है? लिंक की गई वेबसाइट पर मौजूद गाइड Host *शीर्ष में स्पष्ट रूप से दिखाई देता है।
— andyn

2) पहला मैच जीतता है, लेकिन स्पष्ट रूप से केवल उन मूल्यों के लिए जो इसे स्पष्ट रूप से सेट करता है। क्या यह कहीं दस्तावेज है? मनुष्य ssh_config होस्ट या पैटर्न अनुभागों से संबंधित कुछ भी नहीं दिखाता है।
— andyn

6
Ssh_config (5) में दूसरे पैराग्राफ में पहला वाक्य कहता है: "प्रत्येक पैरामीटर के लिए, पहले प्राप्त मूल्य का उपयोग किया जाएगा।" मुझे नहीं पता कि वह हाल ही में बदल गया है, लेकिन मेरे पास "होस्ट *" सबसे नीचे था।
— क्रेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.