linux下ftp服务器的搭建与使用
1、vsftpd服务器的搭建
# yum -y install vsftpd lftp
2、搭建匿名访问ftp服务器,允许所有人上传和下载,并创建文件夹
# vim /etc/vsftpd/vsftpd.conf 修改如下配置: anonymous_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES # service vsftpd start # chkconfig vsftpd on
在windows资源管理器地址栏输入ftp地址,如下图所示
3、搭建一个ftp和web服务器,并创建两个用户team1和team2,这两个用户不能登录系统且将这两个用户的根目录限制为/var/www/html/
3-1、创建两个用户
# useradd -s /sbin/nologin team1 # useradd -s /sbin/nologin team2 # echo "team1:abc123" | chpasswd # echo "team2:abc123" | chpasswd
3-2、修改vsftpd的配置文件
# vim /etc/vsftpd/vsftpd.conf anonymous_enable=NO local_root=/var/www/html chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list # touch /etc/vsftpd/chroot_list # vim /etc/vsftpd/chroot_list team1 team2 # service vsftpd restart # chmod -R o+w /var/www/html/ # cp /etc/passwd /var/www/html
验证测试:
4、搭建一个ftp服务器,客户可以下载产品信息。公司人员可以下载和上传文件,以及删除数据
1) 创建ftp虚拟帐号。允许客户使用ftp帐号下载文件。 但是,公司人员帐号:vip帐号可以上传一内部文件。
2) 需考虑到服务器的安全性,所以关闭实体用户登录,使用虚拟帐号验证机制,并对不同虚拟帐号设置不同的权限。
3) 保证服务器的性能,还需要根据用户的等级,限制客户端的连接数及下载速度。
4-1、生成用户数据库
# vim /etc/vsftpd/vsftpd_virtualuser.txt # 创建用户文本文件 ftp 123 vip 123 # rpm -qf `which db_load` # db_load -T -t hash -f /etc/vsftpd/vsftpd_virtualuser.txt /etc/vsftpd/vsftpd_virtualuser.db # 生成数据库 # rm -rf vsftpd_virtualuser.txt # chmod 600 /etc/vsftpd/vsftpd_virtualuser.db # 修改数据库文件的访问权限
4-2、修改pam配置
# cd /etc/pam.d/ # vim vsftpd 注释掉其他内容,添加一下内容 auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_virtualuser account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_virtualuser
4-3、创建虚拟帐号对应的系统用户及ftp共享的目录
# useradd -d /var/ftp/share ftpuser # useradd -d /var/ftp/vip ftpvip # chmod -R 500 /var/ftp/share/ # chmod -R 700 /var/ftp/vip/
4-4、修改vsftpd配置文件
# vim /etc/vsftpd/vsftpd.conf 修改如下配置 anonymous_enable=NO local_enable=YES chroot_local_user=YES 添加如下配置 user_config_dir=/etc/vsftpd/vuserconfig max_clients=300 max_per_ip=10
4-5、建立虚拟账号配置文件
# mkdir /etc/vsftpd/vuserconfig # touch /etc/vsftpd/vuserconfig/ftp # touch /etc/vsftpd/vuserconfig/vip # vim /etc/vsftpd/vuserconfig/ftp guest_enable=yes # 开启虚拟账号 guest_username=ftpuser # 设置ftp 对应的系统账号为ftpuser anon_world_readable_only=no # 允许匿名用户浏览整个服务器的文件系统 anon_max_rate=50000 # 限定传输速率为 50KB/S # vim /etc/vsftpd/vuserconfig/vip guest_enable=yes guest_username=ftpvip anon_world_readable_only=no write_enable=yes # 允许在文件系统写入权限 anon_mkdir_write_enable=yes # 允许创建文件夹 anon_upload_enable=yes # 开启匿名账号的上传功能 anon_other_write_enable=yes # 允许删除、重命名 anon_max_rate=100000
4-6、验证服务
# service vsftpd restart
打开另一个服务器终端
# lftp 192.168.159.130 -u ftp,abc123 # 使用客户账号连接 lftp [email protected]:/> get prodictinfo.xls # 下载文件,查看速度 9014336 bytes transferred in 180 seconds (48.8K/s) # lftp 192.168.159.130 -u vip # 使用vip账号连接 Password: lftp [email protected]:/> get productinfo.xls # 下载文件,查看速度 9014336 bytes transferred in 91 seconds (96.9K/s) lftp [email protected]:/> rm -rf productinfo.xls # 删除文件 rm ok, `productinfo.xls' removed
转载于:https://blog.51cto.com/11392081/1785879