আমি প্রতি-হোস্ট পাসওয়ার্ড সহ নিরাপদে কীভাবে উত্তরযোগ্য প্রয়োগ করতে পারি?


108

বিদ্যমান সার্ভারগুলির একটি গ্রুপ পরিচালনা করতে আমি উত্তরদাতা ব্যবহার করতে চাই । আমি একটি ansible_hostsফাইল তৈরি করেছি এবং সফলভাবে ( -Kবিকল্পের সাথে) কমান্ডগুলি দিয়ে পরীক্ষা করেছি যা কেবলমাত্র একক হোস্টকে লক্ষ্য করে

ansible -i ansible_hosts host1 --sudo -K # + commands ...

এখন আমার সমস্যাটি হ'ল প্রতিটি হোস্টের ব্যবহারকারীর পাসওয়ার্ডগুলি আলাদা, তবে আমি জবাবদিহি করে এটি পরিচালনা করার কোনও উপায় খুঁজে পাচ্ছি না।

ব্যবহার করে -K, আমাকে কেবলমাত্র একটি একক সুডো পাসওয়ার্ড আপ-ফ্রন্টের জন্য অনুরোধ করা হয়েছে, যা পরবর্তী সমস্ত হোস্টের জন্য বিনা অনুরোধেই চেষ্টা করা হবে বলে মনে হচ্ছে:

host1 | ...
host2 | FAILED => Incorrect sudo password
host3 | FAILED => Incorrect sudo password
host4 | FAILED => Incorrect sudo password
host5 | FAILED => Incorrect sudo password

এখনও অবধি গবেষণা:

  • একটি ভুল উত্তর ("ব্যবহার ") এবং লেখকের একটি জবাব সহ স্ট্যাকওভারফ্লো প্রশ্ন যা " -Kআমার কাছে পাসওয়ার্ডবিহীন সুডোর প্রয়োজন খুঁজে পেয়েছে " বলে মন্তব্য করেছেন

  • উত্তরযোগ্য দস্তাবেজগুলি বলে যে "পাসওয়ার্ডহীন সুডোর ব্যবহার জিনিসগুলিকে স্বয়ংক্রিয় করা সহজতর করে, তবে এটির প্রয়োজন হয় না ।" (জোর আমার)

  • এই সুরক্ষা স্ট্যাকএক্সচেঞ্জ প্রশ্নটি এটি পড়ার মতো লাগে যা NOPASSWDপ্রয়োজনীয়

  • "স্কেলেবল এবং বোধগম্য বিধান ..." নিবন্ধ যা বলে:

    "চলমান সুডোতে একটি পাসওয়ার্ড টাইপ করা প্রয়োজন, যা চিরকালের জন্য উত্তরকে অবরুদ্ধ করার একটি নিশ্চিত উপায় target

  • নিবন্ধ "বেসিক উত্তরযোগ্য প্লেবুকস" , যা বলে says

    "উত্তরযোগ্য রুট হিসাবে টার্গেট সার্ভারে লগইন করতে পারে এবং সুডোর প্রয়োজনীয়তা এড়াতে পারে, বা উত্তরদাতাকে কোনও পাসওয়ার্ড ছাড়াই সুডো দিতে দেয়, তবে তা করার চিন্তাভাবনাটি আমার প্লীহাটি আমার গুলিটটি লাফিয়ে ফেলার এবং আমার উইন্ডোপাইপটি ব্লক করার হুমকি দেয়, তাই আমি না "

    আমার চিন্তাগুলি ঠিক, তবে কীভাবে একক সার্ভারকে ছাড়িয়ে?

  • উত্তরসূচক সংখ্যা # 1227 , " উত্তরসূরিদের উচিত একটি প্লেবুকের সমস্ত ব্যবহারকারীর জন্য সুডো পাসওয়ার্ডের জন্য জিজ্ঞাসা করা উচিত", যা এমপিডিহান একটি বছর আগে বন্ধ করে দিয়েছিলেন এই মন্তব্যে "এটির জন্য খুব বেশি চাহিদা দেখেনি, আমি মনে করি বেশিরভাগ লোক কেবল একটির কাছ থেকে মামলা করছে বেশিরভাগ সময় ব্যবহারকারীর অ্যাকাউন্ট বা কী ব্যবহার করে।

