群晖使用SSH密钥免密码登录

前言

本文测试用的群晖系统版本为DSM 6.1.7-15284

省流:如果已经会在普通Linux系统上进行SSH免密登录的设置,只需注意以下几点即可跳过本文:

1、以下目录和文件默认权限为777,需要修改后才能免密登录

chmod 755 /volume1/homes/xxx  #xxx改为自己的用户名
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

2、修改完后重启sshd,需要在群晖管理页面的控制面板->终端机和SNMP中,将SSH功能关闭再打开

3、群晖系统下的用户目录为/volume1/homes/xxx,与一般Linux系统的/homes/xxx不同

一、上传密钥文件

在需要远程登录群晖的机器上生成密钥:

ssh-keygen -t rsa

跳出提示,不需要输入内容,直接一路按回车即可(enter)

image-20220116165205632

执行上面一步后,会在~/.ssh目录下生成私钥id_rsa和公钥id_rsa.pub,其中私钥保存在本机,公钥上传到远程服务器(此处为群晖)

在群晖管理页面的控制面板->终端机和SNMP中,启动SSH功能,准备上传公钥image-20220116164315951

上传公钥到群晖:

#xxx改为自己的用户名,ip改为自己的ip
scp ~/.ssh/id_rsa.pub [email protected]:/volume1/homes/xxx/.ssh/authorized_keys
#scp ~/.ssh/id_rsa.pub [email protected]:/var/services/homes/xxx/.ssh/authorized_keys

群晖系统下的用户目录为/volume1/homes/xxx,与一般Linux系统的/homes/xxx不同

一般Linux系统的~/.ssh路径为/home/xxx/.ssh,其中xxx表示用户名

而群晖系统中cd ~/.ssh,然后使用pwd查看当前路径可以看到路径为/var/services/homes/xxx/.ssh,而用户目录下也有一个.ssh文件夹/volume1/homes/xxx/.ssh,经过测试发现修改其中一处的文件,另一处也会保持相同的变化,因此修改任意一处即可

一般Linux系统中的用户目录为/home/xxx,而群晖系统中的用户目录为/volume1/homes/xxx,也可能出现volume2、volume3?

二、修改文件权限

群晖用户目录权限默认为 777,必须要修改为755才能免密登录

chmod 755 /volume1/homes/xxx  #xxx改为自己的用户名
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

三、修改sshd配置文件

sudo vim /etc/ssh/sshd_config,去掉前面的#号,并且将no改为yes

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

image-20220116164653701

四、重启sshd

不能直接在命令行systemctl restart sshd.service,要在群晖管理页面的控制面板->终端机和SNMP中,把启动SSH功能关闭,点击应用后再启用

这时候再用ssh连接群晖就不用输入密码了

image-20220116164315951

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享