আমি su কমান্ডের সাহায্যে রুট হিসাবে লগইন করতে পারি না তবে এসএসএইচ দিয়ে পারি


17

কীভাবে সম্ভব যে আমি রুট হিসাবে লগ ইন করতে পারি না su rootবা su(আমি ভুল পাসওয়ার্ড ত্রুটি পেয়েছি ), কিন্তু আমি একই পাসওয়ার্ড দিয়ে ssh root@localhostবা ssh root@my_local_IPদিয়ে লগ ইন করতে পারি ?

আমি CentOS 6.4 ব্যবহার করছি।


আপডেট 1 :

cat /etc/pam.d/su

দেয়:

#%PAM-1.0
auth        sufficient  pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth       sufficient  pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth       required    pam_wheel.so use_uid
auth        include     system-auth
account     sufficient  pam_succeed_if.so uid = 0 use_uid quiet
account     include     system-auth
password    include     system-auth
session     include     system-auth
session     optional    pam_xauth.so

আপডেট 2 :

$ sudo grep su /var/log/secure | grep -v sudo

দেয়:

Feb 23 13:12:17 fallah su: pam_unix(su:auth): authentication failure;
logname=fallah uid=501 euid=501 tty=pts/0 ruser=fallah rhost=  user=root

প্রায় 20 বার পুনরাবৃত্তি।


1
ফাইলটি সাফ করার চেষ্টা করুন /etc/securetty( cp /etc/securetty{,.old}; : > /etc/securetty)। যদি এটি এখনও কাজ না করে তবে এর সামগ্রী সরবরাহ করুন /etc/pam.d/su
প্যাট্রিক

2
নিশ্চয়ই ssh 192.168.1.218আপনি নিজের মতো করে লগ ইন করছেন? রুট হিসাবে লগ ইন করার জন্য sshসাধারণত প্রয়োজন হবে ssh root@192.168.1.218বা ssh root@localhost
গ্রামীণ

1
আপনার শেলের পিআইডি (12345) পান echo $$, ( sshমূলত) একটি মূল শেল (এসইউডি বাইনারিগুলি সনাক্ত করার জন্য প্রয়োজনীয়) খুলুন এবং straceসেই শেলের জন্য শুরু করুন : strace -o su.strace -p 12345 -fএবং ত্রুটি বার্তার আগে অদ্ভুত ত্রুটিগুলি সন্ধান করুন। বা যদি আপনি এই ধরণের আউটপুটটির সাথে পরিচিত না হন তবে আপনার প্রশ্নের মধ্যে ত্রুটি বার্তার আগে শেষ 30 টি লাইন অনুলিপি করুন।
হউক লেগেইং

1
এটা @HaukeLaging বলছেনProcess 11736 attached - interrupt to quit
আলিরেজা Fallah

2
ঠিক আছে, এ কারণেই এটি কাজ করছে না। / বিন / স এর সেটআপ বিট থাকা দরকার যাতে সাধারণ (মূল-বিহীন) ব্যবহারকারীরা এটি ব্যবহার করলে, এটি / ইত্যাদি / ছায়ায় পাসওয়ার্ড তালিকার অ্যাক্সেস পেতে পারে। chmod 4755 /bin/suএটি ঠিক করতে রুট হিসাবে টাইপ করুন ।
মার্ক প্লটনিক

উত্তর:


23

আপনার মন্তব্যে, আপনি বলেছিলেন যে /bin/suএর নিম্নলিখিত মোড / মালিক রয়েছে:

-rwxrwxrwx. 1 root root 30092 Jun 22 2012 /bin/su

এখানে দুটি সমস্যা আছে।

  • এটিতে সেট-ইউড বিট চালু করা দরকার, যাতে এটি সর্বদা রুট অনুমতি নিয়ে চলতে পারে, অন্যথায় যখন কোনও সাধারণ (নন-রুট) ব্যবহারকারী এটি চালায় তখন এটিতে পাসওয়ার্ডের তথ্যে অ্যাক্সেস থাকবে না /etc/shadowএবং সেট সেট করার ক্ষমতাও থাকবে না পছন্দসই নতুন ব্যবহারকারীর কাছে ব্যবহারকারী।

  • এটা আছে কর্তব্য groupএবং otherলেখার বিট বন্ধ পরিণত হয়, যাতে অন্য কোনো ব্যবহারকারী পরিবর্তন করতে পারবে না।

এটি ঠিক করতে, লগইন করুন root- আপনি বলেছিলেন যে আপনি এটি দিয়ে করতে পারেন ssh- এবং টাইপ করুন

chmod 4755 /bin/su

