linux上配置ftp服务器(Linux系统搭建FTP服务器教程)
时间:2023-09-10 11:13:59 整理: • 2人看过
Liunx系统下有几个优秀的ftp服务,各有特点,适合不同的应用。通常,在各种Linux发行版中,默认的ftp软件是vsftp。本文以在CentOs7系统下构建vsftpd服务为例。
1。首先,确保vsftpd软件已经安装在系统中,并检查命令:
rpm-q vsftpd rpm-QA | grep vsftpd
2。安装vsftpd(以yum安装为例)
yum install -y vsftpd
3。关闭selinux和iptables(也可以配置防火墙相关的访问策略来防止系统阻塞),并将vsftpd设置为自动启动。
永久关闭selinux
vi /etc/sysconfig/selinux将配置SELinux = enforcing更改为SELinux=disabled Save退出并重新启动服务器 验证是否关闭命令:getenforce。
关闭防火墙
centos 7操作命令:system CTL stop firewall d . service CentOS 6操作命令:service stop iptables。
将vsftpd设置为自动启动。
centos 7操作命令:systemctlenable vsftpd . service CentOS 6操作命令:chkconfig vsftpd on。
4。VSFTPD的配置
ftpusers该文件用于指定哪些用户不能访问ftp服务器。
user_list该文件指定的默认帐户默认情况下无法访问FTP服务器。
vsftpd . conf vsftpd的主配置文件,路径:
/etc/vsftpd/vsftpd . conf # vsftpd . conf的配置
#允许匿名登录 anonymous_enable=NO #允许本地用户登录 local_enable=YES #允许本地用户写入FTP服务器文件 Write _ enable = YES[/]Local _ root =/var/FTP # Anon _ root =/var/FTP/pub #是否允许匿名用户上传文件,如果是, 您必须设置全局 write _ enable = yes Anon _ upload _ enable = yes #允许匿名用户创建新文件夹 Anon _ mkdir _ write _ enable = yes #允许匿名用户除创建和上载之外的其他权限 Anon _ other _ write _ enable = yes #本地用户掩码 local_umask=022 #设置匿名记录器添加或上载文件时的umask值 dirmessage _ enable = yes xferlog _ enable = yes #主动模式数据传输端口20 Connect _ from _ port _ 20 = noxferlog _ STD _ format = yes #要监听 ipv4监听吗?listen _ ipv6 = yes PAM _ service _ name = vsftpd userlist _ enable = yes TCP _ wrappers = yes #是否要设置被动模式 Pasv _ enable = yes Pasv _ min _ port = 20020 Pasv _ max _ port = 20020 #被动模式下返回给客户端的IP地址(在服务器的内网穿透时使用) pasv _ address = 0.0.0(服务器外网的IP)[/h]默认情况下,只有用户自己的ftp目录 #需要同时设置allow _ writable _ chroot,允许受限用户写入。 否则,将出现错误 ch root _ local _ user = yes ch root _ list _ enable = yes ch root _ list _ file =/etc/vsftpd/ch root _ list allow _ writable _ ch root = yes[
5。创建例外用户文件
#即使没有例外,用户也必须创建 vim/etc/vsftpd/ch root _ list。
我只希望指定的帐号不要被限制在它的主目录下,其他所有帐号都被限制在主目录下。
关于chroot_local_user和chroot_list_enable的组合效果,请参考下表:
chroot_local_user=YES
chroot_local_user=NO
chroot_list_enable=YES
1。所有用户都被限制在其主目录中。2.使用chroot_list_file指定的用户列表。这些用户是“例外”,不受限制。
1。并非所有用户都局限于他们的主目录。2.使用chroot_list_file指定的用户列表,这些用户被限制为“例外”。
chroot_list_enable=NO
1。所有用户都被限制在其主目录中。2.不使用chroot_list_file指定的用户列表,也没有“例外”用户。
1。并非所有用户都局限于他们的主目录。2.不使用chroot_list_file指定的用户列表,也没有“例外”用户。
6。创建新的ftp用户
#添加一个测试(用户名),在/home/FTP/test useradd-groot-d/home/FTP/test-s/sbin/nologin test #如果以后想把这个用户的上传改为(/XXX/FTP),请使用以下命令: usermod-d/XXX/FTP/test test #设置用户密码 passwd test。
因为安全问题,vaftpd不允许匿名用户在ftp主目录上传。您可以创建一个权限为777的新子目录。
8。关于local_umask和anon_umask掩码
掩码决定上传文件的权限,掩码022表示上传文件的权限为。
666-022 = 644->;rw-r - r -
掩码表示要删除的权限是,默认设置为033。
9。启动vsftp服务。
#centos7操作命令 Start:system CTL Start vsftpd . service Stop:system CTL Stop vsftpd . service Restart:system CTL Restart vsftpd . service 。查看状态:system CTL status vsftpd . service # centos 6操作命令 Start:service vsftpd Start Stop:service vsftpd Stop Restart:service vsftpd Restart 查看状态:service vsftpd status。
更多精彩内容请点击:Linux系统上搭建FTP服务器教程。
,