সঠিক .ssh/config অনুমতি সেট করা

Setting Proper Ssh Config Permissions



এসএসএইচ প্রোটোকল একটি সুরক্ষিত প্রোটোকল যা সাধারণত রাউটার এবং সুইচ সহ দূরবর্তী ডিভাইস যেমন সার্ভার এবং নেটওয়ার্ক ডিভাইসগুলির সাথে সংযোগ স্থাপনের জন্য ব্যবহৃত হয়। এটি একটি ক্লায়েন্ট-সার্ভার সেটআপে কাজ করে এবং, ডিফল্টরূপে, পোর্ট 22 এ শোনে (যদিও এটি প্রয়োজন হলে পরিবর্তন করা যেতে পারে)। এসএসএইচ ক্লায়েন্ট এবং দূরবর্তী হোস্টের মধ্যে যোগাযোগ এনক্রিপটেড এবং ইভেসড্রপিং থেকে নিরাপদ তা নিশ্চিত করার জন্য বিভিন্ন এনক্রিপশন এবং হ্যাশিং কৌশল ব্যবহার করে।

SSH ফাইলগুলি সংরক্ষণ করা হয় .ssh ফোল্ডার এটি একটি লুকানো ফোল্ডার যা হোম ডিরেক্টরিতে থাকে। দ্য .ssh ডিরেক্টরি ডিফল্টরূপে তৈরি করা হয় না; এটি তৈরি করা হয় যখন আপনি একটি দূরবর্তী হোস্টের সাথে একটি সংযোগ শুরু করেন বা ssh-keygen প্রাইভেট এবং পাবলিক অথেন্টিকেশন কী জেনারেট করার কমান্ড যখন আপনি চান পাসওয়ার্ডবিহীন ssh প্রমাণীকরণ সেট আপ করুন।







দ্য .ssh ফোল্ডার অপরিহার্য SSH ফাইল রয়েছে যেমন:



  1. সরকারি এবং ব্যক্তিগত কী ( id_rsa এবং id_rsa.pub )।
  2. দ্য পরিচিত_হোস্ট ফাইল - আপনার সাথে সংযুক্ত সমস্ত দূরবর্তী সিস্টেমের সর্বজনীন কী রয়েছে।
  3. দ্য কনফিগ ক্লায়েন্ট কনফিগারেশন ফাইল

যদি কনফিগ ফাইলের অস্তিত্ব নেই, দেখানো হিসাবে আপনি সহজেই একটি তৈরি করতে পারেন।



$ touch ~/.ssh/config

.Ssh/config ক্লায়েন্ট কনফিগারেশন ফাইল

প্রতিবার যখন আপনি একটি এসএসএইচ সংযোগ শুরু করেন, আপনাকে আইপি ঠিকানা বা ডোমেইন নাম এবং পোর্ট এসএসএইচ শোনার মতো বিশদ উল্লেখ করতে হবে। উদাহরণ স্বরূপ,

$ ssh [ইমেল সুরক্ষিত] -পি 22

এই ধরনের বিবরণ সর্বদা মনে রাখা ব্যস্ত হতে পারে। এবং এই যেখানে ।/.ssh/কনফিগ ফাইল আসে ।/.ssh/কনফিগ ফাইল একটি কনফিগারেশন ফাইল যা আপনাকে রিমোট হোস্টের প্রতি ব্যবহারকারীর কনফিগারেশন বিবরণ কনফিগার করতে দেয়। এটি আপনাকে সংযোগের জন্য প্রয়োজনীয় প্রতি-হোস্টের বিবরণ স্মরণ করার সর্বদা যন্ত্রণা বাঁচায়।

একটি নমুনা কনফিগ ফাইল দেখানো হিসাবে প্রদর্শিত হবে।

হোস্ট স্টেজিং-সার্ভার
HostName 192.168.2.103
ব্যবহারকারী জেমস
পোর্ট 22

দূরবর্তী হোস্টে একটি সাধারণ SSH কমান্ড নিম্নরূপ দেখাবে:

