আমি কীভাবে একটি লগ-ইন না করা ব্যবহারকারী তৈরি করতে পারি?


134

আমি একটি ব্যবহারকারী এবং একটি গোষ্ঠী উভয়কেই subversionআরএইচএল 5 সিস্টেমে কল করতে চাই। আমি ম্যান পেজটির দিকে চেয়েছিলাম useraddএবং আমার ধারণা কমান্ডটি কেবল হবে ...

useradd subversion

তবে কীভাবে হোম ডির তৈরি করা এড়ানো যায় তা নিশ্চিত নন। এছাড়াও, আমি চাই না যে এটি ব্যবহারকারী হিসাবে ব্যবহার করুন যা সিস্টেমে লগ ইন করতে পারে।

মূল উদ্দেশ্যটি কেবলমাত্র একটি এসভিএন সংগ্রহস্থলের জন্য কোনও মালিককে সরবরাহ করা।


আপনি কি সত্যই ইউজারডের ম্যান পেজটি দেখেছেন এবং এম-এম খুঁজে পান নি (হোম ডিরেক্টরিটি তৈরি করে না)?
ইমান্মজা

উত্তর:


76

-Mকোনও হোম ডিরেক্টরি তৈরি হবে না তা নিশ্চিত করতে আপনি স্যুইচটি (এটি একটি মূলধন নিশ্চিত করুন) ব্যবহার করতে পারেন :

useradd -M subversion

তারপরে লগ ইন রোধ করতে অ্যাকাউন্টটি লক করুন:

usermod -L subversion

59
এটি কোনও বিশেষ জোরালো উত্তর নয়, এর মাধ্যমে তৈরি করা ব্যবহারকারীটির এখনও শেল রয়েছে। এবং আপনি ওপিকে সতর্কও করেননি যে এটিই ছিল। এরফলে যে হবে usermod -s /bin/false subversion, অথবা --shell /bin/falseকরারuseradd
লি Hambley

7
@ বেক অ্যাকাউন্টটি লক করা আছে, শেল থাকা একটি এমট পয়েন্ট।
জন টি

15
@ বেক আসলে আসলে রুট ব্যবহারকারীরা লক করা অ্যাকাউন্টে মামলা করতে সক্ষম হবেন তবে যদি ব্যক্তি ইতিমধ্যে রুট অ্যাক্সেস অর্জন করে তবে কেন বিরক্ত হবে? এবং কোনও ব্যবহারকারী যখন চালাতে পারে su -s /bin/bash usernameএবং এটিকে বাইপাস করতে পারে তখন শেলটি সেট করা খুব বেশি কাজ করে না ।
জন টি

11
আলোচনা করার জন্য সময় দেওয়ার জন্য ধন্যবাদ, আপনি অবশ্যই সঠিক; তবে অ-লগইন ব্যবহারকারীদের শেল সংজ্ঞায়িত করে দেখে আমার কষ্ট হয়, এটি আমাকে অলস হিসাবে আঘাত করে এবং কেউ যদি এই সিস্টেমটির সাথে অপরিচিত থাকে তবে এটি দুর্দান্ত যে তারা ঘটনাক্রমে অনিচ্ছাকৃত কিছু করতে পারে না; হ্যাকাররা একটি ভিন্ন জাত, তারা যদি ইতিমধ্যে মেশিনে একটি শেল পেয়ে থাকে তবে আমি মনে করি এটি মূলত শেষ হয়েছে
লি হ্যাম্বলি

11
এই মন্তব্যগুলিতে আমি শেখার আশা করছিলাম ঠিক সেই বিষয়গুলি coveredেকে দেওয়া হয়েছে, ধন্যবাদ @ বেকস এবং & জন টি
রিক্সিয়াস

220

useradd -r subversion

প্রতি man useradd:

-r, --system create a system account

-আর পতাকাটি একটি সিস্টেম ব্যবহারকারী তৈরি করবে - যার পাসওয়ার্ড নেই, একটি হোম দির আছে এবং লগইন করতে অক্ষম।


1
এই আদেশটি ব্যবহারকারীর জন্য একই নামে একটি গোষ্ঠী তৈরি করবে। সুতরাং "সাবভার্সন" ব্যবহারকারীটি "সাবভার্সন" গ্রুপে থাকবে। আপনি যখন পরে "sudo chown -R subversion: subversion / path / to / ফোল্ডার" করতে চান তার জন্য দুর্দান্ত
s3v1

