`
cristal
  • 浏览: 27083 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

EC2中配置vsftpd使用Virtual User

阅读更多
在EC2的Ubuntu中配置一个vsftpd:

安装vsftpd
$ sudo apt-get install vsftpd

配置pam
首先编辑一个文本文件用于virutal users:

$ vi logins.txt

user1
abc
user2
def


其中含有两个user,一个是user1,密码是abc,另外一个是user2,密码是def


$ sudo db4.6_load -T -t hash -f logins.txt /etc/vsftpd_login.db
$ sudo chmod 600 /etc/vsftpd_login.db


如果没有安装Berkeley的db,则需另外安装 apt-get install dbutils


$ sudo vi /etc/pam.d/ftp

输入一下两行:

auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login



添加ftp的用户
$ sudo mkdir /home/ftpsite
$ sudo useradd -d /home/ftpsite ftpuser
$ sudo chown ftpuser:ftpuser /home/ftpsite


配置vsftpd
$ sudo mv /etc/vsftpd.conf /etc/vsftpd.conf.orig
$ sudo vi /etc/vsftpd.conf

加入以下配置:
anonymous_enable=NO
local_enable=YES
write_enable=NO
user_config_dir=/etc/vsftpd_user_conf
use_localtime=YES
xferlog_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
pam_service_name=ftp
guest_enable=YES
guest_username=virtual
listen=YES
listen_port=21
connect_from_port_20=YES
hide_ids=YES
max_per_ip=1
max_clients=5
local_umask=0022
file_open_mode=0777


针对不同的用户设置不同的权限,对于user1,我们希望该用户只能上传文件:

$ sudo mkdir /etc/vsftpd_user_conf

$ sudo vi /etc/vsftpd_user_conf/user1

输入以下配置:

anon_upload_enable=YES
write_enable=YES
anon_umask=0022
download_enable=NO
dirlist_enable=NO


对于用户user2,我们希望该用户不受限制

$ sudo vi /etc/vsftpd_user_conf/user2

输入以下配置

anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
download_enable=YES
file_open_mode=0777


打开EC2的端口
使用ElasticFox打开20-21端口,或者使用ec2 tools:
ec2-authorize default -p 20 21
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics