vsftpd
一、Centos6.x配置ftp
1.1、安装OpenSSH-server
OpenSSH-server包含了FTP服务,通常,CentOS6.x默认已经安装了OpenSSH-server
(1)查看是否安装:rpm -q openssh-server
(2)安装openssh-server:yum -y install openssh-server
1.2、创建用户和目录
(1)创建用户:useradd -m ftpuser
(默认/home/ftpuser
即为该用户的家目录)
自定义家目录
① 创建自定义目录:
mkdir -p /opt/custom_home/ftpuser
② 设置目录属主权限:
chown ftpuser:ftpuser /opt/custom_home/ftpuser
③ 设置目录访问权限:
chmod 750 /opt/custom_home/ftpuser
④ 创建用户并指定家目录:
useradd -d /opt/custome_home/ftpuser ftpuser
⑤ 设置密码:
passwd ftpuser
⑥ (可选)配置默认shell:
usermod -s /bin/bash ftpuser
(2)设置密码:passwd ftpuser
1.3、设置SFTP访问目录
(1)配置/etc/ssh/sshd_config,文件末尾添加以下内容,/path/to/chroot/directory为实际的目录路径
Match User ftpuser
ChrootDirectory /path/to/chroot/directory
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
(2)确保该目录存在且权限合理
sudo mkdir -p /path/to/chroot/directory
sudo chown root:root /path/to/chroot/directory
sudo chmod 755 /path/to/chroot/directory
# 如果需要用户有写权限,进一步调整目录权限
sudo chown ftpuser:ftpuser /path/to/chroot/directory
sudo chmod 750 /path/to/chroot/directory
1.4、重启SSH服务
(1)重启ssh服务:service sshd restart
二、Centos6.x创建ftp用户
2.1、开启FTP服务
启动vsftpd服务,并设置开机启动:service vsftpd start && chkconfig vsftpd on
2.2、防火墙
需要开放 FTP 相关端口(默认为 21,以及用于被动模式的数据传输端口范围,如 1024-1048):
sudo iptables -I INPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 1024:1048 -j ACCEPT
sudo service iptables save
sudo service iptables restart
三、Centos7.x
3.1、vsftpd的安装和配置
(1)安装vsftpd:yum -y install vsftpd
(2)编辑vsftpd配置文件:/etc/vsftpd/vsftpd.conf
# 禁用匿名访问
anonymous_enable=NO
# 允许本地用户登录
local_enable=YES
# 允许写入权限(如果需要上传文件)
write_enable=YES
# 限制用户在其家目录中,增强安全性
chroot_local_user=YES
3.2、ftp用户和目录的配置
(1)创建FTP用户:useradd -m -s /sbin/nologin ftpuser
(-s /sbin/nologin
禁止用户通过ssh登录)
(2)设置FTP用户的密码:passwd ftpuser
(3)设置目录权限
sudo chown root:ftpuser /home/ftpuser
sudo chmod 750 /home/ftpuser
# 如果有公共上传下载目录,可适当调整权限
sudo chmod -R 770 /home/ftpuser/public
3.3、防火墙配置
(1)防火墙打开FTP服务的端口:firewall-cmd --permanent --add-service=ftp
(2)重新刷新防火墙配置:firewall-cmd --reload
3.4、启动并设置vsftpd服务
(1)启动vsftpd服务:systemctl start vsftpd
(2)设置开机启动:systemctl enable vsftpd
— 业精于勤荒于嬉,行成于思毁于随 —
标签:FTP,ftpuser,sudo,开启,vsftpd,Linux,home,目录 From: https://www.cnblogs.com/houhuilinblogs/p/18195918