"ভ্যাগ্রান্ট এসএসএস" দিয়ে কীভাবে এসএসএইচ এজেন্ট ফরওয়ার্ডিং ব্যবহার করবেন?


107

কোনও ভ্রান্ত বাক্সে একটি নতুন এসএসএইচ কী কী তৈরি করার পরিবর্তে, আমি আমার হোস্ট মেশিনে থাকা কী কীটি পুনরায় ব্যবহার করতে চাই, এজেন্ট ফরওয়ার্ডিং ব্যবহার করে । আমি সেটিং চেষ্টা করেছি config.ssh.forward_agent Vagrantfile 'সত্য', তারপর পুনরায় বুট VM- র, এবং ব্যবহার করার চেষ্টা:

vagrant ssh -- -A

... তবে আমি যখন গিট চেকআউট করার চেষ্টা করি তখনও আমি পাসওয়ার্ডের জন্য অনুরোধ জানাই। আমি কি অনুপস্থিত কোন ধারণা?


যদি আপনার ssh কী সঠিকভাবে না থাকে তবে গিটকে একটি পাসওয়ার্ড জিজ্ঞাসা করা উচিত নয়, তবে আপনাকে বলতে হবে যে আপনি অনুমতি অস্বীকার করেছেন। আমার ধারণা আপনার কাছে পাসওয়ার্ড চাওয়া হচ্ছে কারণ আপনি git@github.com (ssh) এর পরিবর্তে https থেকে ক্লোন করছেন। আমার 2 সেন্ট।
আলেক্সাভার

উত্তর:


89

আমি ওএস এক্স মাউন্টেন সিংহটিতে ভিজাগর 2 ব্যবহার করছি।

Vagrant.configure("2") do |config|
  config.ssh.private_key_path = "~/.ssh/id_rsa"
  config.ssh.forward_agent = true
end
  1. config.ssh.private_key_path আপনার স্থানীয় ব্যক্তিগত কী
  2. আপনার ব্যক্তিগত কী অবশ্যই স্থানীয় এসএস-এজেন্টের কাছে উপলব্ধ। ssh-add -Lএটি যদি তালিকাভুক্ত না হয় তবে এটি দিয়ে যোগ করুন checkssh-add ~/.ssh/id_rsa
  3. ~/.ssh/authorized_keysভ্যাগ্র্যান্ট ভিএম-এ আপনাকে সর্বজনীন কী যুক্ত করতে ভুলবেন না । আপনি এটি অনুলিপি-আটকাতে বা ssh-copy-id এর মতো একটি সরঞ্জাম ব্যবহার করে করতে পারেন

8
আমি লক্ষ্য করেছি যে আমি উপরে সেট আপ করার পরে, আমি "গিট ক্লোন" ব্যবহার করতে "ভিজেন্ট" ব্যবহারকারী ব্যবহার করতে পারি তবে আমি "গিট ক্লোন" ব্যবহার করতে "রুট" ব্যবহারকারীর ব্যবহার করতে পারি না। আপনি কি জানেন যে বিষয়টি মনে হচ্ছে? ধন্যবাদ
নাম এনগুইন

7
config.ssh.private_key_path = "~/.ssh/id_rsa"ভ্যাব্রেন্টকে ঝুলিয়ে রাখে Waiting for VM to boot
apennebaker

14
আপনার ভ্যাংগার সন্নিবেশক কীটি রাখা দরকারconfig.ssh.private_key_path = [ '~/.vagrant.d/insecure_private_key', '~/.ssh/id_rsa' ]
ক্যালিন

3
ওএস এক্স-তে, আমি ওএস এক্স কী চেইনে ssh-add -Kকাজের (পাশাপাশি পাশাপাশি config.ssh.forward_agent = true) প্রাইভেট কীগুলি যুক্ত করতে পেলাম । এই উত্তরটি দেখুন
ফ্লিম

