**
Linux_centos 搭建FTP服务器(初步)
**
学习一个新服务的方法
1、 此服务器的概述:名字,功能,特点,端口号
2、 安装
3、 配置文件的位置
4、 服务启动关闭脚本,查看端口
5、 此服务的使用方法
6、 修改配置文件,实战举例
7、 排错(从下到上,从内到外)
名字 | vsftpd.service |
---|---|
端口 | 21 |
功能 | 文件存储与访问 |
协议 | ftp协议 |
名字 | vsftpd.service |
配置文件 | /etc/vsftpd/vsftpd.cfg |
名字 | vsftpd.service |
用户名 | pzl |
密码 | ****** |
服务开启方法 | #systemctl restart vsftpd.service |
共享目录 | /var/ftp/pub |
一、ftp服务器
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。
FTP(File Transfer Protocol: 文件传输协议)作用: Internet 上用来传送文件的协议。
常见FTP服务器:
Windows:Serv-U FTP Server
Linux:ProFTPD:(Professional FTP daemon)一个Unix平台上或是类Unix平台上(如Linux, FreeBSD等)的FTP服务器程序。
本文的主角:vsftp。VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。
二、安装vsftpd及ftp命令
#yum install vsftpd -y
#yum install ftp -y
三、vsftpd服务器的配置文件
实现在开启防火墙和SELinux情况下,实现匿名用户的登录,可以上传下载,可以创建目录,创建权限掩码为022,可以删除文件,最大上传速度为100kbit/s。
vsftpd服务器的主要配置文件是/etc/vsftpd/vsftpd.conf。
1.服务器端设置
1.1修改配置文件开放匿名用户上传、下载及其他权限,
#vi /etc/vsftpd/vsftpg.cfg
anonymous_enable=yes //允许匿名用户登录
anon_upload_enable=yes //允许匿名用户上传
write_enable=yes //赋予写权限
anon_mkdir_write_enable=yes //允许匿名用户新建文件夹
anon_other_write_enable=yes //匿名用户拥有除了上传和新建目录之外的其他权限
anon_amask=022 //匿名用户的权限掩码
anon_max_rate=102400//最大上传速度100kbit/s
然后重启服务
#systemctl restart vsftpd.service
1.2修改上传目录的权限
为了让匿名用户实现上传,必须开放目录的写权限,以anonymous用户名登录后,相当于ftp用户的身份,ftp的登录目录为/var/ftp,开放这个目录的写权限:
#chmod 777 /var/ftp
但是再重启服务并在服务器上用ftp登录时会出错,这是因为/var/ftp的权限不对所致,这个目录的权限是不能打开所有权限的。
解决方法为在/var/ftp下再建一个目录,权限是777就可以了:
#mkdir /var/ftp/pub #chmod 777 /var/ftp/pub
1.3开启防火墙和SELinux。
#iptables -I INPUT -p tcp --dport 21 -j ACCEPT [root@localhost ~]# setsebool allow_ftpd_anon_write on [root@localhost ~]# setsebool allow_ftpd_full_access on
四、登陆测试
测试之前查看服务是否启动:
1.linux 内部测试
#ftp localhost
2.web 测试
出现这样的结果,说明安装正确,可匿名登陆。 it’s very wonderful!!!
补充: 禁止匿名登陆
1.修改 /etc/vsftpd/vsftpd.conf
2. systemctl restaat vsftpd.service
再次登陆,就会出现错误,因为禁止匿名登陆。
3.增加用户权限。
3.1创建两个用户目录
#cd /var/ #mkdir www #cd www #mkdir pzl #mkdir test
3.2修改用户目录
#useradd -d /var/www/pzl pzl #passwd pzl #usermod -d /var/www/test test #passwd test
或者 先创建用户
#useradd pzl #usermod -d /var/www/pzl pzl
3.3查看用户信息
#tail /etc/passwd
3.4 启用ftp的用户白名单
#vi vsftpd.conf #chroot_list_enable=no #local_root=/var/www
#vi user_list
重启vsftpd服务
#systemcl restart vsftpd
3.5在windows上通过fxp客户端访问
输入白名单中的可允许登陆的用户名
3.6更改文件夹的权限
#cd /var/www #ll #chown pzl:pzl pzl #chown test:test test
r=4 w=2 x=1
3.7把test 加入 pzl 用户组
实时(按进度)更新,如有不当之处请留言!!!!!!
联系mail: 19970909lin@qq.com