Redis সকেট অনুমতি / var / run এবং http মধ্যে ধরা


1

আমি আমার পিএইচপি ওয়েব অ্যাপ্লিকেশন চাই (ব্যবহারকারী হিসাবে চালান apache ) একটি ইউনিক্স সকেট মাধ্যমে redis সংযোগ করতে। তাই আমি ব্যবহারকারী হিসাবে redis চলমান চিন্তা apache পাশাপাশি সকেট অনুমতি 0700 মালিকানাধীন হতে পারে apache। কিন্তু আমি সকেট চাই /var/run, যা মালিকানাধীন হয় root এবং লেখার দ্বারা না apache

তাই যদি আমি redis হিসাবে চালানো root, আমার পিএইচপি অ্যাপ্লিকেশন সংযোগ না করা পর্যন্ত আমি সকেট অনুমতিগুলি খুলতে পারি না, যা আমি এড়াতে পারি তবে আমি তা করতে চাই না।

আমি কিভাবে এই বৃত্ত বর্গক্ষেত্র? (Redis systemd দ্বারা পরিচালিত হয়)

উত্তর:


1

সাধারণত আইপিসি সকেটে বাস করে না /run/ সরাসরি, কিন্তু ডিমনের মালিকানাধীন একটি সাবডিরেক্টরিতে - যেমন আন্ডার /run/redis/

drwxr-xr-x 37 root  root  920 Jun  1 08:14 /run/
drwxr-xr-x  2 redis redis  40 Jun  1 08:14 /run/redis/
srw-rw-rw-  1 redis redis   0 Jun  1 08:14 /run/redis/socket=

বুটে সঠিক অনুমতিগুলির সাথে ডিরেক্টরি স্বয়ংক্রিয়ভাবে প্রাক-তৈরি করা যেতে পারে (একটি tmpfiles.d সমস্ত systemd সংস্করণে কনফিগারেশন), অথবা পরিষেবা শুরু করার (দ্বারা RuntimeDirectory = systemd ≥v211 মধ্যে আপনার পরিসেবা পরামিতি)। খুব সম্ভবত আপনার বিতরণ ইতিমধ্যে সম্পন্ন হয়েছে।

উল্লেখ্য, পৃথক ইউআইডিগুলির অধীনে ডিমনগুলি চালানোর জন্য এটি আরও সুরক্ষিত হবে, তবে সকেটটি তৈরি করুন গ্রুপ এক গ্রুপ দ্বারা অ্যাক্সেসযোগ্য apache সদস্য। এটি আইপিসি সংযোগগুলিকে অভিপ্রায় হিসাবে মঞ্জুর করবে, তবে অ্যাপাচিকে Redis ডেমনের সাথে ঘিরে ঘুরে বেড়াবে।

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