সুতরাং ... এই জাতীয় পরিস্থিতিতে লোকেরা কীভাবে উত্তর ব্যবহার করছে? সেট NOPASSWDমধ্যে /etc/sudoersসর্বশক্তিমান জুড়ে পাসওয়ার্ড পুনঃব্যবহার বা রুট, SSH লগইন সক্রিয় সমস্ত নিরাপত্তা পরিবর্তে প্রচণ্ড হ্রাস বলে মনে হচ্ছে।


2
আপনি এসএসএইচ কী ব্যবহার করছেন না এমন কোনও কারণ আছে?
ট্রোঁড

22
আমি ইতিমধ্যে এসএসএইচ কী ব্যবহার করছি; তারা প্রভাব ফেলবে না sudo(যার জন্য এখনও একটি পাসওয়ার্ডের প্রয়োজন হবে)।
তত্ত্বাবধায়ক

1
এটি আপনি যা খুঁজছেন ঠিক তেমনটি নাও হতে পারে তবে উবুন্টু বাক্সগুলিতে আমি কীগুলি এখনও ব্যবহার করি, অর্থাৎ আমার পাবলিক কীটি / রুট / অনুমোদিত_কিগুলিতে সরাসরি রুট হিসাবে পেতে putting স্পষ্টতই ব্যর্থতা ssh- এর মাধ্যমে মূল লগইনগুলিকে মঞ্জুরি দিচ্ছে ... আমি এসএসএসের মাধ্যমে পাসওয়ার্ড লগইনগুলিও অস্বীকার করি এবং যুক্ত সুরক্ষার জন্য ব্যর্থ 2ban চালাই।
23:53

27
প্রতিক্রিয়া জন্য @senorsmile ধন্যবাদ! পরিবর্তে কোনও উত্তরে আপনি কী আপত্তি জানাতে চান তাই আমি প্রশ্নটি না পড়ার জন্য আপনাকে নীচে নামিয়ে দিতে পারি?
সুপারভাইচু

4
অর্থাতansible_ssh_password সেটিং শুধুমাত্র, SSH পাসওয়ার্ড ক্ষেত্রে প্রযোজ্য (খেই নাম হয় ...)। & আমি ইতিমধ্যে কী-ভিত্তিক এসএসএইচ লগইন ব্যবহার করছি।
সুপারভাইচু

উত্তর:


53

আপনি অবশ্যই আপনার গবেষণা করেছেন ...

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

সুতরাং, আপনি যে সন্ধান করছেন তার সঠিক সমাধান আমি দিতে পারছি না, তবে আপনি জিজ্ঞাসা করেছেন ...

"সুতরাং ... এইরকম পরিস্থিতিতে লোকেরা কীভাবে উত্তরীয় ব্যবহার করছে? / Etc / sudoers এ NOPASSWD সেট করা, হোস্টগুলিতে পাসওয়ার্ড পুনরায় ব্যবহার করা বা রুট এসএসএইচ লগইন সক্ষম করা এগুলি সুরক্ষার পরিবর্তে কঠোর হ্রাস বলে মনে হচ্ছে।"

আমি আপনাকে তার উপর একটি ভিউ দিতে পারি। আমার ব্যবহারের ক্ষেত্রে একাধিক ডেটা সেন্টার বিশ্বব্যাপী সাআস ফার্মকে সমর্থন করে এমন এক কেড নোড যাতে আমাদের ব্যবসায়ের প্রকৃতির কারণে আমাকে কয়েকটি অত্যন্ত কড়া সুরক্ষা নিয়ন্ত্রণগুলি ডিজাইন / প্রয়োগ করতে হবে। সুরক্ষা সর্বদা ভারসাম্যহীন আইন, আরও ব্যবহারযোগ্যতা কম সুরক্ষা, আপনি যদি 10 সার্ভার বা 1,000 বা 100,000 চালাচ্ছেন তবে এই প্রক্রিয়াটি আলাদা নয়।

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

