mycloud os 5 更改ssh配置
wd pr4100 安装完entware后可以使用秘钥登录,但是系统默认是允许密码登录的,打算把nas ssh访问映射到外网,还是一个安全问题,从wd论坛上查了下资料, 然后禁止密码登录 不确定固件升级后是否还有生效,等下次固件升级后 验证(经过验证固件升级 不会影响key登录)
原理
原理其实很简单,就是把配置文件 单独保存一份,然后配置mycloud 的计划任务,开机后 把原来的sshd服务停掉,然后使用新的配置文件重启如果您在此过程中出错并需要将 ssh 重置为默认设置以便登录,请打开 webgui 并禁用并重新启用 ssh。您的配置设置不会受到影响
更改配置文件
复制原来的配置文件到新的目录,然后把配置文件修改成你需要的,笔者通过opkg安装了vim编辑器,如果不能编辑 就复制到windows编辑完 然后上传点到nas
1 | cp /etc/ssh/sshd_config /usr/local/config |
下面是笔者的配置文件,将 PasswordAuthentication yes
该成 PasswordAuthentication no
1 | Port 22 |
新增计划任务
编辑文件 /usr/local/config/config.xml
,确保非常小心地执行此操作,因为您可以使您的设备无法启动。
找到 crond 部分并添加另一个名称条目,将其命名为 sshd_config,例如:
1 | <name id="9">sshd_config</name> |
将其添加到下一个顺序 ID 的底部。
在 crond 部分的底部,添加新的 sshd_config 部分,如下所示:
1 | <sshd_config> |
重启
在webui上重启nas,等nas完全重启后,使用密码登录提示 禁止密码登录
查看sshd的启动命令
由
1 | /usr/sbin/sshd -E /var/log/sshd.log -f /etc/ssh/sshd_config |
变为
1 | /usr/sbin/sshd -E /var/log/sshd.log -f /usr/local/config/sshd_config |