linux ftp 记录,linux FTP vsftpd
linuxFTP教程vsftpd
一、安装和启动
#查看是否已安装:rpm-q
vsftpd
vsftpd-3.0.2-11.el7_2.x86_64
vsftpd -v
vsftpd: version 3.0.2
安装 :yum -y install vsftpd
可以顺便把FTP客户端也装了:yum install ftp
检查:whereisvsftpd
vsftpd:/usr/sbin/vsftpd /etc/vsftpd
/usr/share/man/man8/vsftpd.8.gz
启动:systemctl start vsftpd
二、设置SELinux
linux系统会限制文件传输,或者访问等,使用ftp和samba都需要关闭该项
临时SELinux,重启电脑后失效
setenforce 0
#设置SELinux成为permissive模式
(关闭SELinux)
setenforce 1
#设置SELinux成为enforcing模式(开启SELinux)
永久SELinux,重启电脑后有效
vi /etc/selinux/config
SELINUX=disabled(如果有则修改,如果没有则添加)
其他方式
查询:getsebool -a | grepftp
设置:setsebool -Pftpd_full_access on
查询结果:加粗项根据需要打开
ftp_home_dir--> on
ftpd_anon_write--> on
ftpd_connect_all_unreserved -->
off
ftpd_connect_db --> off
ftpd_full_access--> on
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
sftpd_anon_write --> off
sftpd_enable_homedirs --> off
sftpd_full_access --> off
sftpd_write_ssh_home --> off
tftp_anon_write --> off
tftp_home_dir--> on
三、设置firewall
设置:firewall-cmd --permanent --zone=public
--add-service=ftp
重启:firewall-cmd
–reload
查看:firewall-cmd --zone=public --list-all
四、测试
启动服务 : systemctl start vsftpd
本地访问和登录: ftp localhost
输入Name:anonymous或者ftp(我测试时随便的都可以)
输入密码:留空就行
登录成功后表示安装成功,可以使用ls查看测试项
该目录位于/var/ftp文件下有“pub”和“test”2项内容。
五、配置
在上述安装和测试完成后可以根据需要配置不同帐号和访问权限:
本地用户:用户在FTP服务器拥有账号,且该账号为本地用户的账号,可以通过自己的账号和口令进行授权登录,登录目录为自己的home目录$HOME(指创建帐号时分配的目录)
虚拟用户:用户在FTP服务器上拥有账号,但该账号只能用于文件传输服务。登录目录为某一特定的目录,通常可以上传和下载
匿名用户:用户在FTP服务器上没有账号,登录目录为/var/ftp(或者指定的匿名目录(可自行修改))
经过测试发现本地用户和虚拟用户不能同时使用,除非把本地帐号加入到虚拟账号列表里??为啥呢?
配置文件目录:/etc/vsftpd/
账户设置调用:/etc/pam.d/vsftpd
5.1 本地用户使用模式:
1.添加配置:
vim /etc/vsftpd/vsftpd.conf
查看并核对以下内容:
local_umask=022#基本项
dirmessage_enable=YES#基本项
xferlog_enable=YES#基本项
connect_from_port_20=YES#基本项
xferlog_std_format=YES#基本项
listen=NO#基本项
YES也可以,独立启动
listen_ipv6=YES#基本项
pam_service_name=vsftpd#基本项
userlist_enable=YES#基本项
tcp_wrappers=YES#基本项
guest_enable=YES#没有则添加
guest_username=ftpuser#没有则添加,之后会添加这个帐号到linux系统中,并且对该帐号设置的目录将会作为其他用户登录的主目录
local_root=/var/ftp/$USER
#任选项,如果想要不同用户登录后进入到不同的目录下,可以添加这个,也可以使用固定的目录,比如/var/ftp/upload而不是
ftpuser的帐号目录。
注意:我使用这个的时候没有成功,它无法识别$USER这个参数,尝试各种方法都不行,但是也可以使用local_root=。。。来指定目录
chroot_local_user=YES
allow_writeable_chroot=YES#如果添加了local_root请添加这两项,否则会提示chroot失败
anonymous_enable=NO#基本项,是否允许匿名登录,默认是YES,测试时可以登录,自行定义。还有很多关于匿名用户的配置,以下添加了2个,
anon_root=/var/ftp#任选项,匿名用户登录后的目录
ftp_username=ftp#任选项,根据是否开启匿名选择,定义匿名用户的账户名称,默认值为ftp,也可以修改使用。no_anon_password=YES #任选项,匿名用户登录时是否询问口令。设置为YES,则不询问。默认NO
以下三项虽然是看着是设置匿名用户的,但是测试结果是,关闭匿名用户后也要开启这三项,根据需要设置后才能上传啥的。目前没有找到其他参数,
anon_upload_enable=YES#任选项,是否允许匿名用户上传文件。只有在write_enable设置为YES时,该配置项才有效。而且匿名用户对相应的目录必须有写权限。默认为NO
anon_mkdir_write_enable=YES#任选项,是否允许匿名用户创建目录。只有在write_enable设置为YES时有效。且匿名用户对上层目录有写入的权限。默认为NO
anon_other_write_enable=YES#任选项,若设置为YES,则匿名用户会被允许拥有多于上传和建立目录的权限,还会拥有删除和更名权限。默认值为NO。
download_enable=YES#任选项,设置下载权限,看情况啦,不需要用户下载可以不添加,需要的话请设置为YES
2.添加用户
添加宿主用户: ftpuser指定
`/var/ftp/`目录
useradd -g root -M -d /var/ftp-s /sbin/nologin
ftpuser
-g
root表示添加ftpuser到root用户组
-M不创建用户主目录
-d定义主目录地址
-s
/sbin/nologin设置用户不能使用shell登录,比如通过putty登录到系统,或者本地登录到系统
没有测试不添加到root组的情况
设置用户ftpuser的密码:passwd
ftpuser
下面这个操作我感觉没啥用
把
/var/ftp的所有权给ftpuser.root
chown -R ftpuser.root
/var/ftp
添加普通用户:useradd -s /sbin/nologin test1
useradd-s /sbin/nologin test2
………………………
然后依次passwd test1修改密码等等等
3.测试登录
重启服务:systemctl restart vsftpd
运行:ftp localhost
用户名:test1
密码:刚才设置的,然后。。。登录成功啦啦啦,如果不成功建议查看“设置SELinux”
然后也可以远程访问下啦啦啦;ftp://ip
好啦,大功告成啦啦啦啦啦
5.2 虚拟用户使用模式:
1.添加配置:加粗项
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
guest_username=ftpuser
user_config_dir=/etc/vsftpd/vuser_conf
#设置虚拟用户的配置文件,可设置权限,目录地址等
virtual_use_local_privs=YES
chroot_local_user=YES
allow_writeable_chroot=YES
anon_upload_enable=YES
#这四项可去掉,在用户配置中设置
anon_mkdir_write_enable=YES
anon_mkdir_write_enable=YES
download_enable=YES
2.添加用户
编辑虚拟用户名单文件:touch
/etc/vsftpd/vuser_passwd
#第一行账号,第二行密码,注意:不能使用root做用户名,系统保留)
vi /etc/vsftpd/vuser_passwd
test2 #任意起名字
123456
ftpuser
#虽然添加了宿主用户,如果使用虚拟模式,不添加到此处依然无法登录,当然也可以使用很多其他用户)
123456
#保存退出
生成虚拟用户数据文件
db_load -T -t hash -f/etc/vsftpd/vuser_passwd
/etc/vsftpd/vuser_passwd.db
chmod 600 /etc/vsftpd/vuser_passwd.db
3.创建用户配置
mkdir /etc/vsftpd/vuser_conf
#建立虚拟用户个人vsftp的配置文件,
cd/etc/vsftpd/vuser_conf
#进入目录
touch test2 ftpuser
#这里创建两个虚拟用户配置文件,如果不创建,用户登录则会使用全局配置,直接进入到宿主用户的根目录。并且使用配置1中的配置权限。
每一个文件配置文件都差不多,请根据用户的具体权限设置。
local_root=/var/ftp/test2#任选项 用户配置目录,这个地方不一样
切记:要对这个文件夹地址配置可以访问的权限才可以登录成功
write_enable=YES#任选项
允许本地用户对FTP服务器文件具有写权限,可以设置本地用户的上传权限,默认是有的
anon_upload_enable=YES#任选项,是否允许匿名用户上传文件。只有在write_enable设置为YES时,该配置项才有效。而且匿名用户对相应的目录必须有写权限。默认为NO
anon_mkdir_write_enable=YES#任选项,是否允许匿名用户创建目录。只有在write_enable设置为YES时有效。且匿名用户对上层目录有写入的权限。默认为NO
anon_other_write_enable=YES#任选项,若设置为YES,则匿名用户会被允许拥有多于上传和建立目录的权限,还会拥有删除和更名权限。默认值为NO。
download_enable=YES#任选项,设置下载权限,看情况啦,不需要用户下载可以不添加,需要的话请设置为YES
4.修改文件夹权限,因为现在是root创建的
chmod -R 777
/var/ftp/test2
5.修改服务使用的用户文件
vim/etc/pam.d/vsftpd
选择使用刚才生成的db文件
#%PAM-1.0
session
optional
pam_keyinit.so
force revoke
#auth
required
pam_listfile.so item=user sense=denyfile=/etc/vsftpd/ftpusers
onerr=succeed
#auth
required
pam_shells.so
#auth
include
password-auth
#account
include
password-auth
auth required pam_userdb.so
db=/etc/vsftpd/vuser_passwd
account required pam_userdb.so
db=/etc/vsftpd/vuser_passwd
session
required
pam_loginuid.so
session
include password-auth
6.测试啦啦啦
同上
安装遇到的问题:
1.配置虚拟用户时各种不能登录到我设置的目录下,登录提示chroot失败,我发现配置也是对的,为啥呢
各种实验之后:发现我拷贝的别人的参数过去,不知道有啥编码问题等等等,最后手动打上去就好了,唉
2.不能上传下载:一定要对设置的local_root改变文件夹权限,因为当前使用root创建的
以下是安装过程时的参考文档,小白一枚
http://www.jb51.net/article/103904.htm
http://blog.csdn.net/lhq9220/article/details/6544755
http://www.cnblogs.com/jefflee168/p/6575014.html
linux ftp 记录,linux FTP vsftpd相关推荐
- linux 键盘记录,Linux键盘记录sh2log keylogger notes
make linux make freebsd make openbsd make cygwin make sunos make irix make hpux make aix make osf 如下 ...
- uptime linux,Uptimed: 记录 Linux 系统的 uptime
Uptimed 堪称 uptime 命令的守护程序版本,利用它你可以将 Linux 系统每次的 uptime 记录起来,并根据时间长短进行排名. 以下为在我的 Funtoo 上安装 Uptimed 后 ...
- linux性能记录,Linux性能记录
说到一台Linux服务器的性能,大部分人关注的指标如下:CPU利用率,CPU LOAD,内存利用率,磁盘I/O等待率,网络带宽使用率.Jmeter作为性能测试的强大工具,在其插件JMeterPlugi ...
- dev sda2 linux lvm,记录linux LVM 扩容硬盘空间的记录
你看到的这个文章来自于http://www.cnblogs.com/ayanmw 从2008年学linux的时候就知道有LVM这个东西,那个时候还是ext3文件系统,LVM逻辑卷管理,可以动态管理磁盘 ...
- 安装ftp连接linux服务器配置,Linux下FTP安装及配置(VSFTPD服务器安装配置、FTP客户端安装配置)...
安装说明 安装环境:CentOS-6.3 安装方式:yum安装.rpm源码安装 软件:ftp-0.17-51.1.el6.x86_64.rpm 下载地址:http://pan.baidu.com/s/ ...
- linux有哪些好用的ftp服务器?(vsftpd、ProFTPd、Pure-FTPd、FileZilla Server、CrushFTP)(WebDAV)
文章目录 linux下常见ftp服务器 vsftpd (Very Secure FTP Daemon) ProFTPd Pure-FTPd FileZilla Server CrushFTP 对上述一 ...
- linux 设置ftp自启,CentOS vsftpd设置安装自启动配置
CentOS vsftpd是常用系统,于是我学习研究了CentOS vsftpd,在这里对大家详细介绍下CentOS vsftpd系统应用,希望对大家有用.本地用户经过设置后可以进行ftp访问. 而匿 ...
- linux 环境下配置ftp服务器
之前写了 linux 环境下安装和配置mysql数据库以及远程登录,以及linux 环境下配置python虚拟环境,这一篇记录一下 linux系统中如何安装配置 ftp . 安装ftp // ...
- linux系统如何启用ftp服务
在linux操作系统中,ftp功能是最常用的服务之一,平常写代码都是在windows下完成再通过ftp传到linux下.由此ftp服务必不可少. 但在刚安装的linux操作系统中,ftp服务一般是不启 ...
最新文章
- Python入门100题 | 第039题
- 【天池赛事】零基础入门语义分割-地表建筑物识别
- 使用内部(com.android.internal)和隐藏(@hide)API[第4部分,定制ADT]
- python123第三周测验答案_python123 测验3: 基本数据类型 (第3周)
- 目前微型计算机中常用的鼠标器有什么两类,2009年计算机一级考试真题及答案...
- 2020年10月Oracle安全补丁:四个远程无凭证漏洞 两个内核级别漏洞需关注
- 华为P50系列再曝“坏消息”:疑似再度延期至7月份
- TF ckpt转pb脚本
- 虚化照片怎么弄?这几种方法很简单
- 蓝色理想的flex教材不能在flex Development做不能使用,我整理一下供初学者参考
- SQL优化:使用distribute by 防止数据倾斜
- 关于canvas的学习心得(三)(计算错误)
- 统计英文中单词的个数
- 正则表达式验证生日手机号信息
- [渝粤教育] 西南科技大学 律师实务 在线考试复习资料2021版(1)
- 比JMeter还轻量的压力测试工具是谁?Siege
- 2021年2月22日 星期一 农历八九 晴
- 电子表格转web程序控件SpreadsheetWeb v6.0史上最大版本发布 | 附下载
- 使用nid工具修改db_name和DBID
- 读书笔记—《销售铁军》随记2
热门文章
- 22张深度学习精炼图笔记总结
- 调整Windows操作系统下时间同步的频率
- 一起学微软Power BI系列-使用技巧(3)Power BI安卓手机版安装与体验
- SFB 项目经验-09-用Lync 2013或Skype for Business 2015抢火车票
- 通过windows系统封杀IP与端口
- java.lang.RuntimeException: Expected one of local, maven-local, maven-central, scala-tools-releases,
- golang适合做什么_这年头中年女人适合做什么兼职
- bert pytorch源码_【PyTorch】梯度爆炸、loss在反向传播变为nan
- 建议收藏,清华高材生准备的90条Python程序建议
- 继python(银行转账)简单Model修改版(二)