您的位置:首页 > 运维架构 > Linux

Linux运维笔记----部署FTP服务器

2016-09-10 21:02 471 查看

部署FTP服务器

1.部署FTP服务器

FTP ( 文件传输协议 ) 是 INTERNET 上仍常用的最老的网络协议之一 , 它为系统提供了通过网络与远程服务器进行传输的简单方法

• 在 RED HAT ENTREPRISE LINUX 6 中。FTP服务器包的名称为VSFTPD,它代表Very Secure File Transfer Protocol Damon 服务器名称也叫做 vsftpd
• 默认配置文件让ANONYMOUS用户只能下载位于CHROOT目录中的内容./var/ftp/这意味着远程FTP客户端能以用户anonymous(匿名)或ftp身份连接到服务器(无需密码),并从ftp服务器上的/var/ftp/目录下载文件(其本地ftp用户可以读取这些文件)


2.部署网络服务

2.1安装服务软件

yum install vsftpd  -y ##安装软件


2.2启动配置服务

systemctl start vsftpd ##开启vsftpd服务
systemctl enable vsftpd ##开机自启动


2.3设置防火墙

setenforce 0  ##设置selinux


设置防火墙



2.4测试服务



3.TFP服务器的配置

3.1vsftpd文件信息

/var/ftp            ##默认的发布目录
/etc/vsftpd     ##配置目录


3.2vsftpd服务配置参数

/etc/vsftpd/vsftpd.conf          ##配置文件
Anonymous_enable=YES|NO  ##匿名用户登陆限制
write_enable=YES
anon_upload_enable=YES    ##匿名用户上传




Anon_root=/test   ##匿名用户家目录修改




anon_umask=755   ##匿名用户上传文件默认权限修改




anon_mkdir_write_enable=YES|NO   ##匿名用户建立目录




anon_world_readable_only=YES|NO  ##匿名用户下载
##参数为NO,表示用户可以下载
参数为YES,且文件其他用户没有读权限,则匿名     用户不能下载。
参数为YES,且目录其他用户没有读权限,则匿名     用户访问目录时,目录为空。
注:即使文件或者目录的所有人和所有组用户为匿名 用户,参数为YES的情况仍成立






Access failed :550 服务不允许,因为配置文件已经 修改生效(anon_world_readable_only=YES)

anon_other_write_enable=YES|NO    ##匿名用户删除




chown_uploads=YES   ##匿名用户登陆使用的用户身份
chown_username=student    ##上传的passwd文件所有者变为student




anon_max_rate=102400  (100K)    ##最大上传速率
max_clients=2  ##最大连接2个客户端






第三个链接失败



local_enable=YES|NO    ##本地用户登陆权限




Write_enable=YES|NO    ##本地用户写权限限制




Local_root=/directory    ##本地用户家目录修改




local_umask=022    ##本地用户上传文件权限




chroot_local_user=YES    ##限制本地用户浏览/目录
chmod u-w /home/*    ##所有用户被锁定到自己的家目录中




用户被锁定到家目录的黑名单建立
Chroot_local_user=NO
Chroot_list_enable=YES
Chroot_list_file=/etc/vsftpd/chroot_list


将student拉入黑名单



用户被锁定到家目录的白名单建立
Chroot_local_user=YES
Chroot_list_enable=YES
Chroot_list_file=/etc/vsftpd/chroot_list


将student加入白名单



限制本地用户登陆
vim /etc/vsftpd/ftpusers        ##用户黑名单
vim /etc/vsftpd/user_list       ##用户临时黑名单




本地用户白名单设定
userlist_deny=NO    (配置文件)
/etc/vsftpd/user_list   ##此文件因为参数设定变为白名 单,只有名单中的用户可以登陆ftp




4.FTP虚拟用户设定

创建虚拟帐号身份

vim /etc/vsftpd/loginusers
ftpuser1
123
ftpuser2
123
ftpuser3
123


在当前文件夹生成加密文件

db_load -T -t hash -f /etc/vsftpd/loginusers loginusers.db


生成验证登陆配置文件

vim /etc/pam.d/ckvsftpd     ##文件名任意
account required pam_userdb.so db=/etc/vsftpd/loginusers
auth required pam_userdb.so db=/etc/vsftpd/loginusers


编写vsftpd配置

vim /etc/vsftpd/vsftpd.conf
pam_service_name=ckvsftpd
guest_enable=YES
guset_username=ftp




虚拟帐号登陆使用身份指定
Useradd ftpuser
guset_username=ftpuser
mkdir /home/ftpuser/pub
chmod u-w /home/ftpuser




虚拟帐号家目录独立设定
vim /etc/vsftpd/vsftpd.conf
local_root=/ftpuserhome/$USER
user_sub_token=$USER

mkdir /ftpuserhome
chgrp ftpuser /ftpuserhome
chmod g+s /ftpuserhome
mkdir /ftpuserhome/ftpuser{1..3}

虚拟帐号配置独立
vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/userconf
mkdir -p /etc/vsftpd/userconf

vim /etc/vsftpd/userconf/ftpuser1
在此文件中设定配置文件中的所有参数,此文件的优先级高
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息