SSH लॉगिन के बाद स्वागत संदेश को कैसे निष्क्रिय करें?


32

मैं बदल गया हूं /etc/issue.net, इसलिए मैंने SSH टर्मिनल में उपयोगकर्ता नाम टाइप करने के बाद "व्यक्तिगत" संदेश सेट किया है। अब मैं सफल लॉगिन के बाद स्वागत पाठ को बदलने की कोशिश कर रहा हूं।

मुझे /etc/motdफ़ाइल के बारे में बहुत सारी पोस्ट मिली हैं , लेकिन "वेलकम टू उबंटु ब्लाब्ला वर्नम्बर और इतने पर" + "* डॉक्यूमेंटेशन URL" नहीं है?

मैं बस अपने एसएसएच टर्मिनल में ओएस जानकारी नहीं दिखाना चाहता हूं, मुझे पहले से ही पता है कि मैंने क्या स्थापित किया है। :) मैं केवल अपना अंतिम लॉगिन देखना चाहता हूं। और त्रुटियां भी नहीं; त्रुटियाँ एक लॉगफ़ाइल में हैं।

मुझे कौन सी फ़ाइल संपादित करनी है?

जवाबों:


46

स्वागत संदेश में रहने वाली फ़ाइलों द्वारा उत्पन्न कर रहे हैं /etc/update-motd.d/

से man update-motd:

/Etc/update-motd.d/* में निष्पादन योग्य स्क्रिप्ट को प्रत्येक लॉगिन पर मूल उपयोगकर्ता के रूप में pam_motd (8) द्वारा निष्पादित किया जाता है, और इस जानकारी को / var / run / motd में संक्षिप्त किया जाता है।

इसलिए यदि आप लॉगिन के माध्यम से उन स्क्रिप्ट के आउटपुट नहीं चाहते हैं तो उन पर sshअमल करने वाले झंडे को हटा दें:

sudo chmod -x /etc/update-motd.d/*

अब यदि आप लॉगिन पर कुछ दिखाना चाहते हैं, तो आपके पास दो विकल्प हैं:

  • एक स्क्रिप्ट बनाओ, इसे अंदर करो /etc/update-motd.d/, इसे निष्पादन योग्य बनाओ, यह भी सुनिश्चित करें कि यह STDOUT पर आउटपुट करता है।

  • sshएक Bannerविकल्प है। आप पाठ को एक फ़ाइल में रख सकते हैं और इसे Bannerविकल्प में सेट कर सकते हैं ताकि फ़ाइल की सामग्री लॉगिन के माध्यम से दिखाई दे ssh। ध्यान दें कि यह केवल पर लागू होता है ssh

    Banner /etc/foobar
    

    से man 5 sshd_config:

     Banner  The contents of the specified file are sent to the remote user
             before authentication is allowed.  If the argument is “none” then
             no banner is displayed.  This option is only available for
             protocol version 2.  By default, no banner is displayed.
    

8
मेरे पसंदीदा उत्तर सभी "मैन मैन xyz" से शुरू होते हैं;)
एबी

धन्यवाद! अब मैं उन फाइलों के बीच संबंध जानता हूं। मैंने उन्हें नहीं चोदा, बस कुछ लाइनों से पहले # जोड़ा गया था जो मैं दिखाना नहीं चाहता।
टेराडॉन सेप

@Terradon हाँ, यह भी करना होगा..मैंने सिर्फ इस समाधान को सामान्यीकृत किया क्योंकि बहुत से लोग फ़ाइल में बहुत कुछ देखना पसंद नहीं करेंगे ..
heemayl

2
महान स्वच्छ समाधान क्योंकि chmodingफाइलों का मतलब है कि मुझे उन्हें संपादित करने की आवश्यकता नहीं है। अच्छा!
पाक

... वे मोटापा में इतना भद्दा क्यों लगाते हैं और लोगों के समय को अक्षम करने में बर्बाद कर देते हैं: चोद -x के साथ अच्छा समाधान!
9

4

तुम भी pam_motdपूरी तरह से कर सकते हैं:

sed -i '/^[^#]*\<pam_motd.so\>/s/^/#/' /etc/pam.d/sshd

PAM pam_motdमें सेटिंग्स पर निर्भर करता है /etc/pam.d, और आम तौर पर प्रविष्टियों हैं:

$ grep pam_motd /etc/pam.d -R
/etc/pam.d/login:session    optional   pam_motd.so  motd=/run/motd.dynamic noupdate
/etc/pam.d/login:session    optional   pam_motd.so
/etc/pam.d/sshd:session    optional     pam_motd.so  motd=/run/motd.dynamic noupdate
/etc/pam.d/sshd:session    optional     pam_motd.so # [1]

बस pam_motdइन फ़ाइलों की पंक्तियों को टिप्पणी करने से यह अक्षम हो जाएगा।


आपके समय के लिए धन्यवाद, लेकिन "उन सभी के साथ" मुझे नहीं पता कि मैं क्या कर रहा हूं। (मैं linux / ubuntu के लिए नया हूं)।
टेराडॉन सेप

1
@Terradon आप PAM को कॉल नहीं करने के लिए कह रहे हैं pam_motd.so, बस।
मूरू

धन्यवाद, मैं बिल्कुल PAM.does पर एक करीब देखो ले जाएगा।
टेराडन

3

एक और तरीका जिसमें प्रशासनिक अधिकारों की आवश्यकता नहीं होती है, जिसे खाली फाइल कहा जाता है

.hushlogin

आपकी $ HOME निर्देशिका में (उदाहरण के लिए उपयोग करके touch ~/.hushlogin)।

स्रोत जो इस दृष्टिकोण के एक संभावित नकारात्मक पहलू सहित आगे की जानकारी प्रदान करता है : https://debian-administration.org/article/546/Giving_yourself_a_quieter_SSH_login


सुरुचिपूर्ण, सरल, अन्य उपयोगकर्ताओं के साथ गड़बड़ नहीं है, नहीं sudo। धन्यवाद।
जन वेर्खोवेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.