天天看点

vsftp配置ftp服务

yum install -y vsftpd db4-utils

建立虚拟账号相关联的系统账号 useradd virftp -s /sbin/nologin  

建立虚拟账户相关的文件  vim  /etc/vsftpd/vsftpd_login //内容如下 

    test1   

    123456

    test2

    abcdef

注意:(这里名字要写在最前面,不然会有问题,前面不能有空格)

chmod 600 /etc/vsftpd/vsftpd_login

生成对应的库文件 db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

建立虚拟账号相关的目录以及配置文件 mkdir  /etc/vsftpd/vsftpd_user_conf

cd   /etc/vsftpd/vsftpd_user_conf  创建和用户对应的配置文件

vim test1 内容如下

local_root=/home/virftp/test1

anonymous_enable=NO

write_enable=YES

local_umask=022

anon_upload_enable=NO

anon_mkdir_write_enable=NO

idle_session_timeout=600

data_connection_timeout=120

max_clients=10

max_per_ip=5

local_max_rate=50000

mkdir /home/virftp/test1

修改权限 chown -R virftp:virftp /home/virftp

vim /etc/pam.d/vsftpd   在最开头添加两行 

auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login   //如果是64位系统则改为/lib64/security/pam_userdb.so 

account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login   //如果是64位系统则改为/lib64/security/pam_userdb.so 

再修改/etc/vsftpd.conf  

vim /etc/vsftpd/vsftpd.conf

anonymous_enable=YES改为anonymous_enable=NO

#anon_upload_enable=YES 改为 anon_upload_enable=NO

#anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO

再增加

chroot_local_user=YES

guest_enable=YES

guest_username=virftp

virtual_use_local_privs=YES

user_config_dir=/etc/vsftpd/vsftpd_user_conf

(在下面找一行插入,不要放最后面)

启动vsftpd服务/etc/init.d/vsftpd start  

错误检查:

查看less /var/log/secure

telnet IP 21 (看结果是220,还是500,220是正确的)

允许windows上传,需要在在vim /etc/vsftpd/vsftpd.conf中还需设置anon_upload_enable=YES(这条好像不用)

windows验证:

切记,不能用网页打开

<a href="http://s4.51cto.com/wyfs02/M02/85/A9/wKiom1erVePxM0pDAAANSQs98Ao338.png" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M02/85/A9/wKiom1erVeSBzBtkAAENfey3BXc909.png" target="_blank"></a>

客户端实验验证

ftp客户端需要安装lftp包yum install -y lftp

登录命令lftp test1@ftp服务端的ip地址 

<a href="ftp://192.168.0.106/" target="_blank">ftp://192.168.0.106</a>

最常用的命令有

ls 列出远程机的当前目录

cd 在远程机上改变工作目录

lcd 在本地机上改变工作目录

ascii 设置文件传输方式为ASCII模式

binary 设置文件传输方式为二进制模式

close 终止当前的ftp会话

hash 每次传输完数据缓冲区中的数据后就显示一个#号

getmget 从远程机传送指定文件到本地机

putmput 从本地机传送指定文件到远程机

open 连接远程ftp站点

断开与远程机的连接并退出ftp

? 显示本地帮助信息

! 转到Shell中

  linux客户端:

ls 

put /etc/passwd .

本文转自 15816815732 51CTO博客,原文链接:http://blog.51cto.com/68686789/1833173