49
একা -আর দিয়ে আমরা এখনও লগইন করতে পারি। ব্যবহারকারীর শেলটি অক্ষম করতে আমাদের -s / বিন / মিথ্যা দরকার।
c4il

8
@ c4il তবে তাদের মধ্যে লগইন করতে পারে এমন একমাত্র মূল, তাই না? মানে, তাদের কোনও পাসওয়ার্ড নেই, তাই আমি কেবলমাত্র রুটগুলিতে লগ ইন করতে সক্ষম হব।
ক্যামিলো মার্টিন

তবে আমরা যে কোনও উপায়ে তাদের পাসওয়ার্ড নির্ধারণ করতে পারি passwd subversion
শায়ান

@rynop আমার মেশিনের কোনও ব্যবহারকারী, একজন সিস্টেম ব্যবহারকারী কিনা আমি কীভাবে তা পরীক্ষা করতে পারি? অন্য কোন উপায় আছে? আমি মনে করি তারা সূচনাকারীদের জন্য sudo'ers গ্রুপে নেই।
শায়ান

22

সিস্টেম ব্যবহারকারী তৈরি করার জন্য আরও একটি সমাধান adduser :

adduser --system --no-create-home --group yourusername

আপনি --groupযদি আপনার --no-create-homeব্যবহারকারী নামটি প্রয়োজন না হয় এবং যদি এই ব্যবহারকারীর জন্য আপনার বাড়ির প্রয়োজন হয় তবে আপনি সরাতে পারেন ।

মন্তব্যগুলিতে পাই 4on দ্বারা উল্লিখিত হিসাবে, কিছু সিস্টেমে --disabled-loginএই ব্যবহারকারীর জন্য লগইন নিষ্ক্রিয় করার জন্য বিকল্পটি ব্যবহার করার প্রয়োজন হতে পারে । যদিও এটি ডিবিয়ানের অধীনে ডিফল্ট আচরণ বলে মনে হচ্ছে।

সাবধান হন যে ব্যবহারকারীর সংখ্যাসূচক আইডি কোনও সিস্টেম অ্যাকাউন্টে থাকবে। --uidযদিও বিকল্পটি ব্যবহার করে আপনি ইউআইডি ঠিক করতে পারেন ।

পরিশেষে, নোট করুন যে কয়েকটি সিস্টেমে (যেমন ফেডোরা) adduserএকটি সিমিলিংক useradd, সেক্ষেত্রে এই উত্তরটি বৈধ নয়।


3
"আমি এটি ব্যবহারকারীরূপে লগ ইন করতে" এটি চিহ্নিত করতে " --disabled-loginyourusername
পতাকাটিও যুক্ত করুন

@ পাইকন: যদিও এই বিকল্পটি ম্যানপেজে নথিভুক্ত করা হলেও এটি কমপক্ষে ডেবিয়ানের অধীনে ডিফল্ট বলে মনে হচ্ছে।
স্কিপি লে গ্র্যান্ড গৌরু

15

আসল প্রশ্নের সবচেয়ে পরিষ্কার উত্তর হ'ল কমান্ডটি চালানো:

adduser subversion --shell=/bin/false

এবং আপনি যদি হোম ডিরেক্টরিটি না চান:

adduser subversion --shell=/bin/false --no-create-home

অথবা, আপনি যদি আরও লকড ডাউন সিস্টেম ব্যবহারকারী চান (সাধারণত এটি কোনও হোম ডিরেক্টরি তৈরি করে না - এটি এখনও নীচের মন্তব্য অনুসারে লিনাক্স পুদিনায় একটি হোম ডিরেক্টরি তৈরি করবে বলে জানা গেছে)

adduser subversion --system --group

এই সমস্ত কমান্ড ব্যবহারকারী হিসাবে একই নামে একটি গ্রুপ তৈরি করবে create


মিন্টে শেষ কমান্ডটি অবশ্যই একটি হোম ডির তৈরি করে:Creating home directory '/home/nodejs' ...
জ্যাকলুম

11

এটি করার সবচেয়ে নিরাপদ ফর্মটি এর adduserমতো ব্যবহার করা হবে :

$ adduser -r -s /bin/nologin subversion

দ্রষ্টব্য:-s /sbin/nologin অ্যাকাউন্টে উপলভ্য হওয়া থেকে যে কোনও লগইন শেলটি অক্ষম করার অন্তর্ভুক্ত নিশ্চিত হন ।

সেটআপের নিশ্চিতকরণ