2
আমি @ পেইনবেকারের মতো একই ত্রুটি পেয়েছি। এবং ক্যালিন প্রস্তাবিত পদক্ষেপগুলি অনুসরণ করে যা কোনও উপকারে আসে না ... আমার জন্য কী কাজ করেছিল তা আমার হোস্ট ওএস থেকে কীচেইনে কী যুক্ত করা হয়েছিল এবং config.ssh.private_key_path অ্যাসাইনমেন্টটি অক্ষম করা ছিল।
আলেক্সাভার

80

এটি ভ্যাগ্রান্টফাইলে যুক্ত করুন

Vagrant::Config.run do |config|
   # stuff
   config.ssh.forward_agent = true
end

দস্তাবেজগুলি দেখুন


11
নিশ্চিত করুন যে আপনি অন্তর্নিহিত হোস্টে এসএস-অ্যাড করেছেন এবং কীটি ডিক্রিপ্ট হয়েছে।
এনাব্রেনটেন

1
নোট করুন যে উইন্ডোজ ssh- এজেন্টকে স্বয়ংক্রিয়ভাবে চালিত করে না, যা আপনার ssh কীগুলি ফরোয়ার্ড করার জন্য আপনার দৌড়তে হবে। উইন্ডোজে এসএসএইচ-এজেন্ট অটোস্টার্টিং সেটআপ করার জন্য এই গাইডটি অনুসরণ করুন ।
নেফফা

62
এই উত্তর সম্ভবত এতগুলি ভোটের প্রাপ্য নয়। ওপি স্পষ্টভাবে জানিয়েছে যে তারা config.ssh.forward_agentতাদের কনফিগারেশন ফাইলটিতে যুক্ত করেছে, সুতরাং এই উত্তরটি নতুন কোন তথ্য সরবরাহ করছে? এমনকি লিঙ্কটি ইতিমধ্যে প্রশ্নে রয়েছে।
ত্রিনদাজ

7
@ ত্রিঞ্জাজ আপনি সম্পূর্ণ ঠিক আছেন এটি কেন আমার সবচেয়ে জনপ্রিয় উত্তর তা আমি ব্যাখ্যা করতে পারি না। তবুও এটি আপাতদৃষ্টিতে কমপক্ষে 52 জনকে সহায়তা করেছে, তাই আমাকে এটাকে একটি জয় বলতে হবে।
এনাব্রেনটেন

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

20

যোনি ফাইলটিতে "config.ssh.forward_agent = true" যুক্ত করার সাথে সাথে এজেন্ট ফরোয়ার্ডিংয়ের জন্য হোস্ট কম্পিউটার সেট আপ করা আছে তা নিশ্চিত করুন। গিথুব এটির জন্য একটি ভাল গাইড সরবরাহ করে । (সমস্যা সমাধানের বিভাগটি দেখুন)।


7

আমি উপরের উত্তরগুলি নিয়ে এই কাজটি করেছিলাম 4.০.3.২০১ but তে, তবে 1.5 তে কাজ করা বন্ধ করে দিয়েছি। আমি এখন ssh-add1.5 সঙ্গে সম্পূর্ণরূপে কাজ চালাতে হবে।

আপাতত আমি আমার উত্তরসূচক প্রভিশন স্ক্রিপ্টে নিম্নলিখিত লাইনটি যুক্ত করছি। - name: Make sure ssk keys are passed to guest. local_action: command ssh-add

আমি আমার সেটআপটির একটি সূচনাও তৈরি করেছি: https://gist.github.com/KyleJamesWalker/9538912


আমাকে সর্বদা 1.4 এবং 1.5 সহ
এসএসএড

5

আপনি যদি উইন্ডোতে থাকেন তবে ভ্যাগ্রান্টে এসএসএইচ ফরওয়ার্ডিং ডিফল্টরূপে সঠিকভাবে কাজ করে না (নেট-এসএসএস-এ বাগের কারণে)। এই বিশেষ ভ্যাগ্রান্ট বাগ রিপোর্টটি দেখুন: https://github.com/mitchellh/vagrant/issues/1735

