1.安装ftp软件
[root@node1 ~]# yum install vsftpd
2.配置文件详细介绍
[root@node1 ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES --启用匿名用户
anon_upload_enable=YES --匿名用户上传
anon_mkdir_write_enable=YES --匿名用户创建文件
anon_other_write_enable=YES --匿名用户写入
anon_umask=022 --匿名用户创建文件的权限
local_enable=YES --启用本地用户
write_enable=YES --本地用户写入
local_umask=022 --本地用户写入权限
dirmessage_enable=YES --进入目录提示信息
xferlog_enable=YES --打开日志功能
xferlog_file=/var/log/xferlog --日志保存路径
idle_session_timeout=600 --登陆ftp后10分钟不操作断开
data_connection_timeout=120 --登陆ftp2分钟不上,断开
ascii_upload_enable=YES --上传文件用ascii格式
ascii_download_enable=YES --下载文件用ascii格式
deny_email_enable=YES --禁用用邮箱登陆
banned_email_file=/etc/vsftpd/banned_emails --拒绝哪个邮箱密码
chroot_local_user=YES --不允许本地用户跳出ftp根目录
chroot_list_enable=YES --允许本地用户ftp根目录
chroot_list_file=/etc/vsftpd/chroot_list --用户存放的文件
pam_service_name=vsftpd --使用pam模块管理用户
userlist_enable=YES --启用/etc/vsftpd/user_list文件
tcp_wrappers=YES --启用/etc/host.allow文件
listen_ipv6=YES --启用ipv6协议
listen=YES --监听
local_max_rate --本地用户最大下载速度
anon_max_rate --匿名用户最大下载速度
max_clients --最大客户端连接
max_perl_ip --每一个用户最大的连接数
guest_enable --启用虚拟用户
guest_username --指定虚拟用户
user_config_dir --用户的配置目录(user_config_dir=/etc/dir 在dir中建立以用户同名的文件,将参数写入到文件中)
3.匿名用户
[root@node1 ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES --启用匿名用户
anon_upload_enable=YES --匿名用户有上传的权限
anon_mkdir_write_enable=YES --匿名用户创建文件的权限
anon_other_write_enable=YES --匿名用户有更改的权限
[root@node1 ~]# /etc/init.d/vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
[root@node1 ~]#
(1)在windows系统中登陆
(2)在linux系统中登陆
[root@centos ~]# ftp 2.2.2.27
Connected to 2.2.2.27.
220 (vsFTPd 2.2.2)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (2.2.2.27:root): anonymous --输入匿名用户
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
4.本地用户
[root@node1 ~]# useradd tong
[root@node1 ~]# passwd tong
Changing password for user tong.
New password:
BAD PASSWORD: it is based on a dictionary word
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.
[root@node1 ~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO --禁止匿名用户
local_enable=YES --启用本地用户
write_enable=YES --本地用户的写权限
local_umask=022
[root@node1 ~]# /etc/init.d/vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
[root@node1 ~]#
在windows系统中登陆
[root@centos ~]# ftp 2.2.2.27
Connected to 2.2.2.27.
220 (vsFTPd 2.2.2)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (2.2.2.27:root): tong --用本地用户tong登陆
331 Please specify the password.
Password: --输入密码
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
5.虚拟用户
[root@node1 vsftpd]# useradd -s /sbin/nologin cheng
[root@node1 ~]# cd /etc/vsftpd/
[root@node1 vsftpd]# vim ftp.txt --创建文件写入ftp虚拟用户
test --登陆虚拟用户
123 --密码
test1
456
[root@node1 vsftpd]# db_load -T -t hash -f ftp.txt ftp.db --将文件生成数据库
[root@node1 vsftpd]# ll ftp*
-rw-r--r-- 1 root root 12288 Jan 14 10:03 ftp.db
-rw-r--r-- 1 root root 19 Jan 14 10:01 ftp.txt
-rw-------. 1 root root 125 Feb 19 2013 ftpusers
[root@node1 vsftpd]# chmod 600 ftp.db
[root@node1 vsftpd]# vim /etc/pam.d/vsftpd --修改ftp的pam文件
account required pam_userdb.so db=/etc/vsftpd/ftp.db --只留这两行,其余全部删除
auth required pam_userdb.so db=/etc/vsftpd/ftp.db
[root@node1 vsftpd]# vim /etc/vsftpd/vsftpd.conf --在配置文件中启用虚拟用户
guest_enable=YES
guest_username=cheng
[root@node1 vsftpd]#
在windows系统中登陆
在linux系统中登陆
[root@centos ~]# ftp 2.2.2.27
Connected to 2.2.2.27.
220 (vsFTPd 2.2.2)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (2.2.2.27:root): test --输入虚拟用户test
331 Please specify the password.
Password: --输入123密码
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> dir
227 Entering Passive Mode (2,2,2,27,54,109).
150 Here comes the directory listing.
drwx------ 2 503 503 4096 Jan 14 02:15 12
drwx------ 2 503 503 4096 Jan 14 02:15 2
226 Directory send OK.
ftp> quit
[root@centos ~]# ftp 2.2.2.27
Connected to 2.2.2.27.
220 (vsFTPd 2.2.2)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (2.2.2.27:root): test1 --输入虚拟用户test1
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> dir
227 Entering Passive Mode (2,2,2,27,51,69).
150 Here comes the directory listing.
drwx------ 2 503 503 4096 Jan 14 02:15 12
drwx------ 2 503 503 4096 Jan 14 02:15 2
226 Directory send OK.
ftp>