$ grep subversion /etc/passwd /etc/shadow
/etc/passwd:subversion:x:496:496::/home/subversion:/bin/nologin
/etc/shadow:subversion:!!:17232::::::

তবে কোনও ডিরেক্টরি নেই:

$ ll /home | grep subversion
$

নিশ্চিত করুন যে অ্যাকাউন্টটি অন্যথায় ব্যবহারযোগ্য:

$ sudo -u subversion whoami
subversion

$ sudo -u subversion date
Tue Mar  7 08:58:57 EST 2017

অপসারণ

আপনার যদি এই অ্যাকাউন্টটি সরানোর দরকার হয়:

$ userdel subversion -r
userdel: subversion mail spool (/var/spool/mail/subversion) not found
userdel: subversion home directory (/home/subversion) not found
$

এবং নিশ্চিত করুন:

$ grep rtim-hc-user /etc/passwd /etc/shadow
$

1
adduser -r বিকল্পটি চিনতে পারে না। আমি মনে করি আপনি ইউরোডড বোঝালেন।
felwithe

@ ফিলিউথ না, আমি যে উত্তরটি লিখেছি সেগুলি পোস্ট করার আগে আমি সর্বদা পরীক্ষা করি। আমি চেক করেছি এবং সেই সুইচটি সেন্টোস 6.x সিস্টেমে প্রদর্শিত হয়।
slm

এখানে ফলাফলের একটি পেস্টবিন রয়েছে । আমি উবুন্টু 16 এলটিএসে আছি। অ্যাডুয়েজারের কোন সংস্করণটি ইনস্টল করা আছে তা আমি জানি না তবে আমি কখনই ভাবিনি যে এটি সময়ের সাথে বা সিস্টেমে সিস্টেমে পরিবর্তিত হবে। তারপরে আমি এটির পরিবর্তে - সিস্টেমের পতাকা ব্যবহার করে চেষ্টা করেছি, যা ব্যবহারকারীর জন্য একটি হোমডির তৈরি করেছে (আমি এটি চাইনি)। অবশেষে আমি এটি কেবল অ্যাডুজারের পরিবর্তে ইউজারড দিয়ে করেছি এবং এটি পরিকল্পনা অনুসারে কাজ করেছে। সুতরাং আমি কেবল ধরে নিয়েছি যে আপনি এটির অ্যাড্রেসার হিসাবে ভুল টাইপ করেছেন যখন এটি ব্যবহার করার কথা ছিল।
অবিরত

@ ফিলিওথ হ্যাঁ আমি আপনাকে সন্দেহ করছিলাম না, কেবল আপনাকে জানাতেই যে আমি এটি চেষ্টা করেছি 8-)) আমি ইউনিক্স এবং লিনাক্স সাইটের একজন মোড এবং এই সেমিডিএসগুলি কুখ্যাতভাবে বিভিন্ন বি / ডাব্লু ডিস্ট্রোস। ওপি প্রশ্নটিতে আরএইচইএল-এর উল্লেখ করেছে কেন আমি এটির মতো উত্তর দিলাম তবে তারা এটিকে লাল টুপি নির্দিষ্ট হিসাবে ট্যাগ করেনি, যা এই প্রশ্নোত্তর আইএমও নিয়ে বিভ্রান্তির অংশ।
slm

1

একটি CentOS 7 মেশিনে

  • যদি ব্যবহারকারী উপস্থিত না থাকে:
    useradd testuser --shell=/sbin/nologin

  • আপনি যদি কোনও বিদ্যমান ব্যবহারকারীর সংশোধন করতে চান:
    usermod testuser --shell=/sbin/nologin


0

ব্যবহার করে সর্বোচ্চ 8 টি অক্ষরের দীর্ঘ ব্যবহারকারীর জন্য একটি এনক্রিপ্ট করা পাসওয়ার্ড তৈরি করে শুরু করুন:

openssl passwd -crypt new_password_less_than_eight_chars_long

তারপরে আপনি:

useradd -m -g groupname -G otherGroupsSeperatedByComma -p encryptedPassword username

0

ডেবিয়ানে, আপনি একটি সিস্টেম ব্যবহারকারী তৈরি করতে পারেন (হোম ডিরেক্টরি ছাড়া) এবং লগইন শেল:

useradd --system --shell=/usr/sbin/nologin <username>

আপনার nologinপ্রোগ্রামটি যদি থাকে /sbin/nologinতবে দয়া করে সেই অনুযায়ী পরিবর্তন করুন।

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