群晖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账号了。

4、设置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即可。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。