linux上部署ftp服务

今天同事让帮忙部署一个ftp服务,以前折腾过几次,不过总会有奇奇怪怪的问题.今天的 话结合chatglm4,整理了一下部署.

在CentOS 7上部署FTP服务,可以使用VSFTP(Very Secure FTP Daemon),这是一个安全、快速的FTP服务器。以下是部署FTP服务的步骤:

  1. 安装VSFTP:
sudo yum install vsftpd
  1. 启动VSFTP服务并设置为开机启动:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
  1. 创建FTP用户tj,并设置密码为123456。同时,为了安全起见,我们会创建一个没有登录shell权限的用户:
sudo useradd -d /data -m tj
echo "123456" | sudo passwd --stdin tj
  1. 配置VSFTP以使用本地用户:
    编辑VSFTP配置文件/etc/vsftpd/vsftpd.conf,确保以下参数设置正确:
sudo nano /etc/vsftpd/vsftpd.conf

找到并修改或添加以下参数:

local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES

确保anonymous_enable=YES被注释掉,以禁用匿名登录。

这里补充一个过程中遇到的问题,修改为配置,重启ftp服务失败了,提示:vsftp 500 oops un recognize variable in config file cp_wrappers. 这里根据提示修改了配置文件,注释掉了cp_wrappers项目,就启动成功了.

  1. 配置用户tj的FTP根目录为/data
    创建一个文件/etc/vsftpd/user_conf/tj,并设置FTP用户tj的配置:
sudo mkdir -p /etc/vsftpd/user_conf
sudo nano /etc/vsftpd/user_conf/tj

添加以下内容:

local_root=/data
write_enable=YES
  1. 设置正确的权限:
    确保FTP根目录/data及其父目录对tj用户和组可写,并设置正确的所有者和组:
sudo chown tj:tj /data
sudo chmod 750 /data
  1. 重启VSFTP服务以应用更改:
sudo systemctl restart vsftpd

如果FTP客户端位于防火墙或路由器后面,请确保相应的端口(默认为21号端口)已正确转发。

注意: 请根据实际情况调整防火墙设置,以确保FTP服务能够正常访问。在生产环境中,出于安全考虑,可能还需要进一步配置VSFTP,例如限制IP地址、使用SSL/TLS加密等。

你可能感兴趣的:(运维实施,linux,centos,运维)