লগআউট বা সংযোগ বিচ্ছিন্ন করার জন্য ফোর্স কমান্ডটি চালিত হতে হবে?


13

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


আপনি কি রিমোট-মেশিনে বা আপনি যেটির কাছ থেকে সংযোগটি সূচনা করেছেন তার দ্বারা আদেশটি কার্যকর করতে চান?
xx4h

উত্তর:


20

এটি করার সর্বোত্তম উপায় হ'ল প্যাম ব্যবহার করা ।

ইন /etc/pam.dআপনাকে অনেকগুলি ফাইল থাকবে, তাদের মধ্যে একজন বলা হবে sshd। আপনি যদি কেবল ssh এবং অন্য লগইনগুলিকে (যেমন একটি GUI, বা বাস্তব TTY) প্রভাবিত করতে না চান তবে আপনি এই ফাইলটি চান।
আপনি যদি সমস্ত লগইনকে প্রভাবিত করতে চান তবে আপনি একটি 'সাধারণ' ফাইল চাইবেন। এই অন্যান্য 'সাধারণ' ফাইলটির নাম ডিস্ট্রো অনুসারে পরিবর্তিত হয়, তবে আপনি বেস ফাইলটিতে না আসা পর্যন্ত আপনি ফাইলের বিবৃতি includeএবং substackবিবৃতি অনুসরণ করে এটি ট্র্যাক করতে পারেন sshd

একবার আপনি /etc/pam.dযে ফাইলটি ব্যবহার করতে চান তা শনাক্ত করার পরে, sessionবিভাগটিতে নিম্নলিখিতগুলির মতো একটি লাইন যুক্ত করুন :

session     optional    pam_exec.so quiet /etc/pam_session.sh

এর ফলে /etc/pam_session.shযখনই কেউ লগইন করে এবং লগ আউট করে (কৃত্রিমভাবে বা ug્રેસફাইযুক্ত হোক) কল করার ফলস্বরূপ ।

এখন আপনাকে কেবল তৈরি করতে হবে /etc/pam_session.sh। নীচে একটি উদাহরণ দেওয়া হয়েছে যে প্রতিবার কেউ যখন লগ আউট করে তখন কিছু চালানোর জন্য আপনি ব্যবহার করতে পারেন:

#!/bin/sh
if [ "$PAM_TYPE" = "close_session" ]; then
  something
fi

( chmod a+xস্ক্রিপ্টটি ভুলে যাবেন না )

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