FTP 是 File Transfer Protocol (文件传输协议) 的英文简称, 用于在 Internet 上控制文件的双向传输
FTP 的主要作用就是让用户连接一个远程计算机 (这些计算机上运行着 FTP 服务器的程序), 并查看远程计算机中的文件, 然后把文件从远程计算机复制到本地计算机, 或把本地计算机的文件传送到远程计算机
小公司用的多, 大企业不用 FTP, 因为不安全 (使用自动化管理平台)
搭建 FTP 服务流程
centos 上自带 vsftpd
yum install -y vsftpd
useradd -s /sbin/nologin virftp 创建普通用户 virftp 随意只是个名字
- vim /etc/vsftpd/vsftpd_login // 内容如下, 奇数行为用户名, 偶数行为密码, 多个用户就写多行
- testuser1
- shenguanchu1
chmod 600 /etc/vsftpd/vsftpd_login 安全考虑
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db 转化为计算机能识别的二进制文件
mkdir /etc/vsftpd/vsftpd_user_conf 创建虚拟用户配置文件所在目录
cd /etc/vsftpd/vsftpd_user_conf
vim testuser1 配置文件名字与用户需相同 // 加入如下内容
local_root=/home/virftp/testuser1 定义虚拟用户家目录
anonymous_enable=NO 是否允许匿名用户
write_enable=YES 是否允许可写
local_umask=022 创建目录权限
anon_upload_enable=NO 是否允许匿名用户上传
anon_mkdir_write_enable=NO 是否允许匿名用户创建目录, 写
idle_session_timeout=600 空闲时间段超时时间
data_connection_timeout=120 数据传输超时时间
max_clients=10 最大客户端
mkdir /home/virftp/testuser1 创建虚拟用户家目录
touch /home/virftp/tesruser1/shenguanchu.txt 创建一个测试文件
chmod -R virftp:virftp /home/virftp 修改权限
- vim /etc/pam.d/vsftpd // 在最前面加上 定义密码文件在哪 认证用的文件
- auth sufficent /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
- account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
注意 32 位和 64 位
vim /etc/vsftpd/vsftpd.conf
将 anonymous_enable=YES 改成 anonymous_enable=NO
将 #anon_upload_enable=YES 改成 anon_upload_enable=NO
将 #anon_mkdir_write_enable=YES 改成 anon_mkdir_write_enable=NO
再增加如下内容
- chroot_local_user=YES
- guest_enable=YES
- guest_username=virftp
- virtual_use_local_privs=YES
- user_config_dir=/etc/vsftpd/vsftpd_user_conf
- allow_writeable_chroot=YES
然后 systemctl start vsftpd // 启动 vsftp 服务 centos7 以下用 service vsftpd start
window 客户端 安装软件 filezilla client 开源免费软件
Linux 上安装 lftp
测试 FTP
- yum install -y lftp
- lftp ftpuser1@127.0.0.1
执行命令 ls, 看是否正常输出
若不正常查看日志 / var/log/messages 和 / var/log/secure
也可 window 上安装 XFTP 方便安全
来源: http://www.bubuko.com/infodetail-2687271.html