ফাইলগুলি লিনাক্স সার্ভারে অদৃশ্য হয়ে গেছে


13

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

প্রশ্নযুক্ত ফাইলগুলি হ'ল:

/home/username/.bashrc
/home/username/.bash_profile

পাশাপাশি সেই ব্যবহারকারীর .ssh ডিরেক্টরিতে বেশ কয়েকটি ফাইল। "কিপার্স" নামে একটি সাবফোল্ডারে এই ফাইলগুলির অনুলিপি একই সাথে মুছে ফেলা হবে। তাদের উপর অনুমতিগুলি পরিবর্তন করে তা 000 এ পরিবর্তন করা এবং এগুলি মূলের মালিকানাধীন হওয়া কোনও সহায়তা করেনি।

আমি বর্তমানে লগ তৈরি করতে, মুছতে, সেই সাবফোল্ডারটি সরাতে ইনোটিফয়েট সেটআপ পেয়েছি, তাই আশা করি যে এটি কোনও বিষয়টিকে সরিয়ে দেবে, যদিও এটি ঘটে যাওয়ার সময় থেকে খুব বেশি দূরে লগ হয় নি, কারণ কী তা ঘটেনি।


1
আপনার পোস্টে তাদের নাম এবং পথ যুক্ত করুন, এটি সাহায্য করতে পারে।
শাদোক

2
এছাড়াও নিরীক্ষিত লগগুলি পোস্ট করা সহায়ক হতে পারে।
জান্নে পিক্কারায়েন

3
এছাড়াও আপনি যে ফাইলগুলি এখনও মুছে ফেলা হচ্ছে (বা এর ফলে যদি অন্য কোনও অভিযোগ / ত্রুটি থেকে বেরিয়ে আসে) তা দেখতে root এবং chmod 000 হিসাবে মালিকানাধীন ফাইলগুলি তৈরি করার চেষ্টা করতে পারেন।
বহুবর্ষ

5
Chmod 0000 ছাড়াও, আপনি + আমি এটা মুছে ফেলার থেকে রুট আটকানোর চেষ্টা করে chattr চেষ্টা করে দেখতে পারেন
Mer

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

উত্তর:


20

সমাধান 1 : SystemTap
আপনি ব্যবহার করতে পারেন SystemTap সব PIDs যে ব্যবহার করার চেষ্টা করছেন দেখানোর জন্য () লিঙ্কমুক্তের এর inode উপর .bashrcএবং .bash_profileফাইল।

ইনস্টল করুন SystemTap এবং আপনার কার্নেল জন্য ডিবাগ প্রতীক।

unlink.stapনিম্নলিখিত বিষয়বস্তু সহ নাম সহ একটি ফাইল তৈরি করুন :

probe syscall.unlink
{
    printf ("%s(%d) unlink (%s) userID(%d)\n", execname(), pid(), argstr, uid())
}

তারপরে এটি চালান sudo stap unlink.stap

সমাধান 2 : ইনোটাইফাই ফাইলটি কখন মুছে ফেলা হয় তা দেখতে আপনি ইনোটাইফাই
ব্যবহার করতে পারেন।

সমাধান 3 : ftrace
আরেকটি সমাধান হ'ল ftrace ব্যবহার করা :

trace-cmd record -e \*unlink\*

ফাইলটি মুছে ফেলার জন্য অপেক্ষা করুন, থামাতে CTRL + C টিপুন trace-cmd record ..., তারপরে চালনা করুন:

trace-cmd report

সমাধান 4 : বিপিফট্রেস
ইনস্টল করুন bpftrace, তারপরে চালান:

bpftrace -e 'tracepoint:syscalls:sys_enter_unlink* { printf("%s %s\n", comm, str(args->pathname)); }'

5

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


4

আপনি কি নিশ্চিত যে ব্যবহারকারী নিজেই (দুর্ঘটনাক্রমে) সেগুলি মুছে ফেলছেন না?

