在一个ftp上,突然登不上 报错,使用浏览器登录,报此用户不是私密连接,然后使用服务器客户端登录尝试,错误信息如下:

[root@test ~]# ftp *.*.*.*
Connected to *.*.*.* (*.*.*.*).
(vsFTPd 3.0.)
Name (*.*.*.*:root): ftpuser
Please specify the password.
Password:
Login incorrect. #530错误
Login failed.
ftp> exit

去服务端排错

检查配置文件

[root@localhost data]# cat /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/xferlog
chroot_local_user=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

查看/etc/pam.d/vsftpd

[root@localhost ~]# vim  /etc/pam.d/vsftpd

#%PAM-1.0
session optional pam_keyinit.so force revoke
auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth required pam_shells.so
auth include password-auth
account include password-auth
session required pam_loginuid.so
session include password-auth

[root@localhost ~]# vim /etc/vsftpd/ftpusers

# Users that are not allowed to login via ftp
root
bin
#daemon #注释掉
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody

[root@localhost ~]# systemctl restart  vsftpd

尝试

[root@test ~]# ftp *.*.*.*
Connected to *.*.*.* (*.*.*.*).
(vsFTPd 3.0.)
Name (*.*.*.*:root): ftpuser
Please specify the password.
Password:
OOPS: vsftpd: refusing to run with writable root inside chroot() #报500错误
Login failed.
Service not available, remote server has closed connection
ftp> exit

新的错误原因是因为我们限定了用户不能跳出其主目录之后,使用该用户登录FTP时往往会遇到这个错误

这个问题是由于在2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。

要修复这个错误,可以用命令chmod a-w /home/user去除用户主目录的写权限,注意把目录替换成你自己的。或者你可以在vsftpd的配置文件中增加下列两项中的一项:

allow_writeable_chroot=YES   #增加对自己家目录的写权限

然后查看自己服务器的目录权限

[root@localhost ~]# ll /data/

drwsrwsrwt.  root root  Apr   : ftp      #权限问题

修改权限:

[root@localhost ~]# chmod u-s  /data/ftp
[root@localhost ~]# chmod g-s /data/ftp
[root@localhost ~]# chmod o-t /data/ftp
[root@localhost ~]# chmod u-w /data/ftp
[root@localhost ~]# chmod g-w /data/ftp
[root@localhost ~]# chmod o-w /data/ftp
[root@localhost ~]# ll /data/ftp
dr-xr-xr-x. root root Apr : ftp

重新登录

[root@test ~]# ftp *.*.*.*
Connected to *.*.*.* (*.*.*.*).
(vsFTPd 3.0.)
Name (*.*.*.*:root): ftpuser
Please specify the password.
Password:
Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.ftp> ls
Entering Passive Mode (*,*,*,*,,).
Here comes the directory listing.
drwxrwxrwx Apr : nginx1
drwxrwxrwx Feb : nginx2
drwxrwxrwx Feb : nginx3
drwxrwxrwx Apr : nginx4
drwxrwxrwx Apr : nginx5
Directory send OK.
ftp> exit
Goodbye.

成功登陆,问题解决!!!

记一次ftp错误的更多相关文章

  1. 记一次ftp服务器搭建走过的坑

    记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...

  2. ftp错误&&详解方案

    一.FTP错误代码列表150 文件状态良好,打开数据连接 200 命令成功 202 命令未实现 211 系统状态或系统帮助响应 212 目录状态 213 文件状态 214 帮助信息,信息仅对人类用户有 ...

  3. 记一次ftp服务器错误 centOS 6.4 vsftpd 500 illegal port command

    这个错误是因为是主动模式的,应该改为被动模式 以下是操作过程: iptables中加 -A INPUT -p tcp -m state --state NEW -m tcp --dport 10221 ...

  4. 记一次sparkOnyarn错误:java.lang.UnsatisfiedLinkError

    错误大概这样: Caused by: java.util.concurrent.ExecutionException: Boxed Error Caused by: java.lang.Unsatis ...

  5. FTP错误 [ftp: connect: No route to host] 解决方法

    问题: 昨天在局域网内的两台机器上用ftp命令传文件.因为是新机器所以没安装ftp. 分别在两台机器上安装了ftp的服务端和客户端,并启动了ftp服务器进程. 当用启动ftp连接另一台机器时发生了如下 ...

  6. 记一个mvn奇怪错误: Archive for required library: 'D:/mvn/repos/junit/junit/3.8.1/junit-3.8.1.jar' in project 'xxx' cannot be read or is not a valid ZIP file

    我的maven 项目有一个红色感叹号, 而且Problems 存在 errors : Description Resource Path Location Type Archive for requi ...

  7. 记一次FTP上传文件总是超时的解决过程

    好久没写博,还是重拾记录一下吧. 背景:买了一个阿里云的云虚拟机用来搭建网站(起初不了解云虚拟主机和云服务器的区别,以为都是有SSH功能的,后来发现不是这样样子啊,云虚拟机就是FTP上传网页+MySQ ...

  8. 记一个Oracle存储过程错误

    下面一个存储过程是创建一个job,在5秒后更新一个表: create or replace PROCEDURE P_TEST AS jobno number; BEGIN dbms_job.submi ...

  9. FTP 错误1

    530-Valid hostname is expected. 所以,当通过主机名连接到FTP之后,输入用户名的时候,采用以下格式:主机名|用户名例如:ftp1.sdsxw.com|tom

随机推荐

  1. Python关键点常识

    关键点常识 Python的发音与拼写 Python的作者是Guido van Rossum(龟叔) Python正式诞生于1991年 Python的解释器如今有多个语言实现,我们常用的是CPython ...

  2. Pytorch | BERT模型实现,提供转换脚本【横扫NLP】

    <谷歌终于开源BERT代码:3 亿参数量,机器之心全面解读>,上周推送的这篇文章,全面解读基于TensorFlow实现的BERT代码.现在,PyTorch用户的福利来了:一个名为Huggi ...

  3. 【原生JS】评论编辑器 文本操作

    效果图: HTML: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> ...

  4. TP5 在模板读出Session值

    模板取值: <p class="info">后台登录中心{$Request.session.username}</p> 也可以 {$Think.sessio ...

  5. Python--day47--mysql索引类型介绍

    组合索引(联合索引)详讲:组合索引相对索引合并的缺点是 覆盖索引和索引合并不是真实的索引,只是名词: 命中索引,要避免使用哪些:id.nid是主键 email,num()是索引 1,避免使用like ...

  6. springboot+thymeleaf 纯后台渲染偷懒版分页

    分页的样式就是这样的 cotroller这里这么写,传给view总页数,现在的页数,下一页,上一页的信息 private String homeInfo(Model model) { Page< ...

  7. PTA 6-2 多项式求值

    PTA 6-2 多项式求值 本题要求实现一个函数 本题要求实现一个函数,计算阶数为n,系数为a[0] ... a[n]的多项式f(x)=∑i=0n(a[i]×xi)" role=" ...

  8. pycharm解析器找不到

    pycharm每个项目都需要设定解释器位置吧,把自己解释器位置添加到项目设置就好了 先装python,再装pycharm,不然找不到解析器的,解析器其实就是python.exe.

  9. Python--day40--threading模块的几个方法

    import time import threading #threading.get_ident() 查看当前进程号 def wahaha(n): time.sleep(0.5) print(n,t ...

  10. Ubuntu 19.04安装phpipam软件

    1ftp下载xampp2安装xampp chmod 777sudo ./xampp.run3,ftp phpipam.tar.gz 解压 ./opt/lampp/www/phpipam/cp conf ...