oct*_*bus 15 permissions centos vsftpd
我的问题是我需要更改哪些设置和/或运行命令以允许我登录到我的 vsftpd 系统?
当我使用 ftp 而不是 sftp 登录时,出现此错误:
Name (localhost:dbadmin): dbadmin
331 Please specify the password.
Password:
500 OOPS: cannot change directory:/home/dbadmin
Login failed.
ftp>
Run Code Online (Sandbox Code Playgroud)
这在使用 登录时有效sftp@,但我的服务器在防火墙后面,我需要能够使用 ftp 和 sftp 登录。
我一直在查看很多关于“OOPS”错误的帖子,但到目前为止都没有成功登录。
以下是有关我的系统和设置的一些信息:
我正在运行 CentOS 6.4。
iptables 和 ip6tables 被停止和禁用。
我的主目录受保护 700,我尝试了 750,只是想看看这是否有所不同。它没。
以下是活动线路 /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
Run Code Online (Sandbox Code Playgroud)
我的登录名不在 user_list 中。
小智 11
运行此命令,无需重新启动任何服务和服务器:
# setenforce 0
Run Code Online (Sandbox Code Playgroud)
要检查 SELinux 状态:
# getenforce
Run Code Online (Sandbox Code Playgroud)
或者
编辑文件/etc/sysconfig/selinux以包含
SELINUX=disabled
Run Code Online (Sandbox Code Playgroud)
这样做将需要重新启动。
小智 7
虽然禁用 SELinuxSELINUX=disabled可以解决问题,但建议不要这样做。您可以ftp_home_dir通过运行以下命令配置 SELinux 布尔值来启用 ftp 用户访问他的主目录:
setsebool -P ftp_home_dir=1
Run Code Online (Sandbox Code Playgroud)