$ ssh স্টেজিং-সার্ভার

.Ssh/config ফাইল অনুমতি

ডিফল্টরূপে, ।/.ssh/কনফিগ ক্লায়েন্ট কনফিগারেশন ফাইলটি রয়েছে 644 ফাইল অনুমতি। আপনি এটি ব্যবহার করে যাচাই করতে পারেন ls -la নিম্নরূপ কমান্ড।

$ ls -la। / .ssh / config

এটি বোঝায় যে ফাইলের মালিক এবং গোষ্ঠী উভয়েই পড়ার এবং লেখার অনুমতি (rw) এবং অন্য ব্যবহারকারীদের কেবলমাত্র পড়ার অনুমতি (r) আছে।

-আরডাব্লু-আরডাব্লু-আর-

বিঃদ্রঃ:

একটি নিয়ম হিসাবে, অন্য ব্যবহারকারীদের লেখার অনুমতি কখনই বরাদ্দ করবেন না। এটি আপনার ফাইলের জন্য নিরাপত্তা ঝুঁকি তৈরি করে এবং অন্য ব্যবহারকারীরা যারা নিজে বা আপনার গ্রুপে নেই তারা ফাইলের বিষয়বস্তু পরিবর্তন করতে পারে। লেখার অনুমতি বরাদ্দ করার ফলে ' খারাপ মালিক বা অনুমতি নীচে নির্দেশিত ত্রুটি।

এখানে, কনফিগ ফাইলটি অনুমতি 666 বরাদ্দ করা হয়েছিল। এর অর্থ হল যে সবাই ফাইলটি পড়তে এবং লিখতে পারে।

একইভাবে, একই ক্ষেত্রে এখানে প্রযোজ্য যেখানে ফাইলটিকে 777 অনুমতি দেওয়া হয়েছে। এটি বোঝায় যে প্রত্যেকে ফাইলটি পড়তে, লিখতে এবং সম্পাদন করতে পারে। সহজভাবে বলতে গেলে, যে কেউ সম্ভাব্য বিপজ্জনক ফাইলের সমস্ত অধিকার রাখে।

সেরা অনুশীলন সুপারিশ করে যে আপনি ডিফল্ট অনুমতিগুলি এখানে রেখে যান 664 অথবা 600, যেখানে শুধুমাত্র মালিকের পড়া এবং লেখার অনুমতি আছে (rw)। এইভাবে, ফাইলটি অননুমোদিত ব্যবহারকারীদের দ্বারা সংশোধন করা থেকে নিরাপদ থাকে।

অতিরিক্তভাবে, নিশ্চিত করুন যে আপনি ফাইলটির মালিক। যদি ফাইলটি অন্য ব্যবহারকারীর কাছে পরিবর্তন করা হয়, SSH কনফিগ ফাইলে প্রদত্ত হোস্টনাম সমাধান করতে পারবে না।

নীচের উদাহরণে, ।/.ssh/কনফিগ মালিকানা নির্ধারণ করা হয়েছে বব: বব।

এই সমস্যাটি সমাধান করার জন্য, আমি। ব্যবহার করে মূল ফাইলের মালিকানায় ফিরে এসেছি চাউন কমান্ড

$ sudo chown james: james ~/.ssh/config

ফাইলের অনুমতিগুলি প্রত্যাবর্তনের সাথে, এখন কনফিগ ফাইলে নির্দিষ্ট হোস্টনাম অনুসারে এসএসএইচ কমান্ড চালু করে আমি অ্যাক্সেস পেতে পারি।

$ ssh স্টেজিং-সার্ভার

এবং এটিতে অনুমতি সেট করার বিষয়ে আপনার যা জানা দরকার ।/.ssh/কনফিগ ফাইল নিশ্চিত করুন যে আপনি বাকি ব্যবহারকারীদের পড়ার অনুমতিগুলি সেট করবেন না এবং নিশ্চিত করুন যে আপনি ফাইলটির মালিক।