প্রশ্ন সুডো বিভিন্ন ব্যবহারকারী এবং চলমান পর্দা হিসাবে


আমি আজ খুশি যে একটি ভিন্ন ব্যবহারকারী হিসাবে স্ক্রিন চলমান যে আমি sudo কাজ করবে না!

অর্থাত

ssh bob@server         # ssh into server as bob
sudo su "monitor" -
screen                 # fails

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


151
2018-02-25 15:07


উত্স


এই ত্রুটি কি আপনি পেয়েছেন? "আপনার টার্মিনাল খুলতে পারে না '/ dev / pts / 0' - দয়া করে চেক করুন।" - Jim
হ্যাঁ যে এক। আমি বুঝতে পারছি কেন এটা ঘটছে কিন্তু একটি সমাধান আছে? - luckytaxi
আপনার কমান্ড একটি মন্তব্য - আমি মানুষ চলমান দেখছি sudo su "user" -। কেন ব্যবহার করবেন না sudo -u user -s? - Andrew Aylett
@ জিম: +1 অনুপস্থিত ত্রুটির বার্তা সরবরাহের জন্য। - Dennis Williamson
@ অ্যান্ড্রু বেশিরভাগ ছেলেরা আমি জানি sudo su - আমার মনে হয় মানুষ এটিকে কীভাবে ব্যবহার করতে পারে (আমার ক্ষেত্রে এটি আপনাকে যেহেতু কোনও সুডো ফ্ল্যাগগুলি জানতে হবে না sudo su - আমি মনে করি না আমি কখনও সুডো ম্যানপ্যাড পড়েছি :) - voretaq7


উত্তর:


চলমান চেষ্টা করুন script /dev/null ব্যবহারকারী হিসাবে আপনি su পর্দা চালু করার আগে - এটি একটি গেটো সামান্য হ্যাক, কিন্তু এটি পর্দা খুশি করা উচিত।


221
2018-02-25 16:46



Re: নিরাপত্তার প্রভাব, কোনটি সম্পর্কে আমি সচেতন নই (তবে এর মানে নেই যে কোনও নেই :) - আইআইআরসি এটি একটি নতুন টার্মিনাল ডিভাইস খোলার "স্ক্রিপ্ট" এর পার্শ্ব প্রতিক্রিয়াতে নির্ভর করে (যেমন ব্যবহারকারী এটি আমন্ত্রণ করে) , এবং যেহেতু আপনি স্ক্রিপ্টের আউটপুট / dev / null তে পাঠাচ্ছেন তাই ক্যাপচার করার জন্য কিছুই নেই। এটি টিটি গ্রুপ (আইএমএইচও) ব্যবহারকারীদের যুক্ত করার চেয়ে স্পষ্টভাবে নিরাপদ। - voretaq7
@nalply সত্যি আপনি যদি ইউনিক্স সিস্টেম অ্যাডমিনিস্ট্রেটর হন তবে একাধিক শেল বিভ্রান্তিকর খুঁজে পাবেন না - যে বলেছে, script চালু করতে ব্যবহার করা যেতে পারে screen। তারপর আপনি শুধুমাত্র দুবার প্রস্থান করতে হবে (একবার জন্য screen, একবার জন্য su)। (এই কিছু script আপনি যদি এটি পড়তে সময় নেন তবে মানুষ পৃষ্ঠাটি আপনার জন্য স্পষ্ট করে তুলতে পারে ...) - voretaq7
অথবা শুধু চালানো sudo -u bob script -q -c 'screen -dr myscreen' /dev/null। তারপরে আপনি শুধুমাত্র এক টার্মিনাল থেকে প্রস্থান / বিচ্ছিন্ন করতে পারেন। - Andy Shulman
ধন্যবাদ, এই আমাকে সংরক্ষিত। কিন্তু কেন এটা ঠিক করে? আমি যা বুঝি তা থেকে, এটি stdout থেকে ... কোথাও সবকিছু মুদ্রণ করে। এবং যে কোনোভাবে পর্দা সংশোধন করে। - sudo
@ সুডো তার কাজ করার জন্য script এটির ব্যবহারকারীর মালিকানাধীন নিজস্ব ট্যাটি ডিভাইসটি খোলে (এটি দেখুন /dev এবং আপনি এটি চালানোর পরে প্রদর্শিত হবে script)। screen তারপর যে tty ডিভাইস grabs (যা ব্যবহারকারী চলমান মালিকানাধীন screen সুতরাং এটি অ্যাক্সেস কোন সমস্যা আছে)। এটি একটি মোট হ্যাক কাজ, কিন্তু এটি কাজ করে। আমার কিছু মেশিনে এটি দেখে মনে হচ্ছে স্ক্রীনের নতুন সংস্করণ সেটুআইড-রুট ইনস্টল করছে বলে মনে হচ্ছে, যা কাজ করে, তবে এর মানে আপনার কাছে অন্য একটি সেটুয়েড-রুট বাইনারি ফ্লোরেটিং রয়েছে, যা কিছু লোককে যথাযথভাবে অস্বস্তিকর করে তোলে। - voretaq7


আমি প্রায় একটি মোড়ানো ফাংশন ব্যবহার করছি screen আমি যে ব্যবহারকারী (গুলি) জন্য sudo su করতে। এটি রেপার ফাংশন যা আমি ব্যবহারকারীকে যুক্ত করেছি ~/.bashrc:

ফাংশন পর্দা () {
  / usr / bin / script -q -c "/ usr / bin / screen $ {*}" / dev / null
}

এই আমাকে জন্য বিকল্প এবং পরামিতি সব ব্যবহার করতে পারবেন screen যে আমি ব্যবহার করতে পারেন। আমি systemwide এই ফাংশন নির্বাণ উপর চিন্তা করছি।


