群晖DSM6.0以后就封锁了ROOT权限登录,导致无法使用WinSCP使用root登录修改文件(使用admin账号是没有权限的)。
本文以群晖DSM6.1.7(以下简称DSM)为例:
一、准备工具
1、putty
2、WinSCP
二、DSM开启SSH
DSM的“控制面板”-->“终端机和SNMP”,勾上“启动Telnet功能”和“启动SSH功能”的勾,然后点击“应用”
三、开启ROOT账号和修改ROOT密码
1、使用putty连接DSM
主机名称填写群晖的ip地址,端口是22,连接类型是SSH,点击“打开”,会报密匙对话框,点击“是”
2、登陆管理员账号
login as:管理员权限的账号,输入完账号后回车。
会提示输入密码password,输入管理员权限账号的密码,输完回车。(命令界面不会显示字符,看不到任何提示,你认为输入正确直接回车就好)
看到xxxx@……:/$这样的信息就是成功登陆了。
3、切换到root账号
输入sudo -i回车后提示输入密码,密码为上述管理员的密码,按回车。
看到root@……:~#这样的信息就是已经进入到root账号了。
设置root账号密码,输入 synouser--setpw root密码 这里的密码请改为自己的密码,最好和管理员密码一样,这样不容易忘记搞错。
5、(DSM 6.2+谨慎操作,错误后会很麻烦)如果是6.2及其以上版本,还需要修改sshd_config文件
输入 vi/etc/ssh/sshd_config 修改ssh配置文件,按i键进入insert模式,修改#PermitRootLogin prohibit-password为PermitRootLogin yes,然后按ESC键输入:wq保存退出,然后重启DSM
注意:不要随意修改sudoers,错误的修改会造成sudo-i命令报错。
6、(DSM6.2+)重启后,如果连接SSH失败,可在群晖开启Telnet,使用Telnet连接重复上述步骤5的操作。
四、WinSCP连接DSM
文件协议选择SCP,主机名是DSM的ip地址,端口号还是22,用户名是root,密码是刚才设置的密码,点击“登录”,可能会跳出密匙,点击是即可,这时候可以通过WinSCP使用ROOT账号对DSM文件进行修改了。
五、误操作后的恢复
错误操作后SSH连不上,或者参考了错误教程,修改了sudoers导致sudo-i命令报错的修复方法:
1、先到套件中心安装perl插件
2、下载本教程下载列表中的ConfigFileEditor-noarch-16.spk插件,手动安装该插件(该插件不含数字签名,确定就好)
3、打开config file editor,选择Config File Editor,在最后加上 /etc/sudoers,sudoers 保存后重新打开config file editor
4、选择sudoers文件,修复 %administrators ALL=(ALL)ALL 这行即可
PS:其实这个工具也可以直接修改sshd_config文件,直接选择ssh,然后找到 #PermitRootLogin prohibit-password 修改为 PermitRootLogin yes ,然后保存后重启DSM即可。
目前有 0 条评论