Su এবং sudo এর মধ্যে পার্থক্য এবং লিনাক্সে sudo কীভাবে কনফিগার করা যায়


লিনাক্স সিস্টেম এর যে কোনও অংশের তুলনায় অনেক সুরক্ষিত। লিনাক্সে সুরক্ষা প্রয়োগের অন্যতম উপায় হ'ল ব্যবহারকারীর পরিচালনা নীতি এবং ব্যবহারকারীর অনুমতি এবং সাধারণ ব্যবহারকারীরা কোনও সিস্টেম ক্রিয়াকলাপ করার জন্য অনুমোদিত নন।

যদি কোনও সাধারণ ব্যবহারকারীর যেকোন সিস্টেমে ব্যাপক পরিবর্তন করতে হয় তবে তাকে ‘সু’ বা ‘সুডো’ কমান্ডটি ব্যবহার করতে হবে।

দ্রষ্টব্য - এই নিবন্ধটি উবুন্টু ভিত্তিক বিতরণগুলিতে বেশি প্রযোজ্য তবে জনপ্রিয় লিনাক্স বিতরণগুলির বেশিরভাগ ক্ষেত্রেও প্রযোজ্য।

‘সু’ আপনাকে আপনার মূল পাসওয়ার্ড কে অন্য ব্যবহারকারীদের সাথে ভাগ করতে বাধ্য করে যেখানে "sudo" রুট পাসওয়ার্ড ছাড়াই সিস্টেম কমান্ড কার্যকর করতে সক্ষম করে। ‘সুডো’ আপনাকে সিস্টেম কমান্ডগুলি কার্যকর করতে নিজের পাসওয়ার্ড ব্যবহার করতে দেয় অর্থাত্ মূল পাসওয়ার্ড ছাড়াই সিস্টেমের দায়িত্ব অর্পণ করে।

‘সুডো’ হ'ল একটি মূল বাইনারি সেতুড , যা অনুমোদিত ব্যবহারকারীদের পক্ষে রুট কমান্ডগুলি কার্যকর করে এবং ব্যবহারকারীদের "sudo" এর পরে সিস্টেম কমান্ড কার্যকর করতে তাদের নিজস্ব পাসওয়ার্ড প্রবেশ করাতে হবে।

‘সুডো’ কার্যকর করতে পারে এমন ব্যবহারকারীদের তালিকা যোগ/সরাতে আমরা ‘/ usr/sbin/visudo’ চালাতে পারি।

$ sudo /usr/sbin/visudo

‘/ ইউএসআর/এসবিন/ভিসুডো’ ফাইলটির স্ক্রিন শটটি এরকম কিছু দেখাচ্ছে:

সূডো তালিকাটি ডিফল্টরূপে নীচের স্ট্রিংয়ের মতো দেখাচ্ছে:

root ALL=(ALL) ALL

দ্রষ্টব্য:/usr/sbin/ভিসুডো ফাইল সম্পাদনা করতে আপনাকে অবশ্যই মূল হতে হবে।

অনেক পরিস্থিতিতে, সিস্টেম অ্যাডমিনিস্ট্রেটর, ক্ষেত্রের জন্য বিশেষত নতুনটিকে "রুট ALL = (ALL) ALL") একটি টেমপ্লেট হিসাবে আবিষ্কার করে এবং অন্যদের মধ্যে সীমাহীন অ্যাক্সেস দেয় যা সম্ভবত খুব ক্ষতিকারক হতে পারে।

নীচের প্যাটার্নের মতো কিছুতে ‘/ usr/sbin/visudo’ ফাইল সম্পাদনা করা সত্যিই খুব বিপজ্জনক হতে পারে, যদি না আপনি সমস্ত তালিকাভুক্ত ব্যবহারকারীদের পুরোপুরি বিশ্বাস করেন।

root ALL=(ALL) ALL
adam ALL=(ALL) ALL
tom ALL=(ALL) ALL
mark ALL=(ALL) ALL

একটি সঠিকভাবে কনফিগার করা ‘সুডো’ অত্যন্ত নমনীয় এবং কমান্ডের সংখ্যা যা চালানো দরকার তা সঠিকভাবে কনফিগার করা যেতে পারে।

কনফিগার করা ‘সুডো’ লাইনের সিনট্যাক্সটি হ'ল:

User_name Machine_name=(Effective_user) command

উপরের সিনট্যাক্সকে চার ভাগে ভাগ করা যায়:

  1. ব্যবহারকারীর নাম: এটি ‘সুডো’ ব্যবহারকারীর নাম
  2. মেশিন_নাম: এটি হোস্টের নাম, যাতে 'sudo' আদেশটি বৈধ। আপনার যখন প্রচুর হোস্ট মেশিন থাকে তখন দরকারী
  3. (কার্যকর_ ব্যবহারকারী): ‘কার্যকর ব্যবহারকারী’ যা কমান্ডগুলি কার্যকর করতে অনুমোদিত। এই কলামটি আপনাকে ব্যবহারকারীদের সিস্টেম কমান্ড সম্পাদন করতে দেয়
  4. কমান্ড: কমান্ড বা কমান্ডগুলির একটি সেট যা ব্যবহারকারী চালাতে পারে

কিছু পরিস্থিতি এবং তাদের সম্পর্কিত ‘সুডো’ লাইন:

