ব্যবহারকারীর নামে ডট থাকার অসুবিধাগুলি কী?


27

একজন শিক্ষার্থী কেবল জিজ্ঞাসা করেছিলেন যে .ব্যবহারকারীর নামে ডট ( ) রাখার ক্ষতি কী হতে পারে । উদাহরণ স্বরূপ:john.doe

এটি কীভাবে সিস্টেমে বা কোনও অ্যাপ্লিকেশনগুলিকে প্রভাবিত করবে?

উত্তর:


38

পসিক্স এই ব্যবহারকারীর নাম সম্পর্কে জানায় :

[...] আইইইইএস স্ট্যান্ড 1003.1-2001 অনুসারে সিস্টেমগুলি জুড়ে পোর্টেবল হতে, মানটি পোর্টেবল ফাইলনাম অক্ষর সেট থেকে অক্ষর দ্বারা গঠিত। হাইফেন কোনও বহনযোগ্য ব্যবহারকারীর নামের প্রথম অক্ষর হিসাবে ব্যবহার করা উচিত নয়।

... যেখানে পোর্টেবল ফাইলনাম অক্ষর সেট রয়েছে:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 . _ -

এছাড়াও, ফাইলের ম্যানপেজটি/etc/adduser.confম্যানপেজ আইকন বলে:

   VALID NAMES
          adduser and addgroup enforce conformity to IEEE Std 1003.1-2001,
          which  allows  only  the following characters to appear in group
          and user names: letters, digits, underscores, periods, at  signs
          (@) and dashes. The name may not start with a dash. The "$" sign
          is allowed at the end of usernames (to conform to samba).

          An additional  check  can  be  adjusted  via  the  configuration
          parameter NAME_REGEX to enforce a local policy.

যাহোক,

উভয় স্পেসিফিকেশন বিন্দু অন্তর্ভুক্ত বলে মনে হচ্ছে, উবুন্টু (আমার 13.04 এ অন্তত) এটিকে প্রত্যাখ্যান বলে মনে হচ্ছে:

⊳ sudo adduser as.df
adduser: Please enter a username matching the regular expression configured
via the NAME_REGEX[_SYSTEM] configuration variable.  Use the `--force-badname'
option to relax this check or reconfigure NAME_REGEX.

NAME_REGEXউবুন্টুতে ডিফল্ট হ'ল ( /etc/adduser.confম্যানপেজ থেকে ):

^[a-z][-a-z0-9]*$
  • ছোট হাতের অক্ষর দিয়ে শুরু করে তারপরে যেকোন সংখ্যক ড্যাশ, ছোট হাতের অক্ষর বা অঙ্ক। না _, @বা .

সুতরাং,

উপসংহারে একটি .উবুন্টু ব্যবহারকারীর নামের জন্য একটি বিন্দু ব্যবহার করা যেতে পারে, NAME_REGEXন্যায়সঙ্গতটি পরিবর্তন করতে হবে /etc/adduser.conf। এটি পসিক্সের সাথে সঙ্গতিপূর্ণ হিসাবে দেখা হচ্ছে, এটির সাথে কোনও সমস্যা হওয়া উচিত নয়. সঙ্গতিপূর্ণ কোনও পসিক্স-অনুবর্তী প্রোগ্রামের সাথে ব্যবহারকারীর নামতে ।

ব্যবহারকারীর নামগুলিতে একটি বিন্দু সক্ষম করতে

  1. টার্মিনালে এই কমান্ডটি চালান:

    sudo nano /etc/adduser.conf
    
  2. এই লাইনটি সন্ধান করুন (ফাইলের শেষে)

    #NAME_REGEX="^[a-z][-a-z0-9]*$"
    

    এবং এটি দিয়ে প্রতিস্থাপন

    NAME_REGEX='^[a-z][-.a-z0-9]*$'
    

    নোট করুন যে -বন্ধনীটি প্রকাশের ক্ষেত্রে অবশ্যই প্রথম চরিত্রটি থাকবে [...], অন্যথায় এটি একটি পরিসীমা নির্দিষ্ট করে হিসাবে বিবেচনা করা হবে a-z

  3. তারপরে , Ctrl+ টিপুন ।XYEnter


তথ্যসূত্র:


@ ভাসা 1 এটি নির্দিষ্ট করার জন্য ধন্যবাদ Thanks
কিরি

2
হাই মাইনারজ ০২৯, উত্তরটি গ্রহণ করার আগে যা আমি যতদূর দেখতে পাচ্ছি, এটি সন্দেহাতীত এক সেরা, আপনি কেন উবুন্টু এই সিদ্ধান্ত নেওয়ার কারণটি দয়া করে জানাতে পারেন?
লুইস আলভারাদো

2
@ লুইস আলভারাডো: এটি সম্ভবত [নন পসিআইএক্স] প্রোগ্রামগুলির সাথে সামঞ্জস্যের জন্য রয়েছে যা আরও সীমাবদ্ধ অক্ষরের সেট ব্যবহার করে ব্যবহারকারীর নাম আশা করে। উবুন্টু অক্ষরগুলি ডিফল্টরূপে মঞ্জুরি দেয় প্রায় সমস্ত প্রোগ্রামে প্রায় কাজ করার গ্যারান্টিযুক্ত। অ্যাডুজার ম্যানপেজটি ডিফল্ট রেজেক্সকে "সবচেয়ে রক্ষণশীল" হিসাবে বর্ণনা করে, ব্যবহারকারীর নামগুলির নিরাপদে রয়েছে।
কিরি

1
এটি আমার জন্য কাজ করে নি, কিন্তু যোগ NAME_REGEX="^[a-z][-a-z0-9_.]*\$?$"মধ্যে /etc/adduser.confকরেনি।
মারিও

1
রেজেক্স পরিবর্তন করবেন না। শুধু কল useraddপরিবর্তে: sudo useradd -m my.user। আমরা ইউটিরিফাইতে এটিই করি এবং এটি ক্রস প্ল্যাটফর্মও।
জ্যামিসন বেকার

3

অ্যাপ্লিকেশনগুলি যা ব্যবহারকারীর নাম পড়েছে তারা এমন একটি রেইজেক্স ব্যবহার করতে পারে যা ধরে নেবে যে আপনার ব্যবহারকারীর নামটি নিয়মগুলি অনুসরণ করে এবং তাই আপনার ব্যবহারকারীর নামটি পরিচালনা করতে পারে না।


তবে সমানভাবে তারা অনুমানগুলি তৈরি করতে পারে যা ডাস্ট্রো দ্বারা তৈরি অনুমানের সাথে সংঘর্ষ হয়, তাই না?
0xC0000022L

3

মার্ক হ্যাবারে ডেবিয়ান বাগ # 604242 (ডিফল্টরূপে ইউজারনেমে বিন্দুগুলিকে মঞ্জুরি দিন) এর একটি সম্ভাব্য ডাউনসাইড ব্যাখ্যা করেছেন :

ব্যবহারকারীর নামের সাথে বিন্দু থাকা স্ক্রিপ্টগুলি ব্যবহার করে কিছু সমস্যা তৈরি করে chown, যা এখনও ব্যবহারকারীর নাম এবং গোষ্ঠীর নামের মধ্যে বিচ্ছিন্ন হিসাবে বিন্দুকে গ্রহণ করে। যদি chownএখনও বিন্দু গ্রহণ করে তবে এই নোটেশনটি ব্যবহার করে স্ক্রিপ্ট থাকবে, যা ব্যবহারকারীর নামতে একটি ডট থাকলে ভঙ্গ হবে।

আমি বর্তমান ডিফল্ট (যা স্থানীয় কনফিগারেশন দ্বারা ওভাররাইট করা যেতে পারে) রাখার পরামর্শ দিচ্ছি যতক্ষণ না chownবিন্দু বিভাজক হিসাবে গ্রহণ করা বন্ধ করে দেয়।

এবং chownএখনও বিন্দুকে বিভাজক হিসাবে গ্রহণ করে, যদিও এটি আর নথিভুক্ত করা হয়নি। আমি সম্মতি দিচ্ছি যে পসিক্সের সামঞ্জস্যতা বিরাজ করবে এবং আমি কোনও সিস্টেমে বিন্দুযুক্ত ব্যবহারকারীর নাম কোনও প্রতিকূল প্রভাব ছাড়াই নিযুক্ত করি।

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