嵌入式linux使用dropbear及遇到的密匙登录失败问题

2019-07-12 23:33发布

嵌入式linux使用dropbear及遇到的密匙登录失败问题

  • Can run from inetd or standalone
  • 服务程序:dropbear(类似于Openssh的sshd)
  • 客户程序:dbclinet(累世于Openssh的ssh)
  • 密钥生成程序:dropbearkey
    dropbearkey -t rsa -f
  • 配置文件目录:/etc/dropbear(不可修改)
  • 修改配置文件目录:/etc/default/dropbear
  • 注意:dropbear使用pam的验证方式,编译busybox时需要选择Login/Password Management Utilities --->[*] Support for PAM
  • 必须的库:/lib/libnss_*, /lib/libpam*,/lib/security/*
  • RSA公匙认证和openssh的方法兼容,即:把openssh生成的id_rsa.pub放到~/.ssh/authorized_keys
  • 错误处理:添加rsa—keyauthorized_keys之后依然无法连接ssh,查看/var/log/messages提示/root must be owned by user or root, and not writable by others,猜测是因为/etc/default/rcS中的SULOGIN=no,经验证发现不是这个原因。后又搜索到和/root以及/root/.ssh/root/.ssh/authorized_keys有关,但是一一修改成正确的权限之后(700, 700 ,600),错误照旧,后来偶然发现/root的owner,试了一下,果然有效,修改前为
    drwx------ 4 501 dialout 4.0K Jul 26 17:38 root
    修改后
    drwx------ 4 root dialout 4.0K Jul 26 17:38 root
    总结:这个错误提示和.ssh权限无关,和/root的权限和owner有关,/root的group和other不能有write权限,owner必须为root