知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

Linux下开启FTP(vsftpd)服务

发布时间:2015-09-13 22:06:02作者:知识屋

1. 查看是否安装 
# rpm -qa | grep vsftpd 
 
2. 全新安装 
# rpm -ivh vsftpd-2.0.1-5.i386.rpm 
 
3. 启动/停止/重启 
# service vsftpd start 
# service vsftpd stop 
# service vsftpd restart 
 
4. 主配置文件 
# vi /etc/vsftpd.conf 
 
# 匿名用户配置 
anonymous_enable=YES         # 是否允许匿名ftp,如否则选择NO 
anon_upload_enable=YES       # 匿名用户是否能上传 
anon_mkdir_write_enable=YES  # 匿名用户是否能创建目录 
anon_other_write_enable=YES  # 修改文件名和删除文件 
 
# 本地用户配置 
local_enable=YES # 是否允许本地用户登录 
local_umask=022  # umask 默认755 
write_enable=YES 
chroot_local_user=YES  # 本地用户禁锢在宿主目录中 
 
chroot_list_enable=YES # 是否将系统用户限止在自己的home目录下 
chroot_list_file=/etc/vsftpd.chroot_list # 列出的是不chroot的用户的列表 
 
chown_upload=YES  # 是否改变上传文件的属主 
chown_username=username # 如果是需要输入一个系统用户名 
 
userlist_enable=YES 
userlist_deny=NO 
 
deny_email_enable=YES # 是否允许禁止匿名用户使用某些邮件地址 
banned_email_file=/etc/vsftpd.banned_emails # 禁止邮件地址的文件路径 
 
ftpd_banner=Welcome to chenlf FTP service. # 定制欢迎信息 
dirmessage_enable=YES # 是否显示目录说明文件, 需要收工创建.message文件 
message_file= # 设置访问一个目录时获得的目录信息文件的文件名,默认是.message 
 
xferlog_enable=YES # 是否记录ftp传输过程 
xferlog_file=/var/log/vsftpd.log # ftp传输日志的路径和名字 
xferlog_std_format=YES # 是否使用标准的ftp xferlog模式 
 
ascii_upload_enable=YES   # 是否使用ascii码方式上传文件 
ascii_download_enable=YES # 是否使用ascii码方式下载文件 
 
connect_from_port_20=YES # 是否确信端口传输来自20(ftp-data) 
 
nopriv_user=ftpsecure # 运行vsftpd需要的非特权系统用户默认是nobody 
 
async_abor_enable=YES # 是否允许运行特殊的ftp命令async ABOR. 
 
# FTP服务器的资源限制 
 
idle_session_timeout=600 # 设置session超时时间 
data_connection_timeout=120 # 设置数据传输超时时间 
 
max_clients=50 # 用户最大连接数 默认是0不限止 
max_per_ip=5   # 每个IP地址最大连接数 
 
anon_max_rate=102400  # 匿名的下载速度 KB 
local_max_rate=102400 # 普通用户的下载速度 KB 
 
5. 其他配置文件 
/etc/xinetd.d/vsftpd 
 
service ftp 
socket_type = stream 
wait = no 
user = root 
server = /usr/local/sbin/vsftpd 
# server_args = 
# log_on_success += DURATION USERID 
# log_on_failure += USERID 
nice = 10 
disable = no 
 
/etc/pam.d/vsftpd 
PAM 认证 
 
/etc/vsftpd.chroot_list 
此文件包含对服务器上所有FTP内容有权限的用户名。对其他用户来说,他们在服务器上的主目录对他们显示为根目录。 
 
/etc/shells 
在允许本地用户登录之前,系统默认检查是否有有效的用户 shell。以防 PAM 认证不可用的情况。 
/etc/ftpusers 
此文件包含*禁止*FTP登录的用户名,通常有 "root", "uucp", "news" 之类,因为这些用户权限太高,登录 FTP 误操作危险性大。 
 
6. 防火墙设置 
 
如果是用默认的SuSEFirewall2,在 YaST-系统-/etc/sysconfig 编辑器,network-SuSEfirewall2 
 
把 ftp 添加到 FW_SERVICES_EXT_TCP,比如你还要打开 ssh 那么 
 
FW_SERVICES_EXT_TCP "ftp ssh" 
 
如果你需要被动模式 FTP 和 nat,在 YaST-系统-/etc/sysconfig 编辑器,network-SuSEfirewall2 
 
FW_LOAD_MODULES "ip_conntrack_ftp ip_nat_ftp" 
 
 
另一种方式直接修改防火墙配置文件: 
# cd /etc/sysconfig/ 
# vi SuSEfirewall2 
FW_SERVICES_EXT_TCP "ftp 21 telnet 23" 
# rcSuSEfirewall2 restart 
 
(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