CentOS6.0 vsftp+虚拟用户一键安装

1 篇文章 0 订阅
1 篇文章 0 订阅

新建一个shell文档

touch vsftpdinstall.sh

编辑vsftpdinstall.sh

vi vsftpdinstall.sh

添加以下内容:

pwd

string=`pwd`

#安装vsftpd

yum install -y vsftpd 

service vsftpd start 

chkconfig vsftpd on

yum install -y db4*

#创建一个文件

cd /home

touch virtual           

chmod 755 virtual

ed -s ./virtual <<EOF

a

vs

vs123

all

all123

.

w

q

EOF

db_load -T -t hash -f /home/virtual /etc/virtual.db

chmod 600 /etc/virtual.db

#修改配置文件

cd /etc/pam.d

sed -i 's/^/#&/g' vsftpd

sed -i '$ a\auth required /lib/security/pam_userdb.so db=/etc/virtual\naccount  required   /lib/security/pam_userdb.so db=/etc/virtual' vsftpd

#创建虚拟用户

useradd -d /home/virtualuser -s /sbin/nologin virtualuser

passwd virtualuser

chown -R virtualuser:virtualuser /home/virtualuser

chmod -R 755 /home/virtualuser

#/home/virtual创建用户目录

mkdir /home/virtualuser/vs

mkdir /home/virtualuser/all

chmod 777 /home/virtualuser/vs

chmod 777 /home/virtualuser/all

mkdir /etc/vsftpd_user_conf

cd /etc/vsftpd_user_conf

touch /etc/vsftpd_user_conf/vs

touch /etc/vsftpd_user_conf/all

#编辑文件vs

ed -s ./vs <<EOF

a

virtual_use_local_privs=YES

write_enable=YES

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

local_root=/home/virtualuser/vs

.

w

q

EOF

#编辑文件all

ed -s ./all <<EOF

a

virtual_use_local_privs=YES

write_enable=YES

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

local_root=/home/virtualuser/all

.

w

q

EOF

#修改vsftpd配置文件vsftpd.conf

cd /etc/vsftpd

mv vsftpd.conf vsftpd.conf.backup

touch vsftpd.conf

ed -s ./vsftpd.conf <<EOF

a

listen=YES

anonymous_enable=NO

dirmessage_enable=YES

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

chroot_local_user=YES

guest_enable=YES

guest_username=virtualuser

user_config_dir=/etc/vsftpd_user_conf

pam_service_name=vsftpd

local_enable=YES

secure_chroot_dir=/var/run/vsftpd

.

w

q

EOF

#创建一个/var/run/vsftpd文件夹

mkdir /var/run/vsftpd

service vsftpd restart

保存退出!

chmod 755 vsftpdinstall.sh

./vsftpdinstall

执行完毕就可以用ftp访问了。

默认用户为文件virtual 里面的用户名密码,基数行为用户名,偶数行为密码。

如要添加或其他用户,在文件virtual里面添加,再执行

db_load -T -t hash -f /home/virtual /etc/virtual.db

再在/etc/vsftpd_user_conf中添加对应的配置文件,重启vsftpd


不同用户可以有不同权限,权限设置如下

virtual_use_local_privs参数

当 virtual_use_local_privs=YES时,虚拟用户和本地用户有相同的权限;

当 virtual_use_local_privs=NO时,虚拟用户和匿名用户有相同的权限,默认是NO。

当 virtual_use_local_privs=YES,write_enable=YES时,虚拟用户具有写权限(上传、下载、删除、重命名)。

当 virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,

anon_upload_enable=YES 时,虚拟用户不能浏览目录,只能上传文件,无其他权限。

当 virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_upload_enable=NO 时,虚拟用户只能下载文件,无其他权限。

当 virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_upload_enable=YES 时,虚拟用户只能上传和下载文件,无其他权限。

当 virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_mkdir_write_enable=YES 时,虚拟用户只能下载文件和创建文件夹,无其他权限。

当 virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_other_write_enable=YES 时,虚拟用户只能下载、删除和重命名文件,无其他权限。




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值