Ubuntu 16.04上的ssh localhost问题

我正在尝试ssh到localhost,但它每次都要求输入密码。

我尝试了什么:

ssh localhost ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 

默认情况下,最近版本的openssh不接受DSA密钥。 你应该使用rsa ,它工作正常,并且被openssh开发人员认为更安全。 如果你真的想使用dsa密钥,你应该添加

  PubkeyAcceptedKeyTypes ssh-dss 

进入你的sshd_config并重启ssh服务。