বা, বিকল্পভাবে,

chmod u+s,g-w,o-w /bin/su

( Chmod এর জন্য মানদণ্ডের নথিটি কী ধরণের আর্গুমেন্ট গ্রহণ করে সে সম্পর্কে আরও বিশদে যায়)) এটি অপারেটিং সিস্টেমটি ইনস্টল করার সময় মোড বিটগুলি যেভাবে ছিল সেভাবে পুনরুদ্ধার করবে। আপনি যখন এই ফাইলটি তালিকাভুক্ত করবেন তখন এটিকে দেখতে এমন হওয়া উচিত:

-rwsr-xr-x. 1 root root 30092 Jun 22 2012 /bin/su

@ জি-ম্যান যেমন উল্লেখ করেছেন, 77 777 মোড ফাইলগুলি অবিশ্বস্ত ব্যবহারকারীরা ওভাররাইট করতে পারে এবং যদি এটি হয়, আপনি এগুলি বিতরণ মাধ্যম বা ব্যাকআপগুলি থেকে পুনরায় ইনস্টল করতে চাইতে পারেন।


1
আমি সাধারণত: যেমন ব্যবহার করি chmod 755 /bin/su, অতিরিক্ত 4 কীসের জন্য?
আলিরেজা ফালাহ

4প্রথম অবস্থানে সেট ইউআইডি অনুমতি প্রতিনিধিত্ব করে। অনুমতি বিটের জন্য প্রতীকী নাম ব্যবহার করে chmod ব্যবহারের বিকল্প উপায় যুক্ত করার জন্য আমি আমার উত্তর সম্পাদনা করেছি। আশা করি এটি আরও পরিষ্কার হবে।
মার্ক প্লটনিক

তোমাকে অনেক অনেক ধন্যবাদ. আমি এখন বুঝতে পেরেছি যে আমি chmod -R 777 /binভুল করে এটি সম্পাদন করেছি এবং সে কারণেই আমাকে অভিশাপ দেওয়া হয়েছে: ডি
আলিরেজা ফালাহ

আমি আরও একটি প্রশ্ন জিজ্ঞাসা করেছি, আপনি কি দয়া করে এটি দেখতে পাবেন, সম্ভবত আপনি উত্তরটি জানেন।
আলিরেজা ফালাহ

cyberciti.biz/tips/…rpm ফাইলের অনুমতি পুনরুদ্ধার করতে কীভাবে ব্যবহার করবেন তা বর্ণনা করে তবে আমি এটি চেষ্টা করি নি।
মার্ক প্লটনিক

10

1. চাকা গ্রুপ?

এটি সম্ভবত কারণ আপনার ইউভিড wheelগ্রুপে নেই। রেড হ্যাট ডিস্ট্রোজে আপনি এই গোষ্ঠীতে নেই এমন ব্যবহারকারীদের suকমান্ড চালানো থেকে স্পষ্টতই বারণ করতে পারবেন ।

suপিএএম কনফিগারেশনটি ডিফল্টরূপে দেখতে এখানে রয়েছে :

$ more /etc/pam.d/su
#%PAM-1.0
auth        sufficient  pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth       sufficient  pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth       required    pam_wheel.so use_uid
auth        include     system-auth
account     sufficient  pam_succeed_if.so uid = 0 use_uid quiet
account     include     system-auth
password    include     system-auth
session     include     system-auth
session     optional    pam_xauth.so

এই লাইনটি গ্রুপের suব্যবহারকারীদের কাছে কমান্ডের অ্যাক্সেসকে সীমাবদ্ধ করতে পারে wheel:

auth        required    pam_wheel.so use_uid

এর শব্দ থেকে এটি সক্ষম হয়ে যায় এবং আপনার ইউজারিডকে suকমান্ডটি পরিচালনা করার অনুমতি দেওয়া হয় না ।

এসএসএইচ কাজ করে যেহেতু এটি একটি পৃথক পিএএম পদ্ধতিতে যায়। রুট লগইনে অ্যাক্সেসও সীমিত করার জন্য এসএসএইচের নিজস্ব সুবিধা রয়েছে। রুট লগইনগুলি সাধারণত ডিফল্টরূপে অনুমোদিত হয়, কমপক্ষে বেশিরভাগ রেড হ্যাট ডিস্ট্রোজে:

$ sudo grep PermitRoot /etc/ssh/sshd_config 
#PermitRootLogin yes
# the setting of "PermitRootLogin without-password".

যদিও উপরের মন্তব্য করা হয়েছে, এটি ডিফল্ট এবং ওপেনএসএসএইচটি কনফিগারেশনে এটি ডিফল্ট সেটিংস দেখায়।

