前言:
准备重温一下今天在工作中遇见的一个问题,在刚刚安装上的server上测试,做好的文件不是很好传到server项目目录,于是使用了filezilla这个工具,它可以使用ssh来连接,于是乎就引入了一个sftp连接方式。可以用普通账户连接,不能很好的拥有相应的权限来操作文件,于是就决定使用root账户来操作,却不能使用root账户连接,百度怎么搜也没搜到解决方案,最后还是无奈使用了Google,用蹩脚的英语还是看到一丝希望。本文原创博客地址:http://www.cnblogs.com/unofficial官网地址:www.pushself.com)
filezilla是一款免费开源的ftp工具,有客户端版本,还有服务器端版本,我这里主要记录的是客户端版本使用过程中可以使用普通账户登录却不能使用root账户登录
提示:
错误: 认证失败。
错误: 严重错误: 无法连接到服务器
原因分析:
密码不正确!
详细操作:
参照前面的文章服务器端需要安装一下ssh服务,这一点是必须的,因为我们要使用sftp连接协议
如图:
①服务器地址,端口号可以为空,或者默认的22
②协议:sftp,服务器端需要安装server服务
③用户名(服务器的用户名,ubuntu设置的有一个用户名,我设置的是ul,还有一个root账户)
④密码(用户名对应的密码,ul对应的密码是123456,,但是root账户的密码是好多呢?好像这中间我一直还没有设置一样的)
错误事例:连接账户时密码我输入的ul账户的密码123456,密码不正确连接不上,百搜不得解
正确事例:连接不上第一个应该想到的是password不正确,因为连接时pass:过后就出现连接失败。接下来我们设置一下root账户的密码,ubuntu server默认情况下是没有密码的,这也就是我们不能使用root登录sftp的原因。
#切换到超级管理员 按提示输入ul账户密码123456 sudo su #设置root账户的密码 按提示两次输入UNIX密码 我为了容易记住也是设置的123456 passwd
密码修改完成后再次使用filezilla工作的sftp就成功连接上了。
按照搜索的消息来看,还有一种情况是这样的,我没有遇见,但是还是和大家分享一下:
ssh限制root登录,具体修改配置文件/etc/ssh/sshd_config下的配置行:
PromitRootLogin withou-password
如果PromitRootLogin设置为no,修改yes即可,由一开始以为是这里的问题,我已经修改为了PromitRootLogin yes,最后再重启一下服务
sudo service ssh restart
本文原创博客地址:http://www.cnblogs.com/unofficial官网地址:www.pushself.com)