2020-03-23
分类:教程分享
阅读(165) 评论(0)
Linux环境: CentOS 7.3
SFTP工具: WinSCP
问题描述:
无法使用root远程登录,使用普通用户登录无权限上传文件。
当我们使用WinSCP通过SFTP协议与Linux服务器进行连接时,如果用普通用户来登录的话,上传文件的过程中会出现permission denied的提示,说用户无权限错误的返回码为3,以下是该问题的解决方法。
- 远程登录Linux系统,先输入 su 命令,接着输入ROOT管理员密码回车,然后输入以下命令回车执行
find / -name sftp-server -print
- 【设置用户权限,给普通用户访问SFTP二进制文件的权限】
得到sftp-server文件路径后,输入以下命令来编辑修改 /etc/sudoers配置文件
visudo
在文本中找到下语句
root ALL=(ALL) ALL
按下键盘i,启用插入模式,在root ALL=(ALL) ALL结尾处按回车在其下面增加以下语句(dejan是普通用户名,改成你自己的!) dejan ALL=NOPASSWD:/usr/libexec/openssh/sftp-server
- 修改后,先按下键盘ESC键,然后向上找到下面语句:
Defaults requiretty
按下键盘i,启用插入模式,在 Defaults requiretty 前面加 # 号,把该语句注释掉
#Defaults requiretty
【PS:我在CentOS7.3里面没找到这句话,所以跳过了这一步】
- 最后保存退出编辑,输入命令(注意是两个字符)
:x
- 如果改错了想从新再来不想保存退出,敲入命令(注意是3个字符)
:q!
- 在winscp端进行连接设置,设置好主机名,端口号,用户名,密码之后点击”高级”
- 设置SFTP
- 设置 Shell
- 确定保存后就可以登陆,然后进行文件上传了
觉得文章有用就打赏一下文章作者
支付宝扫一扫打赏
微信扫一扫打赏
评论前必须登录!
注册