আমি কীভাবে এসএসএইচ "শেষ লগইন" বার্তাটি সম্পাদনা করব?


16

আমি Last login:দিনের বার্তা সহ প্রিন্ট করা তথ্যগুলি সম্পাদনা করতে চাই , তবুও আমি স্ক্রিপ্টটি খুঁজে পাই না যা উত্পন্ন করে এবং প্রতিধ্বনিত করে।

সহজেই সম্পাদনযোগ্য শেল স্ক্রিপ্টে বা বাইনারি বন্ধ করে এটি কোথায় সংজ্ঞায়িত করা হয়েছে?


দ্রষ্টব্য, এটি সার্ভারফল্ট থেকে পৃথক: এসএসএস শুরু হলে আমি কীভাবে স্বাগতম বার্তাটি সম্পাদনা করতে পারি? । "শেষ লগইন" তথ্যটি ভিতর থেকে মুদ্রিত নয়/etc/update-motd.d/ , পরিবর্তে PrintLastLogপতাকাটি সেট করে সংজ্ঞায়িত করা হয়েছে , এবং তাই দিনের বার্তার অন্যান্য অংশের মতো সম্পাদনা করা যায় না।


এই তথ্যগুলিতে utmpএবং wtmpফাইলগুলি সংরক্ষণ করা হয় (বিতরণের উপর নির্ভর করে, চেক ইন /var/run/utmpবা ডিরেক্টরিতে /var/log/utmpসন্ধান করুন /var)। এই ফাইলগুলি পাঠ্য হিসাবে নয়, বাইনারি হিসাবে সংরক্ষণ করা হয়েছে, সুতরাং এগুলি সম্পাদনা করার জন্য আপনার বিশেষ সরঞ্জামের প্রয়োজন হবে। Utmp ফাইল প্রতিটি ব্যবহারকারীর বর্তমান লগইন অবস্থার উপর নজর রাখে। ডাব্লুটিএমপি ফাইল সমস্ত লগইন এবং লগআউট ইতিহাস রেকর্ড করে। এগুলি সম্পাদনা করার জন্য আপনার বিশেষ সরঞ্জামগুলির প্রয়োজন হবে তবে আমি সত্যিই কিছু খুঁজে পাইনি।
ফোপস

উত্তর:


14

দেখে মনে হচ্ছে মুদ্রিত লাইনের বিন্যাসটি এখানে সংকলিত হয়েছে sshd:

[me@risby ~]$ ssh lory
Last login: Fri May 23 10:59:01 2014 from 2a01:2c0:e:300:7271:bcff:feac:445a
[me@lory ~]$ strings /usr/sbin/sshd | grep -i "last login"
Last login: %s
Last login: %s from %s

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

সম্পাদনা : সীমাবদ্ধ ক্ষেত্রে, আপনি http://www.openssh.org এ সূত্রটি পেতে পারেন । তবে আপনি আমাদের বলবেন না যে আপনি ওপেনএসএইচ, বা আপনার প্ল্যাটফর্ম সম্পর্কে কিছু ব্যবহার করছেন, সুতরাং এটি আরও নির্দিষ্ট করে বলা শক্ত। যদি এটি একটি লিনাক্স সিস্টেম হয় তবে আপনার উত্সটি আপনার ডিস্ট্রোতে যথাযথভাবে যথাযথ করার জন্য এবং আপনার ডিস্ট্রো-নির্দিষ্ট প্রক্রিয়াগুলির মাধ্যমে পুনরায় রচনা করার জন্য আপনি আরও অনেক ভাল করতে পারেন।

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


পিছনের উত্স কোডটি কোথায় sshdপাওয়া যাবে?
আইকিউ আন্দ্রেয়াস

1
আসলে, আমি উত্সটি দিয়ে অন্য কিছু পরিকল্পনা করছিলাম। আমি দেখতে চেয়েছিলাম যে তারা কীভাবে ডেটাটি বিশ্লেষণ করে wtmp, PrintLastLogপতাকাটি সেট করে noএবং আমার নিজের স্ক্রিপ্টের সাথে "সর্বশেষ লগইন" বিজ্ঞপ্তিটি পুনরায় তৈরি করে update-motd.d। আরও অনেক রক্ষণাবেক্ষণ বন্ধুত্বপূর্ণ। :)
আইকিউ আন্দ্রেয়াস

1
আমি প্রায়শই দেখছি motdআউটপুট সম্পূর্ণ আপডেট না হয়ে থাকে। তাই আমি ভাবছি update-motdপ্রতিটি লগইনে চালিত নাও হতে পারে।
ক্যাস্পারডে

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

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

5

সর্বশেষ লগইন তথ্য সংরক্ষণ করা হয় /var/log/wtmpবা /var/log/utmpএগুলি বাইনারি ফাইল। Sshd এর উত্স কোডটি না দেখে আমি পুরোপুরি নিশ্চিত হতে পারি না তবে আমি আশা করব যে এটি উপযুক্ত সিস্টেম কলগুলি ব্যবহার করে এই ফাইলগুলি থেকে তথ্য পুনরুদ্ধার করছে

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


আপনি যদি সত্যই বেহাল বিবরণ চান তবে আপনার যে ফাংশনটি login_get_lastlogখুঁজে পেতে পারে তার উত্স কোডটি দেখতে হবেloginrec.c


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

2

আরেকটি সমাধান হ'ল মোড্ড ফাইলটির শুরুতে স্ক্রিনটি সাফ করে দেওয়া উচিত:

^[[H^[[2J
whatever was originally in the motd file here

দ্রষ্টব্য: ^[পালানোর প্রতীকটি প্রতিস্থাপন করুন (যা আপনি ন্যানো সম্পাদকটিতে নিম্নলিখিত কীগুলি টিপে তৈরি করতে পারেন: esc+ v+ esc)


-2

আপনি কেবলমাত্র লাস্ট লগইন আইপি পরিবর্তন করতে চান এমন ক্ষেত্রে কিছুটা কাজ করছেন?

উদাহরণস্বরূপ, আপনি রিমোট কন্ট্রোলড মেশিন থেকে আবার ssh এ লগ ইন করে দেখানো আইপি ঠিকানাটিকে "লোকালহোস্ট" এ পরিবর্তন করতে পারেন!

Ssh >> ssh ব্যবহারকারীর নাম @ লোকালহোস্টের মাধ্যমে রিমোট লগইন

এখন রেকর্ড করা সর্বশেষ আইপি লোকালহোস্ট হবে

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