SELinux httpd একটি ডিরেক্টরিতে অ্যাক্সেস লিখুন


9

আমি সেলিনাক্সে নতুন am ডেবিয়ান থেকে এসেছিলেন। আমি httpdএকটি ডিরেক্টরি অ্যাক্সেস দিতে চাই ।

সেলিনাক্স সতর্কতা ব্রাউজারটি পরামর্শ দেয়:

# grep httpd /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp 

আমি বুঝতে পারি না এই আদেশটি কীভাবে কাজ করে couldn't আমি কোথাও ডিরেক্টরি পাথ নির্দিষ্ট করি না। এটি কীভাবে জানতে পারে যে কোন ডিরেক্টরিটি HTD- র জন্য অনুমতি দেবে?

পূর্বে আমি আউটপুট বা ফাইল থেকে পাঠ্য বের করতে গ্রেপ ব্যবহার করেছি। কিন্তু এখানে গ্রেপ একটি প্রক্রিয়া ব্যবহার করা হচ্ছে। যা আমি পাইনি।

এছাড়াও আসল সমাধান কি। আমি যদি কোনও ডিরেক্টরিতে httpd লেখার প্রবেশাধিকার দিতে চাই?


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

প্রাসঙ্গিক উত্তর: unix.stackexchange.com/ দাবী
সালাহ-1

উত্তর:


17

স্থায়ীভাবে কোনও ডিরেক্টরি প্রসঙ্গে কীভাবে পরিবর্তন করা যায় তা এখানে:

# install semanage if you don't already have it:
yum install policycoreutils-python

# give the directory a new default context. The part at the end is a regex.
semanage fcontext -a -t httpd_sys_rw_content_t "/path/to/directory(/.*)?"

# apply the default context to the directory
restorecon -R /path/to/directory

এখানে httpd এর বিভিন্ন প্রসঙ্গে আরও কিছু ডকুমেন্টেশন রয়েছে:

আরএইচএল:: https://access.redhat.com/docamentation/en-US/Red_Hat_Enterprise_Linux/7/html/SELinux_User_and_Ad प्रशासক_গুইড / সেটিং- পরিচালনা_Confised_Services-The_Apache_HTTP_Server-Typees.html

আরএইচইএল 6: https://access.redhat.com/docamentation/en-US/Red_Hat_Enterprise_Linux/6/html/ পরিচালন_সংশ্লিষ্ট_সার্ভেস / সেটিং- পরিচালনা_Confised_Services-The_Apache_HTTP_Server-Typees.html


পারফেক্ট !! ফেডোরা 26 এ আমার জন্য কাজ করেছে, ইতিমধ্যে ডিফল্টরূপে পলিসি-কোর্টিল-পাইথন ইনস্টল করা হয়েছিল।
স্যার_ফেনর

5

SELinux বর্ধিত বৈশিষ্ট্যগুলি ব্যবহার করে যা ডিস্কের ডিরেক্টরি কাঠামোর সাথে যুক্ত করতে পারে। এগুলি মেটা ডেটা হিসাবে ভাবেন। অ্যাক্সেস নিয়ন্ত্রণ তালিকাগুলি (এসিএল) অন্য একটি।

আপনাকে ডিরেক্টরিতে যুক্ত করার জন্য বর্ধিত বৈশিষ্ট্যগুলি প্রসঙ্গ বলা হয় এবং সেলইনাক্স ট্র্যাফিক কপের মতো কাজ করে তা নিশ্চিত করে যে একটি নির্বাহযোগ্য যার নির্দিষ্ট প্রসঙ্গ রয়েছে সেগুলি এই প্রসঙ্গে ভিত্তিতে ফাইল সিস্টেম অ্যাক্সেস করার অনুমতি দেয়। আপনি ডিরেক্টরিতে যা -Zস্যুইচ করতে পারেন তা ব্যবহার করে তা দেখতে পাবেন ls

$ sudo ls -Z /var/www
drwxr-xr-x. root root system_u:object_r:httpd_sys_script_exec_t:s0 cgi-bin
drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 html

এখানে আপনি দেখতে পারেন যে এই ডিরেক্টরিগুলির ডিরের সাথে প্রসঙ্গ httpd_sys_script_exec_t:s0রয়েছে cgi-bin। এবং htmldir। হয়েছে httpd_sys_content_t:s0

chconকমান্ডটি ব্যবহার করে আপনি এগুলি যুক্ত করতে পারেন :

$ sudo chcon -t httpd_sys_content_t public_html

আপনি যে কমান্ডটি সম্পর্কে জিজ্ঞাসা করছেন তা কেবল মডিউলটি লোড করবে mypoll.ppআমি বিশ্বাস করি না এটি কোনওরকম কোনও অনুমতি দেবে, সম্ভবত আপনার বার্তায় আরও কিছু বার্তা রয়েছে audit.logযা আপনি আপনার কমান্ডের সাথে অনুপস্থিত রয়েছেন, যা আপনাকে যা প্রয়োজন তা আপনাকে আরও বিশদে জানিয়ে দেবে অ্যাক্সেস অনুমতি দিতে করতে।

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

তথ্যসূত্র


ধন্যবাদ। আমি তাদের মাধ্যমে যাব। তবে আপনি কি আমাকে এখনই বলতে পারেন এই ডিরেক্টরিতে লেখার অ্যাক্সেস দেওয়ার জন্য আমার কী করা দরকার?
নীল বসু

আপনি যদি আপাচি পড়তে চান তবে এমন বিষয়বস্তু থাকলে আপনার এই প্রসঙ্গটি dir এ যুক্ত করতে হবে:chcon -R -t httpd_sys_content_t <dir>
slm
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.