আমার একই সমস্যাযুক্ত কিছু ক্লুলেস (উইন্ডোজ) ব্যবহারকারী ছিল। দেখা গেছে যে তারা যখনই কোনও এফটিপি ক্লায়েন্টের সাথে হোম-দির দেখার জন্য ততবার এই ফাইলগুলি নিজেরাই মুছে ফেলেছে। তারা .XXXX ফাইলগুলি লক্ষ্য করেছেন (এফটিপি ক্লায়েন্ট এগুলি লুকিয়েছিল না) এবং "বিশৃঙ্খলা" সরান।

এটি আমার কাছে কখনই ঘটে নি যতক্ষণ না তাদের মধ্যে একজন যখন বেশ কয়েকদিন আগে মুছে ফেলা স্বতঃস্ফূর্তভাবে পুনরায় উপস্থিত হওয়া ফাইল সম্পর্কে অভিযোগ না করে।


2
বিশ্বাস করুন, আমি এটিকে সহজ হতে চাই।
চাদ পি

এটি মজার ছিল :)
স্ন্যাপ করুন

3
এটি এখন মজার .... এটি যখন ঘটছিল তখন এতটা না এবং আমি কী করতে যাচ্ছিলাম তা বুঝতে পারি না। @ চ্যাড পি: আপনি কী খুঁজে পান দয়া করে আমাদের তা জানান। আমি এটিকে বেশ কৌতূহলী মনে করি।
টনি

3

লগআউট করার পরে আমরা নির্দিষ্ট ফাইলগুলি পরিষ্কার করতে বাশ লগআউট স্ক্রিপ্টগুলি (~ / .bash_logout) ব্যবহার করি - আপনি এটি সেটআপ করেছেন কিনা তা দেখতে পরীক্ষা করতে পারেন, সম্ভবত এটিতে একটি ফ্যাটযুক্ত আঙুলযুক্ত গ্লোব রয়েছে।


2

আরও মনে হয় এমন একজন অনুপ্রবেশকারীর মতো, যিনি / হোম / ব্যবহারকারী-নামের ফাইল-নাম-এক্সেক আরএম -f {} \ করছেন; তার সব ছিনতাই করার পরে :)। কেবল অনুমান করা, কারণ আপনি উল্লেখ করেছেন যে ব্যাকআপ ফাইলগুলিও মুছে ফেলা হচ্ছে।


1

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

INTERCEPT_UNLINK
INTERCEPT_RENAME
INTERCEPT_FOPEN
INTERCEPT_OPEN

লিবট্র্যাশ সম্পর্কে ভাল নিবন্ধ এখানে পাওয়া যাবে

আপনি উল্লেখ করেছেন যে অন্য জিনিস, আপনি ফাইলগুলি রুট থেকে ছুঁড়ে ফেলেছেন এবং সেগুলি এখনও সরিয়ে ফেলা হয়েছে। এটি কারণ / হোম / ব্যবহারকারীর নাম ব্যবহারকারীর মালিকানাধীন; এবং যদি দির মোড 755 বলে থাকে; তারপরে যে দিরের মালিকানাধীন কোনও ফাইল বা ডিরই ব্যবহারকারীর দ্বারা মুছে ফেলা যায় তা বিবেচনাধীন নয়; এমনকি এটি শিকড় ফাইল বা dir হয়। এটি মূলত এই কারণে হয়েছিল যে দিরের মধ্যে ফাইল অপসারণের অর্থ ডিয়ার সামগ্রী পরিবর্তন করা এবং ব্যবহারকারীর সেই দির d টি (75৫৫ সালে) থাকে যাতে সে যা খুশি তা করতে পারে।

এটি অপসারণযোগ্য (+ i) হিসাবে ফাইল সেট করার জন্য অন্যান্য ব্যক্তিরা ইতিমধ্যে ext ফাইল সিস্টেমে চ্যাটারের মাধ্যমে পরামর্শ দেওয়ার কারণে এটি ব্লক করার উপায় রয়েছে। তারপরে ফাইল / দিরের + i পতাকা রয়েছে এমন কোনও পরিবর্তন করার আগে অপরিবর্তনীয় পতাকাটি আনসেট করা দরকার। অপরিবর্তনীয় পতাকা / চ্যাটারগুলি কেবল রুট দ্বারা ব্যবহার করা যেতে পারে।

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