পাসওয়ার্ড পুনরায় ব্যবহার সম্পর্কে কথা বলা যাক, একটি বড় উদ্যোগে, সিসাদমিনদের প্রতিটি নোডে আলাদা আলাদা পাসওয়ার্ড রাখতে জিজ্ঞাসা করা কি যুক্তিসঙ্গত? সম্ভবত কয়েকটি নোডের জন্য, তবে আমার অ্যাডমিন / ইঞ্জিনিয়াররা বিদ্রোহ করবেন যদি তাদের 1000 নোডে আলাদা আলাদা পাসওয়ার্ড থাকে। এটি কার্যকর করাও অসম্ভব যেমন অসাধ্য হবে তেমনি প্রতিটি ব্যবহারকারীর নিজের পাসওয়ার্ড কোথাও সংরক্ষণ করতে হবে, আশা করি কোনও কীপাস, স্প্রেডশিট নয়। এবং প্রতিবার যখন আপনি কোনও পাসওয়ার্ড এমন কোনও স্থানে রাখেন যেখানে এটি সরল পাঠ্যে টানা যায়, আপনি আপনার সুরক্ষা অনেক হ্রাস করেছেন। আমি তাদের চেয়ে অনেক বেশি জানি, হৃদয় দিয়ে, একটি বা দুটি সত্যিই শক্তিশালী পাসওয়ার্ডগুলি প্রতিবার কোনও মেশিনে লগ ইন করতে বা sudo আহ্বান করার জন্য একটি কীপাস ফাইলের সাথে পরামর্শ করা উচিত than

সুতরাং পাসওয়ার্ড পুনঃব্যবহার এবং মানককরণ এমন একটি জিনিস যা কোনও সুরক্ষিত পরিবেশেও সম্পূর্ণ গ্রহণযোগ্য এবং মানক। অন্যথায় ldap, কীস্টোন এবং অন্যান্য ডিরেক্টরি পরিষেবা উপস্থিত থাকার প্রয়োজন হবে না।

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

এখন, ঝুঁকি আরও বিচ্ছিন্ন করার জন্য আপনি স্কেলিং শুরু করলে আপনি নিতে পারেন এমন কিছু পদক্ষেপ রয়েছে। যদিও আমাদের 1000 বা তাই নোড রয়েছে, সেগুলির সবগুলিই 'উত্পাদন' সার্ভার নয়, কিছু পরীক্ষার পরিবেশ ইত্যাদি all সমস্ত প্রশাসকই প্রডাকশন সার্ভারগুলিতে অ্যাক্সেস করতে পারবেন না, যদিও তারা অন্য কোথাও তাদের একই এসএসও ব্যবহারকারী / পাস | কী ব্যবহার করতে পারবেন না those । তবে স্বয়ংক্রিয় ব্যবহারকারীরা কিছুটা বেশি সুরক্ষিত, উদাহরণস্বরূপ এমন একটি স্বয়ংক্রিয় সরঞ্জাম যা অ-উত্পাদক প্রশাসকরা অ্যাক্সেস করতে পারে তার একটি ব্যবহারকারীর শংসাপত্র রয়েছে যা উত্পাদনে ব্যবহার করা যায় না। আপনি যদি সমস্ত নোডে জবাবদিহি করতে চান তবে আপনাকে এটি দুটি ব্যাচে করতে হবে, একবার অ উত্পাদনের জন্য এবং একবার উত্পাদনের জন্য।

আমরা পুতুল যদিও ব্যবহার করি, যেহেতু এটি একটি প্রয়োগকারী কনফিগারেশন পরিচালন সরঞ্জাম, সুতরাং সমস্ত পরিবেশে সর্বাধিক পরিবর্তনগুলি এর মাধ্যমে তাড়িয়ে দেওয়া হবে।

স্পষ্টতই, আপনার উদ্ধৃত বৈশিষ্ট্যটির অনুরোধটি যদি আবার খোলা / সমাপ্ত হয়, আপনি যা করছেন তা সম্পূর্ণরূপে সমর্থিত হবে। তারপরেও, সুরক্ষা ঝুঁকি মূল্যায়ন এবং সমঝোতার প্রক্রিয়া। আপনার যদি কেবল কয়েকটি নোড থাকে যা আপনি কোনও পোস্ট-নোটের অবলম্বন না করে পাসওয়ার্ডগুলি মনে করতে পারেন তবে আলাদা পাসওয়ার্ডগুলি কিছুটা বেশি সুরক্ষিত হবে। তবে আমাদের বেশিরভাগের জন্য এটি কোনও সম্ভাব্য বিকল্প নয়।


ধন্যবাদ, @Zeb - আমি কাল্পনিক ছিল যে সঙ্গে ডজন টু হাজার হাজার সার্ভারের ব্যবহার করেন ব্যবহারকারীদের NOPASSWDমানসিক সুস্থতা কারণে যাহাই হউক না কেন (সম্ভবত কঠিন ফায়ারওয়াল বিধি দ্বারা সমর্থিত ইত্যাদি ), কিন্তু এটা হুমকি উপর আপনার ব্যবহারের-কেস এবং চিন্তা পড়তে ভালো মডেল.
তত্ত্বাবধায়ক

