问题描述
普通用户(非root用户)使用 WinSCP上传文件到 Linux 服务器,出现 Permission Denied
的错误提示,并且错误的返回码是3。
解决办法
解决办法 1
1、 修改授权权限,将服务器上传文件夹所属用户更改为当前 WinSCP 登陆用户
chown normalusr uploadfolder
2、 使用 WinSCP 进行上传成功。
3、 修改回文件夹所属用户
chown -R root uploadfolder
解决办法 2
1、 查看sftp应用程序的路径为止
cat /etc/ssh/sshd_config | grep sftp
Subsystem sftp /usr/libexec/openssh/sftp-server
ssh默认是支持sftp协议的。
2、 允许普通用户可以使用sftp服务。
vim /etc/sudoers
user: ALL=NOPASSWD:/usr/libexec/openssh/sftp-server
并且注释掉
# 注释掉下面这行
#Defaults requiretty
3、 在 WinSCP 端进入高级设置,

4、 设置 SFTP server

5、 设置 Shell

6、 重新登陆,重新进行文件的上传,成功。
注:本文原创由 bluetata
发布于https://bluetata.blog.csdn.net/、转载请务必注明出处。