লিনাক্স: শাটডাউনটি সুরক্ষার জন্য কার্যকর করা যায় না


9

আজ আমি ভুল করে একটি প্রোডাকশন মেশিন বন্ধ করেছি কারণ আমি ভেবেছিলাম যে আমি আমার স্থানীয় মেশিনে আছি on আমি জানি, আভিজাত্য ভুল :-(

এটি আবার না ঘটে এর সমাধান হিসাবে, আমি শটডাউন কমান্ডের কার্যকর করার অনুমতিটি অপসারণ করার চিন্তা করছিলাম কারণ সেই যন্ত্রটি সর্বদা চালু থাকা উচিত।

এটা কি ভাল ধারণা? এটি করে আপনি কি কোনও অযাচিত পার্শ্ব প্রতিক্রিয়া দেখতে পাচ্ছেন?

চিয়ার্স, ড্যান


1
বেশিরভাগ সিসাদমিনরা কিছুটা সময় এমন কিছু করেন (এটি আবার কোন উইন্ডোটি ছিল? ওফ ...)
বার্ট সিলভারস্ট্রিম

3
খুশি হোন এটি কেবল একটি শাটডাউন ছিল। অন্যান্য লোকেরা ডিডি সরঞ্জাম (এ
কেএ

1
সিসাদমিনের বেশিরভাগ দায়িত্ব ও সরঞ্জাম মারাত্মক এবং মারাত্মক হতে পারে। মহান ক্ষমতা মহান দায়িত্ব সঙ্গে আসে। আপনি আপনার শাটডাউন কমান্ডটি chmod করতে পারেন 000, তবে পরের বার আপনি rm, dd, fsck, mv বা অন্য কোনও সম্ভাব্য বিপজ্জনক সরঞ্জামের সাথে গণ্ডগোল করতে পারেন। আমাদের প্রত্যেকে শীঘ্রই বা পরে ভুল করবে। আপনি যেটি করতে পারেন তা হ'ল সবচেয়ে খারাপের জন্য প্রস্তুত করা এবং আপনার ব্যাকআপ ইত্যাদি রয়েছে তা নিশ্চিত করা :-)
জ্যানি পিক্কারাইনেন

উত্তর:


21

সম্পূর্ণরূপে আরেকটি অ্যাপ্রোচ কীভাবে সতর্ক করা হবে যে আপনি প্রডাকশনাল মেশিনে কাজ করেন তা হ'ল টার্মিনাল চিহ্নিত করা। উদাহরণস্বরূপ, user@machine:~#পাঠ্য উত্পাদন মেশিনে লাল হতে পারে, বিকাশে সবুজ ইত্যাদি green এখানে এটি করার জন্য টিউটোরিয়ালটি এখানে রয়েছে: কালার বাশ প্রম্পট


+1, আমি আমার সমস্ত মেশিনের কোড রঙ করি: রঙিন ব্যাকগ্রাউন্ডে সাদা পাঠ্য, কমলা = অবকাঠামো; নীল = উত্পাদন; বেগুনি = পরীক্ষা / দেব। সাধারণ ওয়ার্কস্টেশন স্ট্যান্ডার্ড কালো পটভূমি রাখে।
ক্রিস এস

প্রায় প্রতিটি শেলের জন্য আরেকটি কীভাবে করবেন: understudy.net/custom.html
ক্রিস এস

উজ্জ্বল টিপটির জন্য +1, আমি নিজেই সে সম্পর্কে ভাবিনি।
কেনি রাশেয়ার্ট

7

আমি আপনাকে যে সর্বোত্তম পরামর্শ দিতে পারি তা হ'ল রুট হিসাবে লগইন না করা যদি না আপনার রুট অ্যাক্সেসের প্রয়োজন হয় এবং নিশ্চিত হয়ে নিন যে প্রতিটি মেশিনে আপনার আলাদা রুট / সুডো পাসওয়ার্ড রয়েছে।

শাটডাউন অ্যাক্সেসযোগ্য অযোগ্য করা একটি বিকল্প তবে এটি ভাল নয়। উভয় ক্ষেত্রেই ওরফে shutdownকরতে shutdown -aএবং touch /etc/shutdown.allowবাchmod a-x /sbin/shutdown

এছাড়াও, এটি কোথায় শেষ হয়? আপনি কি থামান, পুনরায় বুট এবং ইআরএসকেও বঞ্চিত করবেন?


4
এটা শেষ হয় না. সর্বদা আরও কিছু আছে, আবারও এবং আরও অনেক কিছু, এটি কখনও থামে না <বার বার প্রাচীরের মাথায় বার বার ...>
বার্ট সিলভারস্ট্রিম

"হত্যা" ভুলে যাবেন না। সর্বোপরি, "কিল -9 1" হ'ল একটি ইউনিক্স বাক্সটি বন্ধ করে দেওয়ার একটি কার্যকর কার্যকর উপায় (বা, ভাল, আগে ব্যবহৃত হত)।
ভ্যাটাইন

কিছু শাটডাউন নেই -a। প্লাস যেমন একটি উপনামের উপর নির্ভর করা নির্ভর করার মতোই alias rm='rm -i'- কোনও দিন যখন আপনার সত্যিকারের প্রয়োজন হবে তখন এটি সেখানে থাকবে না। তদুপরি, shutdown -aকেবল যাইহোক কেবল ব্যবহারিকতা সীমিত।
পরবর্তী বিজ্ঞপ্তি না দেওয়া পর্যন্ত বিরতি দেওয়া হয়েছে।

3

কিছু বিষয় বিবেচনা করুন:

  1. উত্পাদনের সময় আপনি কোনও প্রোডাকশন সিস্টেমে রুট হিসাবে কী করছেন? আপনার সিস্টেমে কনফিগার করুন যাতে আপনাকে প্রতিদিনের কাজের জন্য এগুলিতে রুট হতে না হয়। খুব ভাল কারণ ছাড়াই আপনার কখনই কোনও প্রোডাকশন সিস্টেমে রুট হওয়া উচিত নয়।
  2. গুরুত্বপূর্ণ পাঠ শিখুন। আপনি যখন রুট হন তখন আপনাকে এন্টার টিপানোর আগে দুবার পরীক্ষা করে দেখতে হবে। SUDO কোনও সুরক্ষা নয় যদি আপনি কেবল চিন্তাভাবনা না করে চালিয়ে যেতে আপনার পাসওয়ার্ডটি লিখেন। প্রম্পট কালারিং, যেমন মেকডলেসক দ্বারা উল্লিখিত হয়েছে আপনি ভুল সিস্টেমে নেই তা নিশ্চিত করার জন্য একটি দরকারী সরঞ্জাম।
  3. অন্তর্নির্মিত সরঞ্জামগুলির সাথে গণ্ডগোল করবেন না। এটি আপডেটগুলি ভাঙ্গার সম্ভাবনা রয়েছে এবং নতুন ভাড়াগুলি উন্মাদনা চালাবে। আপনি যদি কিছু পরিবর্তন করতে চান তবে আপনার নিজের উলামের ফাইলটি ব্যবহার করুন।

2
অগত্যা এই পোস্টের সাথে আমি একমত হই না। সিসাদমিন হিসাবে কাজ করার সময় আমার প্রোডাকশন মেশিনটির রুট প্রয়োজন হয় এমন ক্ষেত্রে এটি খুব সাধারণ। আপনি প্রশাসকদের নয়, ব্যবহারকারীদের তালাবন্ধ করুন। দ্রষ্টব্য, কোনও ডাউন-ভোট নেই, কারণ এটি আমার থেকে পৃথক হলেও এটি একটি বৈধ দৃষ্টিকোণ।
পিপি

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

3

আমি মনে করি না অনুমতি shutdownনিয়ে গণ্ডগোল করা পরিস্থিতি পরিচালনার উপায়। মূলত আপনি একটি পাঠ শিখেছি। চীন আপ।

আমি একই ধরণের জিনিসগুলি করেছি - এসএসএস সেশনের দীর্ঘ শৃঙ্খলা অর্জন করা, তারপরে আমি যে কোনও মেশিন দিয়ে shুকে পড়েছিলাম সেগুলির রুটের সাথে জগাখিচুড়ি করে নিজেকে কেটে ফেলি। আমি একটি আরএসসিএনসি অনুরোধটি পেয়েছি, যার ফলে বিশ্বের অপর প্রান্তে একটি সিস্টেমের বিন্যাস বিনষ্ট হয়। আমি rm -rf / pathএকটি প্রোডাকশন সার্ভারে চালিয়েছি। (এই সময়টি পুনরুদ্ধারগুলি কীভাবে কাজ করেছিল তা আমি শিখেছি))

সুতরাং, অনেক বেশি বয়স্ক এবং আশা করি কিছুটা বুদ্ধিমানের, এখন আমার নিজের উপর আরোপিত কঠোর বিধি রয়েছে।

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

আমার কাজের প্রকৃতির জন্য আমাকে প্রচুর বৈচিত্রপূর্ণ মূল অনুরোধে প্রচুর সময় ব্যয় করা প্রয়োজন, তবে অতীতে আমার ত্রুটিগুলির জন্য ধন্যবাদ আমি যখন শুরু করেছি তখন তার চেয়ে অনেক বেশি পরিস্থিতিগত সচেতনতা বজায় রেখেছি।



1

নির্ভর করে, সত্যই। আপনি কেবল কমান্ডটি মোড়ানোর চেষ্টা করতে পারেন তবে এর অর্থ হ'ল আপনি যদি সেই হালনাগাদকে প্রভাবিত করে এমন আপডেট বা আপগ্রেড করেন তবে আপনি এটির কথা ভুলে যেতে পারেন এবং এটি আপডেট আপডেট করতে পারেন। সিস্টেম শাটডাউন কমান্ডের সাথে বাজানো পিআইটিএ হতে পারে, বিশেষত যদি আপনার কাছে নতুন ভাড়া থাকে বা কোনও প্রতিস্থাপন থাকে যা আপনি জানেন না যে আপনি সিস্টেম বাইনারি নিয়ে খেলছেন not

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


1

আপনি কমপক্ষে সার্ভারে মেশিনের নাম অন্তর্ভুক্ত করার জন্য কমান্ড প্রম্পটটি সেট করতে বিবেচনা করতে পারেন। এটি ভবিষ্যতে অন্য কমান্ডগুলি ভুল মেশিনে চালিত হওয়া রোধ করতে সহায়তা করতে পারে। এটি আরও কার্যকর যদি মেশিনের নামগুলি আলাদা হয়ে যায় এবং আপনি সার্ভারের ভূমিকাগুলি সনাক্ত করতে রঙিন কোডও তৈরি করতে পারেন colored


0

একটি উপায় হ'ল ব্যবহার suএবং / অথবা সরাসরি লগইন না করা root। সরাসরি অ্যাকাউন্টে লগইন করা ভাল এবং rootস্থানীয় মেশিনে এবং ssh কীতে আলাদা পাসওয়ার্ড থাকা ভাল।

অবশ্যই এটি লাল '#' প্রম্প্টের জন্য দেখার পাশাপাশি রয়েছে।


0

হ্যাঁ, শাটডাউন কমান্ডে এক্সিকিউট বিট অপসারণ হ'ল দুর্ঘটনাজনিত শাটডাউনগুলি রোধ করার সহজতম এবং নিরাপদ উপায়, বিশেষত যদি আপনার মেশিনে কে-ডি-র মতো ডেস্কটপ পরিবেশ থাকে এবং লগ আউট করার সময় আপনি দুর্ঘটনাজনিত শাটডাউন প্রতিরোধ করতে চান।

নতুন লোকদের বিভ্রান্ত করার জন্য, আমি মনে করি তারা প্রথম কাজটি করবে ls -l /sbin/shutdownকেন এটি কাজ করে না তা খুঁজে বের করা (বিশেষত যদি তাদের ট্যাব-সম্পন্নকারী কার্যকর নামগুলির ভাল অভ্যাস থাকে)। স্পষ্টতই যদিও আপনার তাদের করা কোনও পরিবর্তন সম্পর্কে তাদের বলা উচিত।

অতিরিক্ত সুরক্ষার জন্য আপনি /etc/rc.localশাটডাউন কমান্ড থেকে এক্সিকিউট বিট অপসারণ করতে একটি লাইন যুক্ত করতে পারেন যাতে আপনি এটি পুনরায় বুট করার পরে পুনরায় সেট করতে ভুলবেন না।


0

আপনি কেবল / sbin / মূলের পথ থেকে সরাতে পারবেন। এটিকে কার্যকর করার জন্য আপনাকে পুরো পথটি টাইপ করতে হবে এবং এটি সাধারণত দুর্ঘটনার সমাধান করে।

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