16
যদিও "প্রাক-অনুমোদিত" sudoআদেশগুলি সীমাবদ্ধ করার বিষয়ে আপনার পরামর্শ সম্পর্কে একটি মন্তব্য, (যা যখন আমার কাছে ঘটেছিল যখন আমি আবিষ্কার করি যে NOPASSWDএটি বেশ প্রয়োজনীয়)। দুর্ভাগ্যক্রমে, এটি পুরোপুরি অসমর্থিত বলে মনে হয় - উত্তরসূচক সরাসরি যেমন বাইনারি chownবা কল করার বিষয়ে কোনও প্রতিশ্রুতি দেয় না mkdirএবং sudo /bin/shবেশিরভাগ মডিউলগুলি কাজ করার জন্য সক্ষম হতে হবে ।
সুপারভাইচু

আমি আমার ইঞ্জিনিয়ারদের একজনকে মনে করলাম যে কিছুক্ষণ আগে এই অভিযোগ করেছে, এটি বিরক্তিকর।
জেব

36

উত্তর 1.5। থেকে, হোস্ট_ভারস এবং অন্যান্য ভেরিয়েবলের জন্য একটি এনক্রিপ্ট করা ভল্ট ব্যবহার করা সম্ভব । এটি কমপক্ষে আপনাকে প্রতি-হোস্ট (বা প্রতি-গ্রুপ) ansible_sudo_passভেরিয়েবল নিরাপদে সংরক্ষণ করতে সক্ষম করে। দুর্ভাগ্যক্রমে, --ask-vault-passকেবলমাত্র জবাবদিহি অনুরোধের জন্য কেবল একটি ভল্টের পাসওয়ার্ডের জন্য অনুরোধ জানাবে, সুতরাং আপনি এখনও যে সমস্ত হোস্টকে একসাথে ব্যবহার করবেন তার জন্য একক ভল্টের পাসওয়ার্ডে আবদ্ধ।

তবুও, কিছু ব্যবহারের জন্য এটি একাধিক হোস্টের একক সুডো পাসওয়ার্ড থাকার চেয়ে উন্নতি হতে পারে, আপনার এনক্রিপ্ট করা হোস্ট_ভার্স অ্যাক্সেস ছাড়াই আক্রমণকারী হিসাবে এখনও সে বা মেশিন গ্রুপের প্রতিটি মেশিন (বা মেশিন গ্রুপ) এর জন্য পৃথক সুডো পাসওয়ার্ডের প্রয়োজন হবে।


3
ansible_sudo_passবিকল্প খুব, নতুন বলে মনে হয় - এবং আমি কি জন্য জিজ্ঞাসা ছিল না বলে মনে হয়। একক ভল্টের পাসওয়ার্ডও আমার উদ্দেশ্যে আদর্শ is ধন্যবাদ!
সুপারভাইচু