এই সাথে কাজ?

আপনার সিস্টেমটি যদি এটির মতো কনফিগার করা থাকে তবে আপনি নিজের ব্যবহারকারীর নামটি wheelগোষ্ঠীতে যুক্ত করতে পারেন ।

$ useradd -G wheel saml

লগ আউট এবং ফিরে আসার পরে:

$ groups
saml wheel

দ্রষ্টব্য: আমার ইউজারিডটি উপরে "স্যামল"।

২. অধিকার কি অনুমতি?

নির্বাহযোগ্য রুটের মালিকানাধীন কিনা তা পরীক্ষা করুন।

$ type -a su
su is /usr/bin/su
su is /bin/su

$ ls -l /usr/bin/su /bin/su
-rwsr-xr-x. 1 root root 32064 Jan 13 06:31 /bin/su
-rwsr-xr-x. 1 root root 32064 Jan 13 06:31 /usr/bin/su

এক্সিকিউটেবলের তাদের sবিট সক্ষম রয়েছে তাও নিশ্চিত করুন । এটি তাদের স্থির করে তোলে, যাতে মৃত্যুদন্ড কার্যকর করার পরে তারা তাদের নিজস্ব, মূল হিসাবে চালায়।

৩. লগগুলি কী বলে?

su -কমান্ডটি করার চেষ্টা করার সময় আপনি চেষ্টা /var/log/secureসম্পর্কে এন্ট্রি দেখতে পাবেন ।

$ sudo grep su /var/log/secure | grep -v sudo
Feb 23 23:31:26 greeneggs su: pam_unix(su-l:session): session opened for user root by saml(uid=0)
Feb 24 00:27:32 greeneggs su: pam_unix(su-l:session): session closed for user root
Feb 24 01:34:12 greeneggs su: pam_unix(su-l:session): session opened for user root by saml(uid=1000)
Feb 24 01:34:26 greeneggs su: pam_unix(su-l:session): session closed for user root

আপনি কোনও অতিরিক্ত তথ্য পান কিনা তা দেখতে এই লগটি পরামর্শ করুন।

৪. আপনি কি নিশ্চিত যে পাসওয়ার্ডটি সমস্যা নয়?

আমি যখন লগইন করার চেষ্টা করি তখন su -যখন আমি একটি ভুল পাসওয়ার্ড দেই তখন নিম্নলিখিতগুলি পাই:

$ su -
Password: 
su: Authentication failure
$

আমি অন্য অ্যাকাউন্ট তৈরি করার চেষ্টা করব এবং এই মাধ্যমিক অ্যাকাউন্টটি su -সফলভাবে চলতে পারে কিনা তা দেখার চেষ্টা করব ।


: আপনার মহান উত্তর, আমি তোমার উত্তরের পড়ার পর কি চেষ্টা দ্বারা আপনাকে ধন্যবাদ usermod -a -G wheel my_username, এবং ফল groupsহয় fallah wheel। সুতরাং এর ফলাফলটি cat /etc/pam.d/suএখন আমার প্রশ্নে রয়েছে এবং আবার আমি su কমান্ডের মাধ্যমে রুট হিসাবে লগ ইন করতে সক্ষম নই !!!
আলিরিজা ফালাহ

/var/log/secureFeb 24 10:19:45 fallah su: pam_unix(su:auth): authentication failure; logname=fallah uid=501 euid=501 tty=pts/2 ruser=fallah rhost= user=root
এটির

এবং এই লাইনটি প্রায় 20 বার পুনরাবৃত্তি হয়/var/log/secure
আলিরেজা ফাল্লা

4: তবে যখন আমি চেষ্টা করি: su: incorrect password - এবং পাসওয়ার্ডটি সঠিক, কারণ আমি এসএসএইচ-তে একই পাসওয়ার্ড দিয়ে লগইন করতে পারি
আলিরেজা ফালাহ

আমি su alirezaআবারও একই সমস্যা এবং আবারও একই অ্যাকাউন্টে লগইন করার চেষ্টা করেছি
আলিরেজা ফাল্লা

0

আপনি যদি এর মতো ত্রুটি বার্তা পেয়ে থাকেন

su: PAM adding faulty module: /lib64/security/pam_tally.so
su: PAM unable to dlopen(/lib64/security/pam_tally.so): /lib64/security/pam_tally.so: cannot open shared object file: No such file or directory

এই পদক্ষেপটি করুন:

ln -s /lib64/security/pam_tally2.so /lib64/security/pam_tally.so

তারপর su চেষ্টা করুন। এটার কাজ করা উচিত.

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.