2015-04-01 79 views
2

我試圖用MySQL工作臺連接到我的流浪MySQL服務器。它顯示圖像中顯示的一些錯誤。連接MySQL工作臺時出現SSH問題

error screenshot

工作臺錯誤日誌下面粘貼。

17:34:50 [INF][  SSH tunnel]: Existing SSH tunnel not found, opening new one 
17:34:50 [INF][  SSH tunnel]: Opening SSH tunnel to 127.0.0.1:2222 
17:34:50 [ERR][ sshtunnel.py]: Traceback (most recent call last): 
    File "/usr/share/mysql-workbench/sshtunnel.py", line 231, in _connect_ssh 
    look_for_keys=has_key, allow_agent=has_key) 
    File "/usr/lib/python2.7/dist-packages/paramiko/client.py", line 337, in connect 
    self._auth(username, password, pkey, key_filenames, allow_agent, look_for_keys) 
    File "/usr/lib/python2.7/dist-packages/paramiko/client.py", line 528, in _auth 
    raise saved_exception 
AuthenticationException: Authentication failed. 
17:34:50 [ERR][  SSH tunnel]: Authentication error opening SSH tunnel: Authentication error. Please check that your username and password are correct and try again. 

vagrant up命令輸出被粘貼下面

==> default: Clearing any previously set network interfaces... 
==> default: Preparing network interfaces based on configuration... 
    default: Adapter 1: nat 
    default: Adapter 2: hostonly 
==> default: Forwarding ports... 
    default: 22 => 6216 (adapter 1) 
    default: 22 => 2222 (adapter 1) 
==> default: Running 'pre-boot' VM customizations... 
==> default: Booting VM... 
==> default: Waiting for machine to boot. This may take a few minutes... 
    default: SSH address: 127.0.0.1:2222 
    default: SSH username: vagrant 
    default: SSH auth method: private key 
    default: Warning: Connection timeout. Retrying... 
==> default: Machine booted and ready! 
==> default: Checking for guest additions in VM... 
==> default: Configuring and enabling network interfaces... 

命令vagrant ssh在終端工作正常。我在這裏做錯了什麼?

+0

你可以直接ssh到127.0.0.1:2222作爲具有預期密碼的流浪用戶(如果該框設置爲Vagrant推薦,應該是'vagrant')? – ydaetskcoR 2015-04-01 12:17:15

+0

@ydaetskcoR Nope。它顯示'ssh:無法解析主機名127.0.0.1:2222:名稱或服務未知'。我已經添加了'vagrant up'命令輸出 – 2015-04-01 12:24:18

+0

這聽起來像是不同的問題。您的問題中的錯誤是當它連接到該框但未能進行身份驗證時。您的評論中的錯誤是當沒有連接到框。你確定VM正在運行嗎? – ydaetskcoR 2015-04-01 12:29:21

回答

5

如果您運行vagrant ssh-config它將顯示它正在使用哪個密鑰。它通常不使用.vagrant.d/insecure_private_key,而是項目目錄中的一個鍵,如.vagrant/machines/default/virtualbox/private_key

如果您在MySQL連接面板中指定該密鑰,您應該能夠登錄而不必向vm添加其他密鑰。

+0

你救了我的一天!謝謝 – Honiix 2015-08-19 13:55:31

+0

工作! :)謝謝 – 2015-08-20 11:50:59

+0

我使用了基於其他示例(insecure_private_key in .vagrant.d)的錯誤鍵。這解決了這個問題,謝謝! – Esteban 2016-02-18 19:00:07

2

關於錯誤您在評論中提到: 當使用ssh不指定這樣的

ssh 127.0.0.1:2222 

必須使用-p選項

ssh 127.0.0.1 -p 2222 
+0

這應該是一個評論。沒有答案。 – 2015-04-01 12:34:31

+1

對不起,我的代表不夠高評論。只是想指出你正確的方向。 – 2015-04-01 12:36:40

+0

謝謝你。無論如何,我已經解決了這個問題。 – 2015-04-01 13:22:35

2

一些google搜索後,我得到了它的端口通過添加我的ssh公鑰到流浪文件authorized_keys中工作。下面的步驟。

  1. generate ssh keys爲您的機器
  2. 複製你的公鑰從/home/{username}/.ssh/id_rsa.pub文件
  3. 開放vagrant ssh在termial
  4. 使用一些編輯器編輯/home/vagrant/.ssh/authorized_keys(如:nano /home/vagrant/.ssh/authorized_keys
  5. 你的公鑰粘貼到該文件結束並保存

完成!