এই পদ্ধতিটি ব্যবহার করে সমস্ত এনক্রিপ্ট করা এড়ানো উপায় আছে host_vars? (অ্যালেক্স
ডুপুয়

1
@supervacuo - সমস্ত হোস্ট ভারগুলি এনক্রিপ্ট করা এড়াতে কেবল মেইন.আইএমএল (এনক্রিপ্টড) এবং সিক্রেট.আইএমএল (এনক্রিপ্টড) সহ একটি হোস্ট ভার্শন ডিরেক্টরি ব্যবহার করুন - এই ডক বিভাগের শেষ অংশটি দেখুন যেখানে এটি "রেলিঘ" গ্রুপের বিষয়ে আলোচনা করেছে - একই কৌশল হোস্ট ওয়ার এবং গ্রুপ ওয়ারগুলির জন্য কাজ করে। আমি এটি প্রচুর ব্যবহার করি, কেবলমাত্র তারতম্যটি হ'ল যদি কোনও গোপনীয়তা কেবলমাত্র কিছু প্লেবুকের জন্য প্রয়োজন হয় তবে এটি সম্পূর্ণরূপে একটি ভিন্ন গাছে সংরক্ষণ করতে এবং হোস্ট বা বর্ণের নাম অন্তর্ভুক্ত এমন একটি পথের মাধ্যমে অন্তর্ভুক্ত করা দরকারী।
রিচভেল

1
যদি আমি ভল্টে 'উত্তরযোগ্য_এসএইচ_পাস' মানটি এনক্রিপ্ট করে ফেলেছি, তবে আমারও 'উত্তরযোগ্য_সুডো_পাস' মানটি নকল করতে হবে? দ্বিতীয় sudo_pass মানটির প্রথম 'ssh_pass' মানটিকে পুনর্বিবেচনা দেওয়ার কোনও উপায় আছে কি?
পান্নাজভা

খিলানযুক্ত পাসওয়ার্ড ব্যবহার উপর গুড কভারেজ এখানে পাওয়া যাবে: stackoverflow.com/a/37300030/5025060
কোড পঠিত

22

উত্তর 1.5। দিয়ে, উত্তরগুলি ব্যবহার করে উত্তর_সুডো_পাস ভেরিয়েবল সেট করা সম্ভব lookup('password', …):

ansible_sudo_pass: "{{ lookup('password', 'passwords/' + inventory_hostname) }}"

আমি host_vars/বেশ কয়েকটি কারণে ফাইলগুলি ব্যবহার করার চেয়ে এটিকে আরও সুবিধাজনক বলে মনে করি :

  • আমি আসলে ব্যবহার with_password: "passwords/{{ inventory_hostname}} encrypt=sha256_crypt" বিধান পাসওয়ার্ড প্রয়োগের দূরবর্তী ব্যবহারকারী (যা পরে কার্যকলাপের জন্য দরকারি উবুন্টু ), তাই তারা ইতিমধ্যে ফাইলের মধ্যে উপস্থিত (যদিও এই প্লেইন লুক-করছেন ফাইল যখন কুচি-কুচি করিয়া কাটা বস্তু মান উৎপন্ন হয় সঞ্চিত লবণ মান হারায়) ।

  • এটি ansible_sudo_pass:ক্রিপ্টোগ্রাফিক সুরক্ষার কিছু এপসিলন বৃদ্ধির জন্য ফাইলটিতে কেবল পাসওয়ার্ডগুলি রাখে না ( জানা যায়নি প্লেটেক্সট)। আরও উল্লেখযোগ্যভাবে, এর অর্থ হল যে আপনি অন্য সমস্ত হোস্ট-নির্দিষ্ট ভেরিয়েবলগুলি এনক্রিপ্ট করছেন না, সুতরাং সেগুলি ভল্টের পাসওয়ার্ড ছাড়াই পঠনযোগ্য।

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

এছাড়াও আপনি ব্যবহার করতে পারেন লুকআপ সঙ্গে ফাংশন ansible_ssh_pass ; উত্তরের পূর্ববর্তী সংস্করণগুলির সাথে এটিও সম্ভব হতে পারে যার উত্তরযোগ্য_সুডো_পাস নেই


2
অবশেষে আমি এটি চেষ্টা করে দেখতে পেলাম (ধন্যবাদ!), তবে এটি কীভাবে কাজ করবে তা দেখতে পাচ্ছি না git-crypt; যতটা আমি দেখতে পারেন. দেখে মনে হচ্ছে এনসিবিলে এখনওlookup কোনও এনক্রিপ্ট করা ভল্ট ব্যবহার করার পক্ষে সমর্থন নেইpasswordমডিউল ডক্স বলে এনক্রিপ্ট সঞ্চয়ের জন্য কিছু এখনো-অনথিভুক্ত সমর্থন আছে, কিন্তু আমি এখনো বিস্তারিত খুঁজে বের করতে হবে। কোন সংকেত সনাক্ত করুন?
সুপারভাইচো

19

পাস ব্যবহার করা সুডো পাসওয়ার্ড সহ জবাবদিহি করার সহজ পদ্ধতি। পাস প্রতি ফাইলের জন্য একটি পাসওয়ার্ড সঞ্চয় করে যা গিট বা অন্যান্য পদ্ধতির মাধ্যমে পাসওয়ার্ডগুলি ভাগ করা সহজ করে। এটিও সুরক্ষিত (GnuPG ব্যবহার করে) এবং আপনি জিপিজি-এজেন্ট ব্যবহার করে থাকেন তবে এটি প্রতিটি ব্যবহারে একটি পাসওয়ার্ড প্রবেশ না করেই আপনাকে জবাবদিহি করতে দেয়।

servers/fooসার্ভার হিসাবে সঞ্চিত পাসওয়ার্ডটি fooজবাবদিহি করার জন্য , এটি যেমন কোনও ইনভেন্টরি ফাইলে ব্যবহার করুন:

[servers]
foo ansible_sudo=True \
    ansible_sudo_pass="{{ lookup('pipe', 'pass servers/foo') }}"

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


3

এটি বেশ পুরানো থ্রেড, তবুও:

  • আমরা ঘরে বসে দুটি পৃথক প্রমাণীকরণ সিস্টেম ব্যবহার করি, আমার দলের স্থানীয় ওয়ার্কস্টেশনগুলি থেকে মেশিনগুলির পরিচালনা করা হয়।
  • আমি vars_pluginজবাবদিহি করার জন্য একটি লিখেছিলাম (এর পরিবর্তে সম্পূর্ণ বাস্তবায়নটি https://gist.github.com/mfriedenhagen/e488235d732b7becda81 এ পাওয়া যাবে ) যা বেশ কয়েকটি প্রমাণীকরণ সিস্টেমকে পৃথক করে:
  • প্রমাণীকরণ সিস্টেমের নাম গ্রুপ নির্দিষ্ট।
  • ব্যবহৃত লগইন / sudo ব্যবহারকারী গ্রুপ এবং অ্যাডমিন নির্দিষ্ট।
  • সুতরাং আমি প্রশাসকের পরিবেশ থেকে এবং পাসওয়ার্ডটি নিরাপদ থেকে পাইথন-কিরিং লাইব্রেরির মাধ্যমে সম্পর্কিত পাসওয়ার্ডটি টানুন (আমরা ম্যাক ওএস এক্স এর কীচেইন ব্যবহার করি, তবে নোভলেট জ্নোম এবং _উইন_ক্রিপ্টোও সমর্থিত)।
  • এই সত্য সম্পর্কে আমাকে অবহিত করার জন্য আমি ম্যাক ওএস এক্স এর কীচেইনে পাসওয়ার্ডগুলিতে অনুমতি সেট করেছি, যে কমান্ড লাইন প্রোগ্রাম সুরক্ষা হোস্ট দ্বারা ব্যবহৃত প্রতিটি প্রমাণীকরণ সিস্টেমের জন্য একটি পাসওয়ার্ড অ্যাক্সেসের অনুরোধ করে, তাই আমি "উত্তরযোগ্য-অল-এম পিং" চালনা করি এবং দুটি প্রম্পট পান (প্রতিটি প্রমাণীকরণ সিস্টেমের জন্য একটি) যেখানে আমি স্পেস বারটি টিপব এবং উত্তরযোগ্য পাসওয়ার্ডগুলি বাছাই করে।

এটি দেখতে খুব ঝরঝরে, আপনাকে ধন্যবাদ - আমি দুটি জায়গায় পাসওয়ার্ড না রাখার ধারণাটি পছন্দ করি। এই মুহুর্তে আমি কিপাসএক্স ব্যবহার করে আটকে আছি (কারণ জিনোম কীরিং খুব পোর্টেবল বলে মনে হচ্ছে না) তবে সম্ভবত আমি python-keepassকাজ করতে পারি ?
তত্ত্বাবধায়ক

যতদূর আমি বুঝতে পারি, পাইথন-কীরিং এটির জন্য বিমূর্ততা, তাই আপনার সহকর্মীরা অন্যান্য ওএস ব্যবহার করতে পারেন। বা আপনি কি কিপিএসএক্স ডিবি কোনও ইউএসবি স্টিকে সঞ্চয় করেন এবং বিভিন্ন ওএস সহ ওয়ার্কস্টেশনগুলি থেকে পরিচালনা করতে হয়?
মিরকো ফ্রিডেনহেগেন

বোঝা; আমি বোঝাতে চাইছি যে নন-জিনোম সিস্টেমে পাসওয়ার্ড অ্যাক্সেসের জন্য আমাকে ইতিমধ্যে কিপাসএক্স ব্যবহার করতে হবে, তাই এগুলিতে সংরক্ষণ করার gnome-keyringঅর্থ নকল রেকর্ড রাখা would তবুও ব্যবহারের চেয়ে আরও ভাল উপায় NOPASSWD...
তত্ত্বাবধায়ক

0

এটি করার একটি সম্ভাব্য উপায় হ'ল পরিবেশগত ভেরিয়েবলগুলি।

যেমন

pass1=foo pass2=bar ansible-playbook -i production servers.xml

তারপরে নাটকগুলিতে আপনি sudo পাসওয়ার্ডটি ব্যবহার করে দেখতে পারেন:

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