FTP在CentOS上安装与使用
安装:
yum install -y vsftpd
相关配置文件:
/etc/vsftpd/vsftpd.conf //主配置文件,核心配置文件 /etc/vsftpd/ftpusers //黑名单,这个里面的用户不允许访问FTP服务器 /etc/vsftpd/user_list //白名单,允许访问FTP服务器的用户列表
启动服务
systemctl enable vsftpd.service //设置开机自启动 systemctl start vsftpd.service //启动ftp服务 netstat -antup | grep ftp //查看ftp服务端口
匿名ftp的基本配置
使用匿名FTP,用户无需输入用户名密码即可登录FTP服务器,vsftpd安装后默认开启了匿名ftp的功能,用户无需额外配置即可使用匿名登录ftp服务器。
匿名ftp的配置在/etc/vsftpd/vsftpd.conf中设置。
anonymous_enable=YES //默认即为YES
这个时候任何用户都可以通过匿名方式登录ftp服务器,查看并下载匿名账户主目录下的各级目录和文件,但是不能上传文件或者创建目录。
匿名ftp的其他设置
出于安全方面的考虑,vsftpd在默认情况下不允许用户通过匿名FTP上传文件,创建目录等更改操作,但是可以修改vsftpd.conf配置文件的选项,可以赋予匿名ftp更多的权限。
允许匿名ftp上传文件。
修改/etc/vsftpd/vsftpd.conf
write_enable=YES
anon_upload_enable=YES
2、更改/var/ftp/pub目录的权限,为ftp用户添加写权限,并重新加载配置文件
chmod o+w /var/ftp/pub/ #更改/var/ftp/pub目录的权限
systemctl restart vsftpd.service #重启ftp服务
配置本地用户登录
本地用户登录就是指使用Linux操作系统中的用户账号和密码登录ftp服务器,vsftp安装后默只支持匿名ftp登录,用户如果试图使用Linux操作系统中的账号登录服务器,将会被vsftpd拒绝
1.创建ftptest用
useradd ftptest #创建ftptest用户
passwd ftptest #修改ftptest用户密码
2.修改/etc/vsftpd/vsftpd.conf
anonymous enable=NO
local_enable=YES
另外简单介绍下vsftpd.conf的配置文件参数说明。
用户登陆控制
| 参数 | 说明 |
|---|---|
| anonymous_enable=YES | 接受匿名用户 |
| no_anon_password=YES | 匿名用户login时不询问口令 |
| anon_root=(none) | 匿名用户主目录 |
| local_enable=YES | 接受本地用户 |
| local_root=(none) | 本地用户主目录 |
用户权限控制
| 参数 | 说明 |
|---|---|
| write_enable=YES | 可以上传(全局控制) |
| local_umask=022 | 本地用户上传文件的umask |
| file_open_mode=0666 | 上传文件的权限配合umask使用 |
| anon_upload_enable=NO | 匿名用户可以上传 |
| anon_mkdir_write_enable=NO | 匿名用户可以建目录 |
| anon_other_write_enable=NO | 匿名用户修改删除 |
| chown_username=lightwiter | 匿名上传文件所属用户名 |
配置vsftpd环境
执行下边的命令,一行一行来。
#sed -i "s/anonymous_enable=YES/anonymous_enable=NO/g" '/etc/vsftpd/vsftpd.conf' #sed -i "s/#anon_upload_enable=YES/anon_upload_enable=NO/g" '/etc/vsftpd/vsftpd.conf' #sed -i "s/#anon_mkdir_write_enable=YES/anon_mkdir_write_enable=YES/g" '/etc/vsftpd/vsftpd.conf' #sed -i "s/#chown_uploads=YES/chown_uploads=NO/g" '/etc/vsftpd/vsftpd.conf' #sed -i "s/#async_abor_enable=YES/async_abor_enable=YES/g" '/etc/vsftpd/vsftpd.conf' #sed -i "s/#ascii_upload_enable=YES/ascii_upload_enable=YES/g" '/etc/vsftpd/vsftpd.conf' #sed -i "s/#ascii_download_enable=YES/ascii_download_enable=YES/g" '/etc/vsftpd/vsftpd.conf' #sed -i "s/#ftpd_banner=Welcome to blah FTP service./ftpd_banner=Welcome to FTP service./g" '/etc/vsftpd/vsftpd.conf' #echo -e "use_localtime=YES\nlisten_port=21\nchroot_local_user=YES\nidle_session_timeout=300 #\ndata_connection_timeout=1\nguest_enable=YES\nguest_username=Fuser #\nuser_config_dir=/etc/vsftpd/vconf\nvirtual_use_local_privs=YES #\allow_writeable_chroot=YES #\npasv_min_port=40000\npasv_max_port=41000 #\naccept_timeout=5\nconnect_timeout=1" >> /etc/vsftpd/vsftpd.conf
创建ftp用户
创建用户Fuser,一些写教程登录终端是/bin/false,我卡这半天,具体可以搜它和nologin的区别
#useradd Fuser -d /wwwroot -s /sbin/nologin
#chown Fuser.Fuser /wwwroot -R
#passwd Fuser
重启vsftp服务
systemctl restart vsftpd.service
注意,这里是centos的关于vsftp重启,以前的命令在这不管用!如果开了防火墙,记得把相应的端口添加进去,本场环境中涉及21,40000-41000
可能会用到的:
彻底删除用户:#userdel -rf Fuser //强制删除用户及相关目录文件
变更用户属性:#usermod -s /sbin/nologin Fuser
查看当前服务:#netstat -lntp
我的可运行配置(/etc/vsftpd/vsftpd.conf):
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022 #anon_upload_enable=YES
#anon_mkdir_write_enable=YES dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES #chown_uploads=YES
#chown_username=whoever
#xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES #idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES #ftpd_banner=Welcome to blah FTP service
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd/banned_emails
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list
#ls_recurse_enable=YES?listen=YES
#listen_ipv6=YES pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES local_root=/usr/share/nginx/html
chroot_local_user=YES
allow_writeable_chroot=YES
可能性二:
匿名用户的目录(/var/ftp/pub)没有写权限,需要将其设置为具有写权限。
首先转到/var/ftp
然后在终端中输入:chmod 777 pub。
FTP在CentOS上安装与使用的更多相关文章
- NoSql1 在Linux(CentOS)上安装memcached及使用
前言: 今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...
- 在CentOS上安装Java环境
如何使用yum方式在CentOS上安装Java环境,系统以CentOS6.4为例. 工具/原料 Java JDK yum库 CentOS6.4 方法/步骤 1 查看CentOS自带JDK是否已安装. ...
- 在 CentOS 上安装 vsftp 服务
在 CentOS 上安装 vsftp 服务 1.查看当前 CentOS 服务器是否已安装了 vsftpd 服务: rpm -q vsftpd 如果打印如下类似的信息则表明已安装 vsftpd 服务: ...
- 在Ubuntu|CentOS上安装Shutter截图工具及快捷键设置
简介 Shutter前身叫GScrot,它是一款相当棒的截图软件. 通过Shutter,你可以截取包括选定区域.全屏幕.窗口.窗口内的控件甚至网页的图像.通过内置的强大插件机制,你可以在截图后,对图像 ...
- 在CentOS上安装rabbitmq-server
***在 CentOS 6.4上安装python*** 注意啊,自己手动安装python2.7.5,不要动系统上面其他的版本 1,先安装GCC,用如下命令yum install gcc gcc-c++ ...
- CentOS上安装软件错误提示:configure: error: no acceptable C compiler found in $PATH
CentOS上安装软件错误提示:configure: error: no acceptable C compiler found in $PATH 因为是centos linux,默认可以采用yum方 ...
- 如何在centos上安装epel源
一.EPEL是什么? EPEL (Extra Packages for Enterprise Linux,企业版Linux的额外软件包) 是Fedora小组维护的一个软件仓库项目,为RHEL/Cent ...
- 在Centos上安装RabbitMQ流程(转)
在Centos上安装RabbitMQ流程------------------------ 1. 需求 由于项目中要用到消息队列,经过ActiveMQ与RabbitMQ的比较,最终选择了RabbbitM ...
- 在CentOS上安装ZooKeeper集群
一共准备3个CentOS虚拟机 172.16.9.194 172.16.9.195 172.16.9.196 上传zookeeper-3.3.6.tar.gz到服务器并解压,3台服务器的目录结构如下 ...
随机推荐
- JQuery攻略(二) Jquery手册
在上一篇 JQuery攻略(一) 基础知识——选择器 与 DOM 中,我写了js的使用,如何选择元素,和一些比较常用的函数及DOM操作. 在这篇中,我将建立多个列表,将更多的 自定义选择器,函数,DO ...
- SQLite中的事务操作
关于SQLite事务可以解决一些问题,比如你要插入两个数据,可以将两个数据作为同一个事务进行插入,这样如果第二个数据错误了,便自动执行回滚操作,第一个数据也不会插入成功,保证了数据的同步! 一.实际的 ...
- 机器学习的MLE和MAP:最大似然估计和最大后验估计
https://zhuanlan.zhihu.com/p/32480810 TLDR (or the take away) 频率学派 - Frequentist - Maximum Likelihoo ...
- 用make编译openCV报错:ts_gtest.cpp:(.text._ZN7testing8internal2RED2Ev+0xf): undefined reference to 'regfreeA'
解决方案: the cause is the google tests is looking for the generic regex.h but cmake used the regex.h fr ...
- Linux命令之du
Linux du命令用来查看文件或目录所占用磁盘空间的大小(Summarize disk usage of each FILE, recursively for directories.) 语法: d ...
- 里诺全系列注册机+暗桩patch
一直有坛友私信更新里诺,今天花了一天时间,将里诺全系列更新完毕,权当送给坛友们的新年礼物吧! 全系列开放至元旦假期结束,后面就随机开放了. <ignore_js_op> 使用说明: 1.选 ...
- Kafka学习入门
最近工作中用到了两个很给力的项目,一个是Kafka,一个是Strom.本着自我学习并方便他人的目的,我会将我觉得比较有用的英文文档翻译在此(保留系统专有名词不作翻译). 1kafka介绍 在流式计算中 ...
- 用于HTML5移动开发的10大移动APP开发框架【转】
今天给大家介绍10款有关HTML5移动开发APP开发框架,这几款框架都是比较优秀的移动 Web 开发框架,能够帮助开发者更加高效的开发移动Web应用.. 十款移动APP开发框架: 1.jquery m ...
- File targeting 'AMD64' is not compatible with the project's target platform 'x86' 解决方法
我在使用vs2010制作64位安装包时出现了以下问题: File targeting 'AMD64' is not compatible with the project's target plat ...
- 在XP系统中,如何让添加新管理员帐户和原来的管理员帐户同时存在
一.有新账户后administrator账户会自动隐藏的,如果你要用administrator账户登录的话,就机器启动到选账户那里用ctrl+alt+del软启动,然后就可以输入账户名administ ...