经过长时间学习linux服务器的搭建,这里介绍linux FTP服务器搭建的基础知识和方法,搜集了些材料,拿出来和大家分享一下。
安装软件包:
yum install vsftpd.i386
启动、重启、关闭FTP服务器(root用户):service vsftpd start/restart/stop
开机自动启动ftp服务器:
1. chkconfig vsftpd on
2. 把service vsftpd start加入/etc/rc.local即可
ftp配额限制以及时间限制的配置:
--对磁盘进行分区
-- 格式化分区
-- 创建挂载点
-- 永久挂载
-- 配额检查
-- 编辑用户配额
-- 临时启用配额
将启用写入开机脚本:
创建用户家目录:
编辑用户家目录:
修改ftp配置文件:
进入/etc/xinetd.d/vsftpd,对时间限制进行设置:
配置文件参数介绍:
配置文件: vim /etc/vsftpd/vsftpd.conf
最基本的相关设置
· listen=yes --打开ftp服务,开启匿名服务(只允许匿名用户列表ftp根目录,可以下载;根ftp目录在:/var/ftp/)
· pam_service_name=vsftpd --即使不用seliunx,也得加上这句话,这是vsftpd的身份认证方式!!!
· listen_port=21 --监听ftp端口
· listen_address=x.x.x.x --监听某个ip或地址
· idle_session_timeout=600 -- 空闲会话断开前的经过的秒数
· connect_timeout=60 --网络连接超时秒数
· accept_timeout=60 --用户连接到服务器后排队等候超时
· max_client=400 --最大客户端连接数
· max_per_ip=1 --每ip最大连接数
· local_max_rate=100000 --本地用户的最大连接速率bit
· anno_max_rate=1000 --匿名用户的最大连接速率
辅助基本设置
· ftpd_banner=欢迎信息
· banner_file=/var/vsftpd_banner_files --使用该文件中的欢迎信息,注意该设置会override ftpd_banner的设置
· banner_fail=/var/vsftpd_banner_fail --使用该文件中的显示连接失败信息,
· dirmessage_enable=yes --切换目录时使用该目录下的.message显示消息
匿名用户管理 本质上:vsftp进程将匿名用户模拟Linux上的nobody用户,所有必须保证适当的Linux系统权限
· anonymous_enable=yes --允许匿名用户访问ftp,是默认设置,访问根ftp目录 注意必须保证匿名用户所访问的目录在Linux下有写r权限
· anon_root=/var/ftp/anon --修改匿名用户的ftp根目录
· anon_upload_enable=yes --允许匿名用户在根ftp目录的上传文件权限 注意必须保证匿名用户所访问的目录在Linux下有写w权限
· anon_mkdir_write_enable=yes --允许匿名用户创建目录并上传文件权限 注意必须保证匿名用户所访问的目录在Linux下有写w权限
· anon_world_readable_only=no --允许匿名用户的读权限,可浏览所有文件、目录、子目录 注意必须保证匿名用户所访问的目录在Linux下有写r权限
本地用户管理 本质上:vsftp进程将本地用户模拟Linux上的对应本地用户,所有必须保证适当的Linux系统权限
· pam_service_name=vsftpd --即使你不用seliunx,也得加上这句话,这是vsftpd的身份认证方式!!!
· anonymous_enable=no --关闭匿名登陆
· local_root=/var/ftp --本地用户的根目录,可以通过设置chroot_local_user=yes来限制本地用户只能在其home下
· local_enable=yes --允许本地用户登陆vsftp服务器
· write_enable=yes --允许本地用户的写权限
· chroot_local_user=yes -- 如果没有这个设置,登陆用户可以访问任何具有Linux权限的os系统目录本地用户只能处于自家home下,
· chroot_list_enable=yes -- 只允许列表中的用户更改根目录,必须同时设置了chroot_local_user=yes、chroot_list_file=/var/vsftpd/chroot_list;否则该设置不起作用
· chroot_list_file=/var/vsftpd/chroot_list -- 允许用户列表,如果chroot_list_enable=yes,必须设置该参数
· userlist_enable=yes --禁止userlist_file文件中列出的本地用户登陆vsftp服务器,配合userlist_deny策略设置
· userlist_deny=yes -- 限制策略:限制userlist_file文件中列出的本地用户登陆vsftp服务器——默认设置;否则只允许userlist_file文件中的用户访问
· userlist_file=/etc/vsftpd/userlist --用户列表
修改Linux系统SSH的端口号
操作系统linux和Unix都适用:
修改配置文件 /etc/ssh/sshd_config,将里面的Port改为新端口(此端口必须是没有程序用到),比如10022,
然后 kill -HUP `cat /var/run/sshd.pid` 就行了。
注:现有连接自己不会断,因为kill -HUP `cat /var/run/sshd.pid` 只是HUP监听的那个,已经建立的连接(不同的 pid)不会断。
要想重新启用并用新端口登陆,此时可以在本登陆帐户下 用 exit 命令退出,在用新的端口登陆即可!