লগ কমান্ডগুলি ssh- র মাধ্যমে কার্যকর করা হয়


8

আমি এসএসএইচ দ্বারা কার্যকর সমস্ত কমান্ড লগ করতে চাই।

বলুন,

ssh something@server.com COMMAND

আমি সার্ভার.কম এ "কম্যান্ড" লগ করতে চাই to

আমি ব্যাপকভাবে অনুসন্ধান করেছি কিন্তু কিছুই খুঁজে পেলাম না।

আরও একটি অনুরূপ প্রশ্ন আছে তবে আমি মনে করি না যে সেখানে কোনও সমাধান আছে।

কীভাবে "এসএসএইচে দূরবর্তী কার্যকরকরণ" লগ ইন করবেন

আমি সাথে একটি লাইভ ভিউ পেতে পারেন

pstree -p | grep ssh

আমি স্নোপি চেষ্টা করেছি, নিরীক্ষণ করেছি, এবং সুদোষ কিন্তু ssh- র মাধ্যমে এই আদেশগুলি লগ করতে পারি নি।

একটি http://freecode.com/projects/shwatchr আছে । তবে আমি স্ক্রিপ্টটি পরীক্ষার জন্য ডাউনলোড করতে পারছি না।

এটি করার জন্য অন্য কোনও উপায় আছে?

ধন্যবাদ .........

উত্তর:


4

এসএসএইচে মনোনিবেশ করার পরিবর্তে, একধাপ পিছনে যান এবং নিরীক্ষণ ব্যবহারের বিষয়টি বিবেচনা করুন। আমি ধরে নিচ্ছি যে আপনি যা চান তা হল ব্যবহারকারীদের ট্র্যাক করা, এসএসএইচ থেকে অন্যান্য প্রকারের লগিনের বিপরীতে যেটি করা হয়েছিল তা ট্র্যাক করে না।

man auditctl আপনি একটি সূচনা পয়েন্ট দেওয়া উচিত।


ভাল ইঙ্গিত, কিন্তু আমার জন্য খুব বিমূর্ত। auditctlলগ ssh কমান্ড ব্যবহার করতে কিভাবে ?
গুয়েতলি

3

আমি আমার সার্ভার মামলা ল্যাবে এই বিকল্পটি ব্যবহার করে একটি পরীক্ষা করেছি এবং এটি কাজ করে, তবে এর থেকে আরও ভাল উপায় আছে।

ForceCommand logger -p user.notice "$SSH_ORIGINAL_COMMAND"

এটি প্রেরিত কমান্ডটি লগ করে কিন্তু এটি দূরবর্তী সিস্টেমে কার্যকর করে না।
মাইকেল ম্যাকগারাহ

1

আমি এটি করার একটি উপায় খুঁজে পেয়েছি। জন এম সিম্পসন ( https://www.jms1.net/ ) দ্বারা লিখিত একটি পার্ল স্ক্রিপ্ট রয়েছে ।

আপনাকে যা করতে হবে তা হ'ল অ্যাড

command="#{path to log-session}"

আপনার key / .ssh / অনুমোদিত_মানের প্রতিটি কী এর আগে

এটি কেবলমাত্র আপনার পাসওয়ার্ড-কম এসএসএস থাকলেই কাজ করে তবে এটি আমার উদ্দেশ্যটিকে কিছুটা সমাধান করে।

http://www.jms1.net/log-session


1

আমার ক্ষেত্রে আমার ঠিক একই চাহিদা ছিল। এই পদ্ধতির একমাত্র সতর্কতা হ'ল আপনি যদি ssh কী ব্যবহার না করেন তবে এটি কীভাবে কাজ করবেন তা নিশ্চিত I'm কমান্ডটি কার্যকর করার আগে লগ করার জন্য আমি একটি ছোট বাশ স্ক্রিপ্ট তৈরি করেছি:

#!/bin/bash
echo "$(date -Is) ${SSH_ORIGINAL_COMMAND}" >> ~/sshcommands.log
sh "${SSH_ORIGINAL_COMMAND}"

আমি এই আদেশটি ~ / bin / লগ-কমান্ডগুলিতে সংরক্ষণ করেছি এবং তারপরে এটি কার্যকর করা ( chmod +x ~/bin/log-commands) তৈরি করেছিলাম ।

অনুমোদিত_কাইজ ফাইলে, আমি command=লগ করতে চাইলে এসএসএইচ কী সম্পর্কিত লাইনটিতে প্যারামিটার যুক্ত করেছি, সুতরাং এটি লগ-কমান্ড স্ক্রিপ্টটি চালিত করতে বাধ্য হবে:

কমান্ড = "/ হোম / ট্রিকি / বিন / লগ-কমান্ড" ssh-rsa

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


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