linux配置vsftp教程精选集
时间:2013-12-17 14:51:47
小编:动力软件园
阅读:
对于linux的vsftp用户登录权限设置的问题简单提及一下,不做详细的描述。
使用vsftp可以分为三类登录方式
1、匿名用户登录
2、本地账户权限登录
3、虚拟用户登录
我们着重讲述一下第三种方式登录。www.pw88.com站长一直认为ftp是个不安全的工具,容易造成被黑客工具和利用。尽管也可以利用
本地账户权限设置的方式来进行用户分配,但是不太符合更为精细的应用。还是虚拟用户登录权限方面更加细致到位。
以下是具体的设置步骤:
安装VSFTP 我就不写了。网上教程很多,大家随便找一下看。
[root@CentOS5 /]# rpm -qa | grep vsftp
看一下是否安全。没有的话可以 在线 yum search vsftp 然后 yum install vsftp 安装
安装完成
1. 添加虚拟用户口令文件
[root@CentOS5 /]#vi /etc/vsftpd/vftpuser.txt
添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。
bobyuan #用户名
123456 #密码
www.pw88.com #用户名
123456 #密码
这里写了两个用户名,需要更多请在这里陆续向下添加
2. 生成虚拟用户口令认证文件
将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。
首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。
[root@CentOS5 /]#rpm –qa |grep db4-utils
[root@CentOS5 /]#rpm –ivh db4-utils-4.3.29-9.fc6.i386.rpm
下面使用db_load命令生成虚拟用户口令认证文件。
[root@CentOS5 /]#db_load –T –t hash –f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db
3. 编辑vsftpd的PAM认证文件
在/etc/pam.d目录下,
[root@CentOS5 /]#vi /etc/pam.d/vsftpd
将里面其他的都注释掉,添加下面这两行:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
这里注意了,搭建完成后可能会出现 530 Login incorrect错误
很多“大神”都说是pam_service_name=vsftpd 缺少这句话,其实这句话默认就有,
所以问题定位为pam认证配置得不正确,将pam_userdb.so指定路径改为相对路径问题得以解决。
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/ftpusr
account required /lib/security/pam_userdb.so db=/etc/vsftpd/ftpusr
改为:
auth required pam_userdb.so db=/etc/vsftpd/ftpusr
account required pam_userdb.so db=/etc/vsftpd/ftpusr
4. 建立本地映射用户并设置宿主目录权限
所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码。
[root@CentOS5 /]#useradd –d /home/vftpsite –s /sbin/nologin vftpuser
[root@CentOS5 /]#chmod 700 /home/vftpsite
vsftpd匿名用户新建目录提示:550 Create directory operation failed.
chmod 700 /home/vftpsite这句话让我在后来的登陆后发现没有任何权限,只好改成777.www.pw88.com提醒大家留意问题。
解决办法:
1、如何禁止SELinux。
# vi /etc/selinux/config
修改为:SELINUX=disabled
如果不想重启系统的话,在终端中输入:setenforce 0。
重新启动vsftpd进程,问题解决。
不如直接删除这个恼人的SELinux
yum remove selinux* -y
这个世界终于清净了…
可能性二:
匿名用户的目录(/var/ftp/pub)没有写权限,需要将其设置为具有写权限。
首先转到/var/ftp
然后在终端中输入:chmod 777 pub。
也许就是这个问题绊倒了你,:-)
5. 配置vsftpd.conf(设置虚拟用户配置项)
[root@CentOS5 /]#vi /etc/vsftpd/vsftpd.conf
guest_enable=YES #开启虚拟用户
guest_username=vftpuser #FTP虚拟用户对应的系统用户
pam_service_name=vsftpd #PAM认证文件
6. 重启vsftpd服务
[root@CentOS5 /]#service vsftpd restart
7. 测试虚拟用户登录FTP
C:UserAdministrator>ftp 192.168.120.240
连接到192.168.120.240。
220 Welcome to BOB FTP server
用户(192.168.120.240(none)):markwang
331 Please specify the password.
密码:
230 Login successful.
8、对不同的虚拟用户设置不同的权限
在vsftpd.conf配置文件中添加user_config_dir配置项,并设置用户配置文件的保存目录
user_config_dir=/etc/vsftpd/vsftpd_user_conf (手工建立 虚拟用户配置文件)
这里这么配置的意思是可以把每个虚拟用户的配置文件单独存放,方便管理。
第一步是添加用户,这里是添加用户权限,每个用户一个文件方便管理。
local_root=www.pw88.com
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
ok了。修改服务conf文件需要restart vsftp服务,修改用户权限是不需要重启的 。随时生效。
-
vsftp安装配置笔记(二)--使用本地用户登录打开vsftp.conf配置文件1、确保允许本地用户访问# Uncomment this to allow local users to log in.local_enable=YES 2、继续修改sftp.conf配置文件pam_service_name=vsft时间:2018-08-21
-
vsftp安装配置笔记(三)配置虚拟用户访问配置vsftpd服务器总体概要: 网上大把的vsftp服务配置教程,我看的晕乎乎的,需要用的时候很吃力的看一遍,配置完就忘记了。原因没有彻底理解vsftp服务的工作原理。时间:2018-08-21
-
VSFTP常见错误和解决办法错误:530 This FTP server is anonymous only vsftp服务器安装后默认不允许本地用户登录,出现该错误。需要修改vsftp配置文件。 解决: vi /etc/vsftpd.conf 将时间:2015-09-23
热门阅读
-
crontab bad minute Do you want to retry the same edit
阅读:1916
-
find: 遗漏“-exec”的参数解决办法
阅读:996
-
centos 7 的syslog.conf配置文件位置|etc/syslog.conf修改
阅读:2969
-
kali安装中文输入法
阅读:1162
-
linux命令中 gzip、zip、tar、bzip2的区别
阅读:383