Linux系统服务搭建之vsftp
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统服务搭建之vsftp相关的知识,希望对你有一定的参考价值。
一、samba 局域网传输共享
优点:实时修改服务器上的内容
二、Vsftp :very securet file transferprotocol
2.1、网络文本协议
特点: A、默认只有普通用户权限,可下载不可上传
B、任何文件的修改需要上层权限
C、本身的功能很强大
D、使用chroot命令修改用户进入的根目录
端口: TCP 21 ——命令信道——(监听)——持续连接
TCP 20 ——数据信道——(上传、下载)——按需连接
2.2、连接模式: 主动模式、被动模式(Linux默认)
特点:效率高、速度快、但服务器的20端口连续开放,很容易受到网络攻击,不安全!
特点:请求过多时,服务器开放的随机端口太多,压力太大; 安全性强!
传输模式: 1、ASCII传输 2、二进制传输
FTP软件:
服务器端: 1、proftpd 2、pureftpd
3、vsftpd 高性能 高安全
客户端: 1、ftp 2、lftp
配置文件:
/etc/vsftpd/vsftpd.conf
三、用户访问类型:匿名用户 指定用户
3.1、匿名用户——ftp 或者 anonymous,密码:空 或 任意字符
共享文件位置 :/var/ftp/pub (默认只能下载)
win访问方式: ftp :// 域名或者IP
注:每次配置文件的修改,都必须先关闭远程匿名登录端,再重新启动服务
[[email protected] ~]# servicevsftpd restart
例子:
1、 匿名登录
用户名:ftp
密码:空
B、lftp 192.168.100.128 不需要用户名,密码
2、 是否允许匿名用户登录“YES”是 “NO”否
禁止登录 anonymous_enable= NO
重启服务
使用客户端192.168.100.10测试
lftp 192.168.100.128
ftp 192.168.100.128
3、 anon_upload_enable=YES 允许匿名用户上传
开启匿名用户登录(默认权限只能下载)
在客户端192.168.100.10 使用命令put测试
4、 anon_umask=022 匿名用户已上传的文件允许下载
anon_umask=073 匿名用户已上传的文件允许下载
5、anon_other_write_enable=YES 允许匿名用户删除文件
此处使用ftp登录后,仍然无法删除!!!!
注意:在使用 FTP LFTP是尽量使用lftp命令,避免出现很多错误
6、 anon_mkdir_write_enable=YES 允许匿名用户创建目录
7、改变匿名用户共享文件的登录目录
anon_root=/test (共享目录的位置可以自定义)
测试:先在FTP服务器上创建 /test目录,再在里面创建文件 pp、mm
匿名用户会把 /test认为是自己的根目录 /
8、max_per_ip=1 限制一个IP链接个数
超过连接个数会是下面的结果: not connected
很重要——以上匿名用户的几个权限操作前提:
Chown ftp /test或者chmod 777 /test
即保证ftp匿名用户对目录及文件有W权限
切记!!!!!!
3.2、本地用户
需要在服务器端先添加用户 useradd bcl
Passwd ****
共享文件位置 :/home/bcl/
win访问方式: ftp://[email protected]IP
以上两种的登录方式都为WIN中,Linux中则是 ftp + IP
权限配置
权限配置实验:
1、 创建两个用户:bcl、hyl
bcl使用ftp登录不能切换目录
hyl使用ftp登录可以切换目录
步骤:
1、开启相关权限设置,
在允许文件列表 /etc/vsftpd/chroot_list 中添加放行用户 hyl
[[email protected] ~]# cd /etc/vsftpd/
[[email protected] vsftpd]# touch chroot_list
[[email protected] vsftpd]# vim chroot_list
文件中只写用户名 hyl
3、保存并重启服务 service vsftpd restart
1.4、验证登录信息
2、 设置欢迎信息
两个设置信息只能同时显示一个,且为登录之前的欢迎信息。
ftpd_banner=*** 欢迎语句
banner_file=*** 欢迎文件(将文件里面的内容展现出来,文件自拟)
例子:
3、 只禁止bcl、hyl登录
3.1、修改配置文件 /etc/vsftpd/vsftpd.conf,开启黑白名单
3.2、在黑白名单配置文件 /etc/vsftpd/user_list 中添加用户名 bcl hyl
验证:
4、 允许bcl登录、不允许hyl登录
4.1、修改配置文件 /etc/vsftpd/vsftpd.conf,开启黑白名单
4.2、在黑白名单配置文件 /etc/vsftpd/user_list 中添加用户名bcl 不添加hyl
验证:bcl可以登录,hyl并不能登录
3.3、虚拟用户
设置虚拟用户,可以单独限制某一个用户的FTP权限,而匿名用户和本地用户只能限制某一类人的FTP权限!
实验例子:
创建三个用户,用户名:abc——密码:123456——权限:可以上传文件
用户名:xyz——密码:654321——权限:可以创建目录
用户名:qwe——密码:123456789——权限:可以修改文件名
实验步骤:
3.3.1、创建用户信息文件并生成数据库文件
Vim /etc/vsftpd/name
内容为:
abc
123456
xyz
654321
qwe
123456789
转变成数据库文件(命令是固定的,必须这样写)
[[email protected]]# db_load -T -t hash -f name name.db
改变文件name 及 name.db 的权限,只有root可以查看
3.3.3、建立支持虚拟用户的PAM认证文件,添加虚拟用户支持
修改后
3.3.4、在vsftpd.conf 文件中添加支持配置
创建 /etc/vsftpd/dir文件,并在文件下创建上面的三个用户文件并编辑相应的权限
用户abc——权限设置:anon_upload_enable=YES
用户xyz——权限设置:anon_mkdir_write_enable=YES
用户qwe——权限设置:anon_other_write_enable=YES
3.3.5、验证三个用户的权限情况
注:
1、 虚拟用户登录成功,但是权限无法实现:vsftpd.conf中开启的匿名用户的相关权限会和dir中开启的用户权限相互冲突,故应全部注释掉!
2、 在编辑vsftpd.pam认证文件时,中“name”为数据库文件名,一定不要搞错,否则虚拟用户登录不了
3、 Vsftpd服务没有启动,则会有下面的提示
4、 可以连接成功,其他命令都可以使用,但是就是不能使用 ls 、dir等查看命令,此时则需要给共享文件 /var/ftproot更改权限
本文出自 “老白博客” 博客,请务必保留此出处http://ycreazy.blog.51cto.com/12237051/1931409
以上是关于Linux系统服务搭建之vsftp的主要内容,如果未能解决你的问题,请参考以下文章