প্রতিটি পরিবেশে এসএসএইচ শংসাপত্রগুলি কনফিগার করুন


10

আমি জবাবের সাথে একটি উত্পাদন এবং মঞ্চ পরিবেশের জন্য কীভাবে আলাদাভাবে এসএসএইচ শংসাপত্রগুলি কনফিগার করতে পারি তা জানার চেষ্টা করছি। আমি বুঝতে পারি যে আপনি কমান্ডের সাথে যুক্তি -iবা --inventory-fileতর্কটি পাস করে সার্ভারের আইপি অ্যাড্রেসগুলি এবং হোস্টনামগুলি আলাদাভাবে বিভিন্ন ইনভেন্টরি ফাইল ব্যবহার করে কনফিগার করতে পারেন ansible-playbook। যাইহোক, আমি এর মতো কোনও বিকল্প দেখতে পাচ্ছি না ansible.cfg। বর্তমানে, শংসাপত্রগুলি এতে বাস করে /etc/ansible/ansible.cfg:

[defaults]
private_key_file=/home/caleb/.ssh/staging_key.pem
remote_user=ubuntu
sudo_user=root
gathering=explicit

আমি একাধিক এসএসএইচ শংসাপত্রগুলি কীভাবে কনফিগার করতে পারি, একটি উত্পাদনের জন্য এবং একটি মঞ্চের জন্য?


আপনার পরিবেশের মধ্যে কি পরিবর্তন? কেবল কী ফাইলটি, বা রিমোট_উজার / সুডো_উজার?
tedder42

@ tedder42 এসএসএইচ প্রাইভেট কী এবং রিমোট_উজার।
ব্যবহারকারী369450

আপনি কেন এটি আপনার .ssh / কনফিগারেশনে আবরণ করবেন না?
উডন্ডান

@udondan একাধিক হোস্টের জন্য একবারে একটি কী কী নির্দিষ্ট করার কোনও উপায় আছে .ssh/config?
ব্যবহারকারী369450

হ্যাঁ, আপনি এটি করতে পারেন। আপনি সুস্পষ্ট হোস্টনাম বা নিদর্শন সহ একাধিক গোষ্ঠী তৈরি করতে পারেন। আমি একটি উত্তরে একটি উদাহরণ পোস্ট করুন।
উদোনন্দ

উত্তর:


16

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

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

প্রতি গ্রুপ সংজ্ঞা:

[some_hosts]
host1.foo
host2.foo

[some_hosts:vars]
ansible_ssh_user=ubuntu
ansible_ssh_private_key_file=/home/caleb/.ssh/staging_key.pem

হোস্ট প্রতি সংজ্ঞা:

[some_hosts]
host1.foo     ansible_ssh_user=ubuntu          ansible_ssh_private_key_file=/home/caleb/.ssh/staging_key.pem
host2.foo     ansible_ssh_user=another_user    ansible_ssh_private_key_file=/home/caleb/.ssh/production_key.pem

তবে আপনি ইতিমধ্যে আপনার একাধিক হোস্ট গোষ্ঠী সংজ্ঞায়িত করতে পারেন .ssh/configএবং প্রতিটি গ্রুপের কী এবং ব্যবহারকারীর বিষয়ে আলাদা আলাদা সেটিংস থাকতে পারে।

এখানে একটি দ্রুত উদাহরণ

#Example with a wildcard
Host *.foo.com
  user ubuntu
  IdentityFile /home/caleb/.ssh/staging_key.pem

#Example with multiple hostnames
Host hostname.one hostname.two hostname.three
  user other_user
  IdentityFile /home/caleb/.ssh/production_key.pem

পাশাপাশি আপনি একটি ডিফল্ট সংজ্ঞায়িত করতে পারেন এবং আরও বিশদ সেটিংস সহ এটি পরে ওভাররাইড করতে পারেন।

Host *
  user defaut_username

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