সিস্টেম-ব্যবহারকারীর জন্য উমাস্ক কীভাবে সেট করবেন?


14

umaskকোনও সিস্টেম-ব্যবহারকারীর জন্য (এটি তৈরি করা useradd --system username) সেট করা কি সম্ভব ?

উত্তর:


14

ব্যবহারকারীর উমাস্ক সেট করার জন্য তিনটি সাধারণ উপায় রয়েছে।

  1. সেট UMASKমধ্যে/etc/login.defs
  2. যোগ pam_umask.soআপনার PAM কনফিগারেশন করতে/etc/pam.d
  3. এটি শেল স্টার্টআপ ফাইলগুলিতে সেট করুন, যেমন /etc/profile

এক্ষেত্রে সিস্টেম ব্যবহারকারী এবং সাধারণ ব্যবহারকারীদের মধ্যে কোনও পার্থক্য নেই।

তবে আমি ধরে নিচ্ছি আপনি একটি কাস্টম উমাস্ক দিয়ে একটি ডেমন শুরু করার চেষ্টা করছেন?

সমস্যা।। উপরে সমস্ত বিকল্পগুলির ঘটতে যখন একজন ব্যবহারকারী লগ আপনি একটি ডেমন চালাচ্ছেন, এটা কখনই লগ এটা init দ্বারা আরম্ভ করছে, তাহলে হয়, বা কল রুট হিসাবে সঞ্চালিত হয় setuidসিস্টেম ব্যবহারকারী আপনাকে উল্লেখ চালানোর জন্য ।

আপনার প্রধান বিকল্পগুলি হ'ল:

  1. করা umaskআপনার init স্ক্রিপ্ট (a কি grep umask /etc/init.d/*একটি উদাহরণ জন্য)
  2. কাস্টম উমাস্ক ( systemd.exec upstart umask ) দিয়ে প্রোগ্রামটি শুরু করতে init কনফিগার করুন
  3. যদি ব্যবহার করে থাকেন start-stop-daemonতবে উমাস্ক বিকল্পটি পাস করুন
  4. umask ফাংশন বা সিস্টেম কল কল করতে নিজেই প্রোগ্রামটি পরিবর্তন করুন

আপনি কি জানেন কীভাবে আর্চ লিনাক্সে (যা সিস্টেমেড ব্যবহার করে) এসএসএইচএফএস (sftp-server) এর জন্য একটি উমাস্ক সেট করবেন? আপনি উল্লেখ করেছেন যে, আপনি তালিকাভুক্ত প্রথম 3 টি বিকল্পের কোনও প্রভাব নেই।
মাউন্টেনএক্স

2

সিস্টেম ব্যবহারকারীরা তিনটি উপায়ে 'সাধারণ' থেকে পৃথক হন: পাসওয়ার্ডের মেয়াদোত্তীর্ণতা, হোম ডিরেক্টরি (সিস্টেম ব্যবহারকারীদের একটি থাকে না) এবং ইউআইডি (সিস্টেম ব্যবহারকারীরা সাধারণত কিছুটা স্বেচ্ছাসেবী নীচে থাকেন)।

সাধারণ ক্ষেত্রে, আপনি প্রায় সম্পূর্ণ ভাগ্যের বাইরে। উমাস্ক সেট করতে আপনি পিএএম ব্যবহার করতে পারেন, তবে পিএএম এই তিনটি পার্থক্য বাদে অন্য বিষয়ের উপর ভিত্তি করে আচরণগুলি নির্বাচন করে।

অন্য কথায়, আপনি 'সিস্টেম' এবং 'নন-সিস্টেম' ব্যবহারকারীদের মধ্যে পার্থক্য করার জন্য পিএএম পেতে পারবেন না। এটি আপনাকে দুটি বিকল্প সহ ছেড়ে দেয়:

  • হয় আপনি সবার জন্য উমাস্ক সেট করার জন্য পিএএম ব্যবহার করেন (যেমন চেক ইন /etc/login.defs), তারপরে /etc/bash.bashrc(বা অনুরূপ) সিস্টেমে নন-সিস্টেম ব্যবহারকারীদের জন্য উমাস্কটি স্পষ্টভাবে সেট করুন ;

  • অথবা এটি করার জন্য আপনি নিজের পিএএম মডিউলটি লিখেন। আমি মনে করি এটি অনেক লোক স্বাগত জানাবে, কারণ উমাস্ক স্থাপন একটি সাধারণ অনুরোধ request

দয়া করে এই উত্তরটি উদার চিমটি লবণের সাথে নিন। এই ধরণের অনুরোধটি বেশ সাধারণ, এবং যদি আরও ভাল / সঠিক উপায় এখন উপস্থিত থাকে তবে আমি অবাক হব না।


1
ইতিমধ্যে পাম_উমস্ক নামে একটি প্যাম মডিউল রয়েছে । সমস্যাটি এটি কেবল লগইন সময়ে কাজ করে।
মাইকেল

আহ, আমি মনে করি আপনি সম্পর্কে জানতেন pam_umask, কিন্তু সম্ভবত সম্পর্কে না pam_succeed_ifপাম_সুসিড_এফ দিয়ে আপনি অন্য কোনও মডিউল কেবলমাত্র প্রদত্ত ব্যবহারকারী বা গোষ্ঠীতে প্রয়োগ করতে পারবেন। তবে আমি এখনও মনে করি না যে প্যাম এখানে সহায়তা করবে।
মাইকেল

1

@ মাইকেলের পরামর্শ অনুসারে, আপনি যদি ডেমন হিসাবে একটি সিস্টেম অ্যাকাউন্ট কনফিগার করার চেষ্টা করে থাকেন তবে নিজেই ডিমনটি কনফিগার করার চেষ্টা করুন।

আমি ম্যাকোস-এ কীভাবে _www অ্যাকাউন্টের জন্য উমাস্কটি সেট করতে হবে তা দেখে এই প্রশ্নে এসেছি। যদিও এটি উপরের উত্তরগুলির মতো প্রস্তাবিত হিসাবে কঠিন, আমি খুঁজে পেলাম যে আমি অ্যাপাচি পরিষেবাদিটি (এই ক্ষেত্রে) ব্যবহারকারী == একটি ডেমন হিসাবে কনফিগার করে সমাধান করেছি।

আমি আশ্চর্যজনকভাবে স্টার্টআপ স্ক্রিপ্টটি খুঁজে পাইনি (সাধারণত /etc/init.d/ এ কিন্তু লাইব্রেরিতে / লঞ্চডেমোনস / তে ম্যাকের জন্য), তবে সহায়তা থেকে: http://krypted.com/mac-security/apache2-umasks / আবিষ্কার করেছেন যে অ্যাপাচের নিজস্ব নির্দিষ্ট পরিবেশের স্ক্রিপ্ট রয়েছে।

$ sudo vim /usr/sbin/envvars
    umask 002

সম্ভবত অন্যান্য ডিমনগুলিরও একই পদ্ধতি রয়েছে যা নির্দিষ্ট ক্ষেত্রে সহায়তা করতে পারে।


তবে আপনি কীভাবে এই ফাইলটিতে "umask 002" লিখতে সক্ষম হলেন?!?!?!? আমি রুট / সুডো হিসাবেও অনুমোদিত অনুমতি ত্রুটি পেয়েছি এবং আপেল অনুসারে এমনকি শিকড়গুলিকে / usr / sbin ডিরেক্টরি সমর্থন
অ্যাপ্লিকেশন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.