文章目录
- 概述
- 群晖设置超短密码
- [群晖 SSH 公钥免密登录](#群晖 SSH 公钥免密登录)
- 高级------多个群晖,不同密钥
概述
群晖仅在内网运行,外网无法访问。每次输入长密码不方便。但是群晖WEB端无法设置短密码,一番搜索过后,发现可以通过SSH的方式设计短密码。具体步骤如下。
群晖设置超短密码
获取root权限
1、登录群晖,控制面板 - 终端机和SNMP,勾选启动ssh功能。
2、开打ssh工具,这里使用的是finalshell,登录群晖。
3、输入sudo -i
然后输入群晖登录密码进入root权限。
设置新密码/更改密码
bash
设置新密码/更改密码:
sudo synouser --setpw 用户名 新密码
似乎在这里设置也是可以的
群晖 SSH 公钥免密登录
如果输入密码还是太麻烦,可以设置SSH免密登录。
开启家目录
控制面板------用户帐号------高级设置,钩选启动家目录服务。
修改文件夹权限
bash
# 看看我是谁
whoami
# 进入我的家目录
cd ~
chmod 755 /volume1/homes/xxx #xxx改为自己的用户名
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
群晖用户目录权限默认为 777,必须要修改为755才能免密登录。
修改配置文件
修改 sshd_config
配置文件:
bash
sudo vim /etc/ssh/sshd_config
修改上述文件中以下几个配置:
text
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
上传公钥
如果没有公钥和私钥,可以用ssh-keygen -t rsa
命令生成,下一步,下一步,就可以了。
在C:\Users\用户名\.ssh
目录下,可以看到点pub结尾的文件,这就是你的公钥了。打开,全选,复制。
bash
vim ~/.ssh/authorized_keys
~/.ssh/authorized_keys
文件一行一个密钥,按小写字母o
,粘贴,按ESC退出编辑模式,按:
进入命令模式,输入wq
退出。
在群晖控制面板 -> 终端机和 SNMP
关闭再开启 SSH
,即可免密登录群晖。
高级------多个群晖,不同密钥
当同一台电脑(自己的笔记本电脑),要免密登录多个群晖时。如果只用同一个公钥,有点不妥。所以,可以设置多个公私对,比如:
a. 一个群晖1,用于公司内部的工作开发;
b. 一个群晖2,用于自己进行一些活动;
解决方法
在 C:\Users\用户名\.ssh
目录下,打开cmder或者Git Bash,
-
生成一个公司用的SSH-Key
$ ssh-keygen -t rsa -C 'xxxxx@company.com' -f ~/.ssh/mycompany_id_rsa
-
生成一个home用的SSH-Key
$ ssh-keygen -t rsa -C 'xxxxx@qq.com' -f ~/.ssh/home_id_rsa
-
在
C:\Users\用户名\.ssh
目录下新建一个config文件,添加如下内容(其中Host和HostName填写git服务器的域名,IdentityFile指定私钥的路径)mycompany
Host mycompany.com
HostName mycompany.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/mycompany_id_rsahome
Host home.com
HostName home.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/home_id_rsa
上传公钥,粘贴也可以,或者用scp命令。
bash
scp ~/.ssh/mycompany_id_rsa.pub xxx@ip:/volume1/homes/xxx/.ssh/authorized_keys
scp ~/.ssh/home_id_rsa.pub xxx@ip:/volume1/homes/xxx/.ssh/authorized_keys
不要用ssh-copy-id
,ssh-copy-id 将key写到远程机器的 ~/ .ssh/authorized_key
文件中,跟群晖路径不一样。