প্রোড সার্ভার অ্যাক্সেসের কারণ লগ করতে সিসাদমিনদের বাধ্য করতে একটি কৌশল প্রয়োজন


17

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

আমার প্রথম চিন্তাটি ছিল ব্যবহারকারীর শেলটি কোনও স্ক্রিপ্টে পরিবর্তন করা যা এর মতো কিছু করে

vim /logs/logindate.txt 
bash -l

এর চেয়ে ভাল বা আরও বেশি প্রযুক্তি আছে কি?

দ্রষ্টব্য: এই ধারণাটি হ'ল এই ব্যবহারকারীরা সিসাদমিন এবং সিস্টেমটি সাবলট না করে লগ এন্ট্রি করতে চান they তারা প্রায়শই এটি করতে ভুলে যান। সুতরাং, তারা যদি এটি সিটিআরএল-সি করতে পারে তবে ভাল ... আমরা ধরে নিচ্ছি যে তারা তা করবে না।


6
আপনি একটি কর্মপ্রবাহ / পদ্ধতিগত সমস্যার একটি প্রযুক্তিগত সমাধান সন্ধান করার চেষ্টা করছেন। আইএমএইচও, এই জাতীয় প্রচেষ্টা ব্যর্থতার জন্য ডুমডড, এবং প্রকৃত কর্মপ্রবাহ / পদ্ধতিগত সমস্যাটি সরাসরি অ-প্রযুক্তিগত মাধ্যমে সমাধান করা উচিত।
জন

11
ধন্যবাদ, বন্ধু. আমি আচরণগত পরিবর্তনের প্রচারের জন্য প্রযুক্তি ব্যবহার করার চেষ্টা করছি। আমি মনে করি প্রতিবার তারা ভুলে গেলে আমি কেবল তাদেরকে একটি ক্লিপ দিয়ে ক্লাব করতে পারি তবে আমি মনে করি এইচআর প্রযুক্তিগত পদ্ধতির পছন্দ করে।

8
@ জন কর্মপ্রবাহে প্রয়োগ এবং সহায়তা করার প্রযুক্তির উদ্দেশ্যটির অংশ নয়?
মাইকেল মার্টিনেজ

1
শৃঙ্খলাবদ্ধ পদক্ষেপ, সমাপ্তি অবধি এবং সহ।
মাইকেল হ্যাম্পটন

4
হ্যাঁ, তবে প্রশ্নটি "আপনার করা উচিত নয়?" প্রশ্ন ছিল, "আপনি এটি করতে পারেন?" একটি মূল্য মূল্য; একটি এই ফোরামের যোগ্য প্রযুক্তিগত প্রশ্ন। আমি আমার দল পরিচালনা করার ক্ষমতা নিয়ে আত্মবিশ্বাসী। আমি বড় সাফল্যের সাথে শিলাটি ব্যবহার করতে পারি, তবে এত রক্ত ​​blood আমি সুন্দর হতে পছন্দ করি আমার ভাল অ্যাডমিন রয়েছে কেবল ভুলে যাওয়া। :) দেখে মনে হচ্ছে @ আরোন-কোপালিটি এবার লোক man ধন্যবাদ সবাইকে!

উত্তর:


19

Pam_exec.so তাকান । আপনি পিএএম এর সিস্টেম-প্রমাণীকরণের সেশন ইন্টারফেসে লগইন করতে একটি স্ক্রিপ্ট চালাতে পারেন। ব্যবহারকারীর শেল পাওয়ার আগে স্ক্রিপ্টটি রুট হিসাবে চলে, তাই এটি দিয়ে ইনপুট ক্যাপচার না করে read? আপনি চেষ্টা করতে পারেন, এবং readব্যবহারকারীর কাছ থেকে কোনও কারণ পেতে এবং একটি loggerবিবৃতি দিয়ে সিসলগে লগ করতে পারেন । (আমি নীচে বাদ দিয়েছি, তবে বিনা কারণে কাউকে বেরিয়ে আসা থেকে রক্ষা করতে আপনি সিটিআরএল + সি ট্র্যাপ করতে পারেন)) PAM_USER লগ ইন করা ব্যক্তির উপর সেট করা হবে, সুতরাং আপনি এটি লগার স্টেটমেন্টে অন্তর্ভুক্ত করতে পারেন।

উদাহরণ:

/Etc/pam.d/sstm-auth এ সেশনের শীর্ষে:

session required pam_exec.so /usr/local/sbin/getreason

