यहाँ रिमोट मशीन पर / etc / passwd फ़ाइल का एक अंश है।
root:x:0:0:root:/root:/bin/bash
valid:x:0:0::/home/valid:/bin/rbash
जैसा कि आप देख सकते हैं, मान्य रूट का एक वैकल्पिक नाम है।
मैं नियमित ssh कमांड के साथ किसी भी खाते में ssh कर सकता हूं:
ssh root@remoteMachine
[...]
# whoami
root
# pwd
/root
तथा
ssh valid@remoteMachine
[...]
> whoami
<command unknown>
> pwd
<command unknown>
(हमने rbash के साथ कमांड्स को निष्क्रिय कर दिया)
अब, हालांकि, जब रिमोटलैशिन को उपयोगकर्ता के रूप में कनेक्ट कर रहा whoami
है root
, तो लिबास, रिमोट से चलने वाले रिटर्न और pwd
रिटर्न के साथ "वैध" है /home/admin
। यह भी दिखाई देता है कि शेल में सब कुछ चलता है rbash (पाया जाता है ps -ef | grep tototototo
)
सवाल यह है: क्या यह लिबास में किसी प्रकार का बग है, या क्या यह एसएस में बग है जो कमांड-लाइन एसटीएस में दिखाई नहीं देगा?
@ गिल्स: यहां मेरे पास: क्लाइंट साइड:
$ uname -a Linux Debian6 2.6.32-5-686 #1 SMP Mon Jun 13 04:13:06 UTC i686 GNU/Linux $ ssh -v OpenSSH_5.5p1 Debian6, OpenSSL 0.9.8o 01 Jun 2010
सर्वर साइड: $ uname -a Linux #Company Name# 2.6.32-33-generic #72_Ubuntu SMP Fri Jun 29 21:08:37 UTC 2011 i686 GNU/Linux $ ssh -v OpenSSH_5.3p1 Debian_3ubuntu7, OpenSSL 0.9.8k 25 Mar 2009
कोई /home/admin/.ssh डायरेक्टरी नहीं है। /root/.ssh में कोई कॉन्फ़िगर फ़ाइल / निर्देशिका नहीं है।
@ गिल्स: क्लाइंट कोड पर अपना कोड चलाते समय, यहां लॉग इन होते हैं
/var/log/auth.log
: Accepted password for valid from 192.168.1.20 port 33513 ssh2 pass_unix (sshd:session) session opened for user valid by (uid=0) pass_unix (sshd:session) session closed for user valid
अब, केवल एक चीज जो बदलती है, वह है, जब मैं कमांड लाइन ssh का उपयोग करता हूं, तो पोर्ट नंबर बदल जाता है। (57337 की लाइनों में कुछ करने के लिए)
निम्नलिखित कमांड का आउटपुट क्या है
—
गाइल्स
ssh valid@remoteMachine 'echo $BASHOPTS; echo $BASH $HOME; whoami'
:? यदि आप विकल्प पास करते हैं तो क्या यह बदल -t
जाता है ssh
? यदि आप संवादात्मक रूप से ssh चलाते हैं और इन आदेशों को टाइप करते हैं तो क्या होगा? और लिबास के साथ? में स्टार्टअप फ़ाइलों क्या करना /home/admin
होते हैं ( .profile
, ,bash_profile
, .bash_login
, .bashrc
)?
valid
औरroot
वही उपयोगकर्ता हैं। सर्वर चल रहा है क्या यूनिक्स संस्करण और ssh कार्यान्वयन? क्या आप सर्वर लॉग (/var/log/auth.log
या समान) से पोस्ट कर सकते हैं ? क्या आपके पास कोई उपनाम है~/.ssh/config
? क्या आपने जाँच की है कि कोई मल्टीप्लेक्सिंग नहीं की जा रही है?