<স্প্যান শৈলী = "রঙ: # 800000;"> কিউ 1 আপনার একটি ব্যবহারকারীর চিহ্ন রয়েছে যা ডেটাবেস প্রশাসক। আপনি তাকে কেবল ডেটাবেস সার্ভারে (বিটা.ডাটাবেস_সভার.কম) সমস্ত অ্যাক্সেস সরবরাহ করার কথা, কোনও হোস্টে নয়।

উপরের পরিস্থিতির জন্য ‘সুডো’ লাইনটি এইভাবে লেখা যেতে পারে:

mark beta.database_server.com=(ALL) ALL

<স্প্যান শৈলী = "রঙ: # 800000;"> কিউ 2 আপনার একটি ব্যবহারকারী ‘টম’ রয়েছে যা উপরের ব্যাখ্যায় একই ডাটাবেস সার্ভারে রুট ব্যতীত অন্য হিসাবে সিস্টেম কমান্ড কার্যকর করার কথা।

উপরের পরিস্থিতির জন্য ‘সুডো’ লাইনটি এইভাবে লেখা যেতে পারে:

mark beta.database_server.com=(tom) ALL

<স্প্যান শৈলী = "রঙ: # 800000;"> Q3 আপনার একটি সুডো ব্যবহারকারী ‘বিড়াল’ রয়েছে যা কেবল কুকুরের কমান্ড চালানোর কথা।

উপরের পরিস্থিতি বাস্তবায়নের জন্য আমরা ‘সুডো’ লিখতে পারি:

mark beta.database_server.com=(cat) dog

<স্প্যান শৈলী = "রঙ: # 800000;"> কি 4 যদি ব্যবহারকারীকে বেশ কয়েকটি কমান্ড দেওয়ার প্রয়োজন হয়?

যদি কমান্ডের সংখ্যা, ব্যবহারকারীর চালনার কথা 10 বছরের কম হয়, তবে নীচের চিত্রের মতো আমরা সমস্ত কমান্ডের পাশাপাশি সাদা স্থান রেখে দিতে পারি:

mark beta.database_server.com=(cat) /usr/bin/command1 /usr/sbin/command2 /usr/sbin/command3 ...

কমান্ডের এই তালিকাটি যদি পরিসরের পরিবর্তিত হয়, যেখানে প্রতিটি কমান্ড ম্যানুয়ালি টাইপ করা আক্ষরিকভাবে সম্ভব না হয় তবে আমাদের উপকরণ ব্যবহার করতে হবে। উপনাম! হ্যাঁ লিনাক্স ইউটিলিটি যেখানে একটি দীর্ঘ-দীর্ঘ কমান্ড বা কমান্ডের একটি তালিকা একটি ছোট এবং সহজ কীওয়ার্ড হিসাবে উল্লেখ করা যেতে পারে।

কয়েকটি ওরফে উদাহরণ, যা ‘সুডো’ কনফিগারেশন ফাইলে প্রবেশের জায়গায় ব্যবহার করা যেতে পারে।

User_Alias ADMINS=tom,jerry,adam
user_Alias WEBMASTER=henry,mark
WEBMASTERS WEBSERVERS=(www) APACHE
Cmnd_Alias PROC=/bin/kill,/bin/killall, /usr/bin/top

ব্যবহারকারীদের জায়গায়, কোনও সিস্টেম গ্রুপ নির্দিষ্ট করা সম্ভব যা নীচে যেমন ‘%’ প্রত্যয়যুক্ত সেই গোষ্ঠীর অন্তর্ভুক্ত:

%apacheadmin WEBSERVERS=(www) APACHE

<স্প্যান শৈলী = "রঙ: # 800000;"> কি 5 পাসওয়ার্ড প্রবেশ না করে একটি ‘সুডো’ কমান্ড কার্যকর করার বিষয়ে কীভাবে?

আমরা ‘NOPASSWD’ পতাকা ব্যবহার করে পাসওয়ার্ড প্রবেশ না করেই একটি ‘sudo’ কমান্ড কার্যকর করতে পারি।

adam ALL=(ALL) NOPASSWD: PROCS

এখানে ব্যবহারকারী ‘অ্যাডাম’ পাসওয়ার্ড না দিয়েই “পিআরসিএস” এর আওতায় যুক্ত সমস্ত কমান্ড কার্যকর করতে পারে।

“সুডো” আপনাকে ‘সু’ এর তুলনায় ভারী নমনীয়তা সহ একটি শক্তিশালী এবং নিরাপদ পরিবেশ সরবরাহ করে। তদুপরি "sudo" কনফিগারেশন সহজ। কিছু লিনাক্স ডিস্ট্রিবিউশনগুলিকে ডিফল্টরূপে "sudo" সক্ষম করা হয় যখন আজকের বেশিরভাগ ডিস্ট্রোজের এটিকে সুরক্ষা ব্যবস্থা হিসাবে সক্ষম করার দরকার হয়।

সুডোতে কোনও ব্যবহারকারী (বব) যুক্ত করতে নীচের কমান্ডটি রুট হিসাবে চালান।

adduser bob sudo

এখন এ পর্যন্তই. আমি আবার একটি আকর্ষণীয় নিবন্ধ নিয়ে এখানে থাকব। ততক্ষণ টিউমিন্টের সাথে সংযুক্ত থাকুন এবং সংযুক্ত থাকুন। আমাদের মন্তব্য বিভাগে আপনার মূল্যবান প্রতিক্রিয়া আমাদের দিতে ভুলবেন না।