لدي كتلة السيد والعبد. أنا أقوم بإعداد مدير cloudera.

على المعلم ، قمت بإنشاء مفتاح بدون كلمة مرور باستخدام ما يلي.

ssh-keygen -f id_rsa -t rsa -N '' 
eval `ssh-agent`
ssh-add ~/.ssh/id_rsa

ثم وضعت المفتاح على جميع العبيد.

   cat /tmp/id_rsa.pub >> /root/.ssh/authorized_keys

من السيد يمكنني ssh بدون كلمة مرور. إنه يعمل بشكل رائع.

الآن أنا بحاجة إلى مفتاح عمومي للمصادقة. ما هو المفتاح؟ هل هذا هو id_rsa.pub؟ يجب أن أدخل في متصفح موقع المفتاح العمومي للمصادقة. عندما استخدمت id_rsa.pub تلقيت هذا الخطأ. لكن استخدام هذا المفتاح يسمح لي بالانتقال إلى أي عبد آخر بدون كلمة مرور.

No provider available for Unknown key file

You may connect via password or public-key authentication for the user selected above.


2013-01-27 03:34:49,832  INFO [[email protected]:[email protected]] Retrying configurator with id 3
2013-01-27 03:34:49,834  INFO [[email protected]:[email protected]] Submitted configurator for 103.4.112.102 with id 4
2013-01-27 03:34:49,836  INFO [NodeConfiguratorThread-4-4:[email protected]] 103.4.112.102: Transitioning from INIT (PT0.002S) to CONNECT
2013-01-27 03:34:49,837  INFO [NodeConfiguratorThread-4-4:[email protected]] Client identity string: SSH-2.0-SSHJ_0_8
2013-01-27 03:34:49,844  INFO [NodeConfiguratorThread-4-4:[email protected]] Server identity string: SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1
2013-01-27 03:34:49,844  INFO [NodeConfiguratorThread-4-4:[email protected]] Sending SSH_MSG_KEXINIT
2013-01-27 03:34:49,845  INFO [reader:[email protected]] Received SSH_MSG_KEXINIT
2013-01-27 03:34:49,916  INFO [reader:[email protected]] Sending SSH_MSG_KEXDH_INIT
2013-01-27 03:34:49,924  INFO [reader:transport.KeyE[email protected]] Received kex followup data
2013-01-27 03:34:49,924  INFO [reader:[email protected]] Received SSH_MSG_KEXDH_REPLY
2013-01-27 03:34:49,975  INFO [reader:[email protected]] Sending SSH_MSG_NEWKEYS
2013-01-27 03:34:49,975  INFO [reader:[email protected]] Received SSH_MSG_NEWKEYS
2013-01-27 03:34:49,976  INFO [NodeConfiguratorThread-4-4:[email protected]] Key exchange took 0.132 seconds
2013-01-27 03:34:49,976  INFO [NodeConfiguratorThread-4-4:[email protected]] 103.4.112.102: Transitioning from CONNECT (PT0.140S) to AUTHENTICATE
2013-01-27 03:34:49,977  WARN [NodeConfiguratorThread-4-4:[email protected]] Could not authenticate to 103.4.xxx.xxx
net.schmizz.sshj.common.SSHException: No provider available for Unknown key file
        at net.schmizz.sshj.SSHClient.loadKeys(SSHClient.java:526)
        at com.cloudera.server.cmf.node.NodeConfigurator.connect(NodeConfigurator.java:272)
        at com.cloudera.server.cmf.node.NodeConfigurator.configure(NodeConfigurator.java:709)
        at com.cloudera.server.cmf.node.NodeConfigurator.run(NodeConfigurator.java:755)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
2013-01-27 03:34:49,977  INFO [NodeConfiguratorThread-4-4:[email protected]] 103.4.112.102: Setting AUTHENTICATE as failed and done state
answer

لا يسمح لك المفتاح العام ssh من تلقاء نفسه بتسجيل الدخول إلى أي خادم ، فهو مجموعة المفاتيح الخاصة والعامة (في هذه الحالة ، id_rsa) التي تتيح لك المصادقة (تسجيل الدخول) إلى خادم بعيد باستخدام ssh. في الواقع ، من العميل البعيد ، تحتاج إلى تحديد المفتاح الخاص لتسجيل الدخول إلى الخادم ، وليس المفتاح العام.

من تعليمات تثبيت Cloudera Manager -

"للمصادقة أثناء إجراءات التثبيت والترقية ، ستحتاج إما إلى إدخال كلمة المرور أو تحميل زوج من المفاتيح العامة والخاصة لحساب المستخدم الجذر أو sudo."

لذلك إذا كان هذا هو ما تحاول تحقيقه ، فأنت بحاجة إلى تحميل المفتاح الخاص أيضًا. ستجده على الأرجح في ~ / .ssh / id_rsa