এবং / ইউএসআর / স্থানীয় / এসবিন / গেটেরেসন:

#!/bin/bash
read -p "Reason for logging into production: " reason
logger -t $(basename $0) "$PAM_USER logged in with reason: ${reason}"

এটি পুরোপুরি কার্যকর না হলে ক্ষমা প্রার্থনা করুন। আমি এটি পরীক্ষা করিনি, তবে সম্প্রতি অনুরূপ কিছু করেছি। (এটি ইনপুট ক্যাপচার করে নি))


সম্পাদনা: এটি সম্পর্কে আমি যত বেশি ভাবি, তত বেশি চিন্তা করি না যে এটি যে পর্যায়ে চলে তার কারণে এটি কাজ করবে। একই getreasonতোমাদের স্থলাভিষিক্ত পর স্ক্রিপ্ট কাজ করা উচিত $PAM_USERসঙ্গে $(logname), কিন্তু এটা মৃত্যুদন্ড কার্যকর করা প্রয়োজন হতে পারে /etc/profile। (প্রথম ইন্টারেক্টিভ শেল জন্য পরীক্ষা।)

আমি উভয় বিকল্প ছেড়ে চলে যাব কারণ এটি অন্য কোনও কিছু না হলে কমপক্ষে আপনাকে সঠিক দিকে চিন্তা করা উচিত।


1
এই জন্য আপনাকে অনেক ধন্যবাদ. এটি নিখুঁত দেখাচ্ছে। আর কিছু না হলে আমি ইনপুট ক্যাপচার করতে সি তে কিছু জিনিস লিখতে পারি। আমি এটি বাস্তবায়ন করব এবং এটি যদি কাজ করে তবে আপনাকে জানাব।

1
@ বিগিডিএভিপস: সহায়ক পরামর্শ: লগ রাখার জন্য যদি আপনি একটি ফ্ল্যাট ফাইল ব্যবহার করেন, তবে এটি গিট বা এসএনএন-এ রাখুন যাতে আপনার ইতিহাস থাকে
মাইকেল মার্টিনেজ

7

বিকল্পটি একটি সুবিধাপূর্ণ অ্যাকাউন্ট ম্যানেজমেন্ট সমাধান, যেখানে প্রশাসকদের তাদের নিজস্ব অ্যাকাউন্ট দিয়ে অ্যাক্সেস দেওয়ার পরিবর্তে, প্রশাসক অ্যাকাউন্টগুলি তৃতীয় পক্ষ দ্বারা এসক্রোতে রাখা হয় এবং প্রশাসকরা উত্পাদন সিস্টেম অ্যাক্সেস করতে পারার আগে বাধ্যতামূলক পদ্ধতিগুলি অনুসরণ করতে হবে http: // en। m.wikipedia.org/wiki/Privileged_Identity_Management


0

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


0

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

অনুমোদনগুলি প্রতিকার এবং অপারেশন অর্কেস্টেশন, বা এসএ-তে প্রশাসনিক লগইন ইত্যাদির মাধ্যমে করা যেতে পারে etc.

সব হচ্ছে বলেন যে, এন্টারপ্রাইজ অটোমেশন ও পরিচালনা সরঞ্জামের বাহিরে, @ হারুন কপলি এর উত্তর একটি চমৎকার পছন্দ।


* আমি একজন প্রবীণ এইচপিএসএ, এইচপিইও, এবং এইচপি অটোমেশন স্যুট পরামর্শদাতার অন্যান্য দিক


0

সমাধানের সন্ধানের জন্য, আমি অ্যারন কোপিলির উত্তরটি পড়লাম এবং ভাবলাম: "আমি যদি আমার ব্যবহারকারীর শেলটি পরিবর্তন করি তবে কী হবে?"

আমি আমার উবুন্টু 14.04 মেশিনে এটি সফলভাবে করেছি:

# usermod -s /usr/bin/loginScript username

আপনার স্ক্রিপ্টে আপনি লগইনের কারণটি সহজভাবে ক্যাপচার করতে পারেন। আমার এইরকম:

#!/bin/bash
read -p "Tell me why you logged in:" reason
echo "You told me: $reason" >> /var/log/reasonLogin.log
/bin/bash

একটি বিষয় আপনার লক্ষ্য করা উচিত: স্ক্রিপ্টটি রুট হিসাবে চালিত হয় না, তাই আপনাকে এই কাজটি করার জন্য ব্যবহারকারীকে কিছু অনুমতি দিতে হতে পারে।

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