FTP服务部署

  • 通过 yum install vsfptd 来进行安装

[root@test ~]# yum install vsftpd


服务的启动配置文件

/etc/rc.d/init.d/vsftpd
安装完之后在/etc/vsftpd/路径下会存在三个配置文件
/etc/vsftpd/vsftpd.conf 主配置文件
/etc/vsftpd/ftpusers 指定哪些用户不能访问FTP服务器,这里的用户包括root在内的用户。
/etc/vsftpd/user_list 指定的用户是否可以访问ftp服务器。

通过vsftpd.conf文件中的userlist_deny的配置来决定配置中的用户是否可以访问,
userlist_enable=YES ,userlist_deny=YES ,userlist_file=/etc/vsftpd/user_list

这三个配置允许文件中的用户访问FTP。

  • 编写配置文件

ftp服务有默认的配置文件,将原配置文件备份,重新编写配置文件

[root@test ftp]# mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

[root@test ~]# cat /etc/vsftpd/vsftpd.conf

  anonymous_enable=NO
local_enable=YES

    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    listen=YES
    pam_service_name=vsftpd
    userlist_enable=YES

    tcp_wrappers=YES

默认配置文件说明:

参数

说明

anonymous_enable=YES

允许匿名用户

local_enable=YES

允许使用本地用户账号登陆

write_enable=YES

允许ftp用户写数据

connect_from_port_20=YES

通过20端口传输数据

#anon_mkdir_write_enable=YES 

是否允许匿名账户在FTP服务器中创建目录

xferlog_enable=YES 

启用上传和下载日志功能

#ascii_download_enable=YES

是否允许使用ASCII格式来上传和下载文件

pam_service_name=vsftpd

/设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/目录下.

userlist_enable=YES

用户列表中的用户是否允许登录FTP服务器,默认是不允许

tcp_wrappers=YES

/使用tcp_wrqppers作为主机访问控制方式

其他的配置参数说明:

ftpd_banner=welcome to ftp service :设置连接服务器后的欢迎信息
idle_session_timeout=60 :限制远程的客户机连接后,所建立的控制连接,在多长时间没有做任何的操作就会中断(秒)
data_connection_timeout=120 :设置客户机在进行数据传输时,设置空闲的数据中断时间
accept_timeout=60 设置在多长时间后自动建立连接
connect_timeout=60 设置数据连接的最大激活时间,多长时间断开,为别人所使用;
max_clients=200 指明服务器总的客户并发连接数为200
max_per_ip=3 指明每个客户机的最大连接数为3
local_max_rate=50000(50kbytes/sec)  本地用户最大传输速率限制
anon_max_rate=30000匿名用户的最大传输速率限制
pasv_min_port=端口
pasv-max-prot=端口号 定义最大与最小端口,为0表示任意端口;为客户端连接指明端口;
listen_address=IP地址 设置ftp服务来监听的地址,客户端可以用哪个地址来连接;
listen_port=端口号 设置FTP工作的端口号,默认的为21
local_root=path 无论哪个用户都能登录的用户,定义登录帐号的主目录, 若没有指定,则每一个用户则进入到个人用户主目录;
chroot_local_user=yes/no 是否锁定本地系统帐号用户主目录(所有);锁定后,用户只能访问用户的主目录/home/user;
chroot_list_enable=yes/no 启用不锁定用户在主目录的名单
chroot_list_file=/etc/vsftpd/chroot_list指定列表文件
userlist_enable=YES/NO 是否加载用户列表文件;
userlist_deny=YES 表示上面所加载的用户允许登录;
userlist_file=/etc/vsftpd/user_list 指定列表文件

注意:

   在这里要禁止匿名登陆anonymous_enable=NO

  • 创建用于FTP连接用户,设置密码

[root@test ~]# useradd ftpuser -s /sbin/nologin  -M
[root@test ~]# echo "ftpuser" |passwd --stdin ftpuser
Changing password for user ftpuser.
passwd: all authentication tokens updated successfully
  • 创建ftp共享目录,将目录所有者属于ftpuser,将 ftpuser用户家目录修改为共享目录。

[root@test ~]# mkdir /ftpshare
[root@test ~]# chown ftpuser.ftpuser /ftpshare
[root@test ~]# usermod ftpuser -d /ftpshare
  • 启动vsftpd 服务,并设置开机自启动

[root@test ~]#systemctl start vsftpd
[root@test bin]#systemctl enable vsftpd
  •  登陆测试

原文地址:https://www.cnblogs.com/yuanjinqiu/p/10219854.html