ubuntu vsftp 安装配置
一、安装 1. sudo apt-get install vsftpd 2. sudo apt-get install db4.8-util 用于创建虚拟用户
二、配置 1. 使用虚拟用户的时候,必须创建一个系统用户或者用现有的用户(主要是创建目录和设置目录的权限用) sudo useradd vsftpd -d /home/vsftpd -s /bin/false
说明: -d /home/vsftpd 指定这个用户的目录 -s /bin/false 这个用户不能登录系统(创建用户时默认是可以登录系统,可以手动修改/etc/passwd 中对应用户的最后一个字段实现) 例如: akm:x:1000:1000:fanchangjie,,,:/home/fanchangjie:/bin/bash sshd:x:113:65534::/var/run/sshd:/usr/sbin/nologin mysql:x:114:123:MySQL Server,,,:/nonexistent:/bin/false ftp:x:1002:1002::/home/work/:/bin/false
2. 创建虚拟用户 touch loguser.txt vim loguser.txt 奇数行是账号,偶数行是密码 例如: ftp01 passwd01 ftp02 passwd02 保存退出后生成数据库 sudo db4.8_load -T -t hash -f loguser.txt /etc/vsftpd_login.db 会在/etc/目录下生成一个vsftpd_login.db的文件,设置文件的权限 sudo chmod 600 /etc/vsftpd_login.db3. 配置PAM文件 打开/etc/pam.d/vsftpd 有些版本是/etc/pam.d/vsftpd.vu 将原有的内容全部注释掉,输入如下两行: auth required pam_userdb.so db=/etc/vsftpd_login account required pam_userdb.so db=/etc/vsftpd_login 保存退出4. 编辑/etc/vsftpd.conf 至少有如下配置项 listen=YES #YES表示服务器以standalong模式运行,NO表示使用xinetd模型运行,xinetd模式需要安装xinetd及做对应配置 standalong模式的服务管理方式是sudo service vsftpd start/stop/restart xinetd的方式是sudo /etc/init.d/xinetd start/restart/stop anonymous_enable=NO #是否允许匿名登录,NO表示不允许 dirmessage_enable=YES #YES表示进入目录时显示此目录下有message_file选项指定文本文件(默认文件名是.message)的内容 xferlog_enable=YES #开启上传/下载日志,默认日志文件是/var/log/vsftpd.log xferlog_file=/var/log/vsftpd.log #修改默认的日志文件 xferlog_std_format=YES #日志使用标准xferlog格式 chroot_local_users=YES #控制用户是否能离开登录后的目录,若为NO则记录在chroot_list_file选项所指定的文件(默认是/etc/vsftpd.chroot_list)中的用户将在登录后不能离开当前目录。 guest_enable=YES guest_username=vsftpd #系统真实用户 user_config_dir=/etc/vsftpd_user_conf #虚拟用户目录和权限配置文件 pam_service_name=vsftpd #虚拟用户配置文件 local_enable=YES #接收本地用户5. 虚拟用户权限的配置
write_enable=YES anonworldreadable_only=NO anonuploadenable=YES anonmkdirwrite_enable=YES anonotherwrite_enable=YES localroot=/home/work/jenkinshome/jobs
重启服务器需要先stop再start restart命令有时不起效果sudo service vsftpd stopsudo service vsftpd start更多的配置参见:1. http://wiki.ubuntu.org.cn/Vsftpd