密钥登陆
DSM修改了家目录位置,导致无法sshd无法找到正确的公钥文件
方法很简单,只用建立家目录和.ssh目录,并对这些目录和公钥文件授予合适的权限就可以了
admin:~$ sudo mkdir -p /home/admin/.ssh/
admin:~$ sudo chown -R admin:users /home/admin/
admin:~$ chmod 0755 /home/admin/
admin:~$ chmod 0700 /home/admin/.ssh/
admin:~$ chmod 0600 /home/admin/.ssh/authorized_keys
接下来就是修改admin的家目录,简单粗暴的方法是直接修改/etc/passwd文件
将其中admin的家目录
/var/services/homes/admin
改为
/home/admin
接下来在/etc/ssh/sshd_config文件中修改参数
将如下三行之前的#号去掉
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
同时,将如下选项设置为 no
PasswordAuthentication no
PermitRootLogin no
然后再重启ssh服务
admin:~$ synoservicectl –restart sshd
注意:
1. ssh重启之后,.ssh文件夹可能会丢失,所以最好先备份一下
2. 如果忘记备份.ssh文件夹,导致无法登陆时,可以在网页中开启Telnet登陆修改
3. ssh重启之后可能无法登陆,需要在网页上关闭ssh后重新开启ssh