企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
~~~ FTP服务器配置 Wu-FTP:古老,配置复杂 Proftp:功能强大 vsftp:安全,高速,稳定 系统默认ftp软件 启动:/etc/rc.d/init.d/vsftpd start (默认启动后即支持用户宿主目录访问及匿名访问) 注意:如果上传文件,要注意宿主目录的权限,否则会上传失败 配置文件:/etc/vsftpd/vsftpd.conf 安装vsftp [root@localhost test]# rpm -q vsftpd package vsftpd is not installed [root@localhost test]# yum install vsftpd [root@localhost test]# rpm -q vsftpd vsftpd-2.2.2-11.el6_4.1.i686 [root@localhost test]# service vsftpd start 为 vsftpd 启动 vsftpd: [确定] 安装启用后,默认就可以访问了 ftp 172.17.18.3 匿名访问设置 //允许匿名登录,默认访问为ftp用户宿主目录 anonymous_enable=YES //激活上传和下载日志 xferlog_enable=YES xferlog_std_format=YES xferlog_file=/var/log/xferlog //设置欢迎信息 ftpd_banner=Welcome to Sam is FTP service,enjoy it. //设置匿名用户最大传输速率为100KB/s anon_max_rate=100000 匿名FTP用户名:ftp anonymous 密码:密码为空 ftp伪用户宿主目录 /var/ftp 常用ftp命令: 如没安装ftp组件,可以 yum install ftp ftp FTP地址 ftp> ls - 查看目录下文件 cd - 切换目录 bin - 二进制传输 lcd - 切换下载目录(本地) get - 下载单个文件 mget - 下载多个文件 put - 上传单个文件 mput - 上传多个文件 prompt - 关闭交互模式 bye - 退出 open - 连接FTP服务器 user - 输入FTP服务器用户名和密码 编写自动下载脚本 [root@localhost ftp]# cat auto.ftp open 172.17.18.3 user ftp adsd@123.com bin prompt lcd /ftp.bak mget * bye //执行自动下载-n是关闭操作ftp时,调用命令行的模式 [root@localhost ftp]# ftp -n < auto.ftp 用户访问设置 //允许用户登录 local_enable=yes write_enable=yes local_umask=022 //用户最大传输速率为200KB/s local_max_rate=200000 若启用SELinux允许用户上传文件到宿主目录,执行命令: setsebool -P ftp_home_dir 1 setsebool -P allow_ftpd_full_access 1 *关闭SELinux,编辑/etc/selinux/config 用户访问控制 限制指定的用户不能访问,而其他用户可以访问: userlist_enable=yes usrlist_deny=yes userlist_file=/etc/vsftpd.user_list 限制指定的用户可以访问,而其他用户不可以访问: userlist_enable=yes userlist_deny=no userlist_file=/etc/vsftpd.user_list //编辑,每个用户占一行 [root@localhost ftp]# vi /etc/vsftpd.user_list 1 mary 2 jack [root@localhost ftp]# service vsftpd restart 关闭 vsftpd: [确定] 为 vsftpd 启动 vsftpd: [确定] //没授权的用户禁止登录 [root@localhost ftp]# ftp 172.17.18.3 Connected to 172.17.18.3 (172.17.18.3). 220 Welcome to blah FTP service. Name (172.17.18.3:root): fukedi 530 Permission denied. Login failed. //授权的用户可以登录 [root@localhost ftp]# ftp 172.17.18.3 Connected to 172.17.18.3 (172.17.18.3). 220 Welcome to blah FTP service. Name (172.17.18.3:root): mary 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. cd 可以切换到其它目录,这是因为目录具有rx权限 比如:cd / 可以切换到根目录访问 可以通过以下设置,禁止用户切换到别的目录,只能访问自己的宿主目录 修改/etc/vsftpd/vsftpd.conf chroot 在ftp用户把宿主目录当作/目录 //设置所有用户执行chroot chroot_local_user=YES //设置指定的用户不执行chroot chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftp/chroot_list [root@localhost ftp]# vi /etc/vsftpd/chroot_list 1 mary 用户切换到其它目录,一般只有rx权限,如需对这个目录有写权限,只需改变这个目录的所有者为该用户即可,chown 用户名 目录 其它选项 //用户会话空闲10分钟后被挂断 idle_session_timeout=600 //服务器的总的并发连接数为50 max_clients=50 //每个客户机的最大连接数为3 max_per_ip=3 //指定非标准端口 listen_port=10021 ftp默认端口是21 [root@localhost ftp]# grep ftp /etc/services ftp-data 20/tcp ftp-data 20/udp # 21 is registered to ftp, but also used by fsp ftp 21/tcp ftp 21/udp fsp fspd [root@localhost ftp]# ftp 172.17.18.3 10021 Connected to 172.17.18.3 (172.17.18.3). 220 Welcome to blah FTP service. Name (172.17.18.3:root): //指定扫描端口范围 [root@localhost ftp]# nmap -p 1-65535 172.17.18.3 Starting Nmap 5.51 ( http://nmap.org ) at 2014-05-06 22:07 CST Nmap scan report for 172.17.18.3 Host is up (0.000012s latency). Not shown: 65529 closed ports PORT STATE SERVICE 22/tcp open ssh 111/tcp open rpcbind 3306/tcp open mysql 10000/tcp open snet-sensor-mgmt 10021/tcp open unknown 55013/tcp open unknown ~~~