32
2017-08-13 13:45



পুরোপুরি কাজ করে। এই সিস্টেম-ওয়াইড চাইলে, আমি এটি /etc/bash.bashrc এ যোগ করার সুপারিশ করি - সমস্ত ব্যবহারকারী জুড়ে কাজ করে। - Someguy123
এই সঠিকভাবে পর্দা আর্গুমেন্ট উদ্ধৃত করা হবে না, অন্যথায় একটি ভাল সমাধান। - augurar


যেহেতু তারা হোস্টে এসএসএইচইং করছে তবে আপনি প্রতিটি ব্যবহারকারীর জন্য জনসাধারণের ssh কী যুক্ত করতে পারেন যার জন্য মনিটর অ্যাকাউন্টে মনিটর / .ssh / authorized_keys ফাইলের অ্যাক্সেস প্রয়োজন। তারপর প্রতিটি ব্যবহারকারীর দূরবর্তী মেশিনে তারা চালাতে পারেন

ssh -t monitor@remote.machine পর্দা -আরডি


7
2018-02-25 16:52



এটি অন্য একটি ভাল পদ্ধতি - যদিও আপনি অনুমোদিত কী ফাইলগুলিতে বাধ্যতামূলক কমান্ড উল্লেখ করতে হবে (প্রতি লাকিটি্যাক্সির "তাদের মনিটরের ব্যবহারকারীর অ্যাক্সেস দেওয়ার উপরে" প্রশ্নটির বাইরে "নোট - বাধ্যতামূলক কমান্ডগুলি তাদের সীমাবদ্ধ করতে পারে পর্দা অধিবেশন সংযুক্ত করা) - voretaq7
আমি নিশ্চিত নই যে আমার উত্তরটি কীভাবে মোকাবেলা করতে হবে, কারণ তিনি বলেন, "তাদের অ্যাক্সেস দেওয়ার ... প্রশ্নটির বাইরে", কিন্তু তিনি বলেন, "... তারা 'মনিটর ব্যবহারকারীর মধ্যে স্যুডো'। কিন্তু আমি সম্মত, authorized_keys কমান্ড সীমাবদ্ধতা বাধ্য করা উচিত যে যত্ন নিতে হবে। - Alex


অনুমান আমরা এই ত্রুটি সম্পর্কে কথা বলছি:

$ sudo su - bob
$ screen
Cannot open your terminal '/dev/pts/5' - please check.

এখানে একটি এক-মাছ ধরার নৌকা (উদাহরণস্বরূপ, "ওরফে gobob" হিসাবে ব্যবহার করা যেতে পারে):

sudo su - bob -c "script -c bash /dev/null"'

ব্যাখ্যা:

এটি একটি শেল (লগইন শেল মত) ব্যবহারকারী বব হিসাবে শুরু হবে। ব্যবহারকারী bob শুরু হয় script, যা একটি bash (ড্যাশ বা ksh হতে পারে ...) হতে বলা হয় এবং সেশনের একটি কপি দূরে নিক্ষিপ্ত বলা হয়।


6
2018-02-22 08:36





সম্ভবত ডিভাইসটিতে অনুমতিগুলির অনুমতি পরিবর্তন করতে হবে অথবা এমন একটি গোষ্ঠীকে মনিটর যুক্ত করতে হবে যার কাছে সেই ডিভাইসটি পড়ার অনুমতি আছে, এটি আমার প্রথম প্রবণতা হবে। কিন্তু আপনি এই কাজ করার নিরাপত্তা প্রভাব ওজন করতে হবে।


0
2018-02-25 15:51





আপনি বলে আপনি কি করবেন:

sudo su "monitor" -

আমি trailing ড্যাশ সম্পর্কে বিস্মিত করছি। আমি সাধারণতঃ

sudo su - username

ড্যাশ (su man পৃষ্ঠায়) "শেলটিকে লগইন শেল তৈরি করতে" বলে su বলে। এর মানে এটি সমস্ত স্বাভাবিক শেল প্রারম্ভ স্ক্রিপ্টগুলি উৎস করবে এবং প্যাথ এবং হোম সঠিকভাবে জিনিসগুলি সেট করবে।


0
2018-02-25 18:44



নাঃ। sudo su - username এবং sudo su username - একই জিনিস। - Tim Ludwinski


আমি শুধু এই সমস্যা আঘাত। এটা দিয়ে সমাধান chmod +rw $(tty) সুদো চলার আগে। এই সমাধানটির সাথে সমস্যাটি যে যে কেউ পরে আপনার টার্মিনালে সংযোগ স্থাপন এবং snoop করতে পারেন।


-2
2018-06-22 02:09



একটি মহান সমাধান মত শোনাচ্ছে। - Evan Carroll
@EvanCarroll এটি যেখানে এটি দেয় অংশ ব্যতীত এটি একটি দুর্দান্ত সমাধান সমগ্র বিশ্বের পড়া এবং তার টার্মিনাল অ্যাক্সেস লিখুন। শুধু একটি ছোটখাট নিরাপত্তা সমস্যা - কোনও প্রোগ্রাম এর যত্ন নেবে না তবে অবশ্যই পাসওয়ার্ডগুলি স্বীকার করার আগে টার্মিনাল নিরাপত্তা পরীক্ষা করে এমন কোনও কাজ নেই (gpg উদাহরণ স্বরূপ). এবং নিশ্চিতভাবেই সে কোনও সিস্টেমে থাকবে না এমন দূষিত ব্যবহারকারীরা যারা দেখতে পাবে tty এবং স্নিফ পাসওয়ার্ড ... - voretaq7
সতর্কাবস্থাএই বাড়িতে চেষ্টা না! এটা বিপজ্জনক!!! - ruizpauker