তবে, সেখানে একটি কর্মক্ষেত্র আছে! আপনার ভ্যাগ্র্যান্টফাইলে একটি সাধারণ প্রভিজিং স্ক্রিপ্টের মাধ্যমে আপনার স্থানীয় এসএসএইচ কীটি ভ্যাগ্রান্ট ভিএম-তে স্বতঃলিপি করুন। এখানে একটি উদাহরণ: https://github.com/mitchellh/vagrant/issues/1735#issuecomment-25640783


2

যখন আমরা সম্প্রতি vagrant-awsভ্যাগ্র্যান্ট 1.1.5 এর সাথে প্লাগইনটি ব্যবহার করে দেখেছি, তখন আমরা এসএসএইচ এজেন্ট ফরওয়ার্ডিং নিয়ে একটি সমস্যার মধ্যে পড়েছিলাম। দেখা গেল ভ্যাগ্র্যান্ট IdentitiesOnly=yesএটিকে পরিবর্তন করার বিকল্প ছাড়াই বাধ্য করছে no। এটি ভ্যাব্র্যান্টকে কেবলমাত্র Vagrantfileএডাব্লুএস সরবরাহকারীর জন্য তালিকাভুক্ত ব্যক্তিগত কীটি দেখার জন্য বাধ্য করেছিল।

আমি আমাদের ব্লগ পোস্টে অভিজ্ঞতা লিখেছি । এটি কোনও সময়ে টানার অনুরোধে পরিণত হতে পারে।


2
হোস্ট মেশিনে অন্তর্নিহিত পাবলিক কীটি তৈরির ক্ষেত্রে ভ্যাগ্রান্ট ভিএম-তে অনুলিপি করার কোনও উপায় আছে Vagrant up? এখনই আমাকে মেশিনটি তৈরি করতে হবে, ম্যানুয়ালি লগ ইন করতে হবে এবং তারপরে আমার পাবলিক কীটি / home
নোহ

1

নিশ্চিত হয়ে নিন যে ভিএম তার নিজস্ব এসএসএইচ এজেন্ট চালু না করেছে। আমার এই লাইন ছিল~/.profile

eval `ssh-agent`

এটি অপসারণের পরে, এসএসএইচ এজেন্ট ফরওয়ার্ডিং কাজ করেছে।


0

আসল সমস্যাটি হ'ল 127.0.0.1 रात্ট 222 ডিফল্ট পোর্ট-ফরোয়ার্ড হিসাবে ব্যবহার করা ভ্যাগ্র্যান্ট। আপনি একটি যুক্ত করতে পারেন (2222 নয়, 2222 ইতিমধ্যে ডিফল্ট দ্বারা দখল করা আছে)

config.vm.network "ফরওয়ার্ড_পোর্ট", ​​অতিথি: 22, হোস্ট: 2333, হোস্ট_ইপ: "0.0.0.0"

"0.0.0.0" হল বাহ্যিক সংযোগ থেকে অনুরোধ নেওয়া take তারপরে ssh -p 2333 vagrant@192.168.2.101 (আপনার নিজস্ব হোস্ট আইপি ঠিকানায় পরিবর্তন, ডুড) ঠিক ঠিক কাজ করবে। আমাকে ধন্যবাদ, শুধু আমাকে লাইফেং বলে!


0

উইন্ডোজে, সমস্যাটি হ'ল ভ্যাগ্র্যান্ট গিট-ব্যাশের এসএস-এজেন্টের সাথে কীভাবে যোগাযোগ করবেন তা জানেন না। এটি পিটিটিওয়াইয়ের পেজেন্টটি কীভাবে ব্যবহার করতে হয় তা জানে। সুতরাং, যতক্ষণ পজ্যান্ট চলছে এবং আপনার এসএসএইচ কীটি লোড করেছে এবং আপনি যতক্ষণ না config.ssh.forward_agent সেট করেছেন ততক্ষণ এটি কাজ করা উচিত।

বিশদ জন্য এই মন্তব্য দেখুন ।

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

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