centos7ftp配置
‘壹’ centos7 怎么设置ftp服务器的账户密码
修改FTP密码,连接上服务器后,在终端提示符下输入:passwd ftp(ftp为你要修改密码的帐号)
会提示输入新密码,并再次确认输入新密码。(如出现 “BAD PASSWORD: it is too simplistic/systematic”这样的提示,请不用紧张,这只是说明你的密码过于简单,但你的密码还是有修改成功的)
然后你就可以用新密码登录FTP了
修改FTP帐号,连接上服务器后,在终端提示符下输入:usermod -l mewftp ftp
newftp是新用户名,ftp是旧用户名。
‘贰’ centos7ftp目录浏览设置
1、卸载。
2、安装。
3、修改配置文件。
4、创建ftp用户。
5、为文件夹设置访问权限。
6、配置防火墙。
7、设置ftp开机启动。
8、启动查看ftp状态。
9、登录ftp。目录是汉语词语,意思是指书籍正文前所载的目次,是揭示和报道图书的工具。
‘叁’ centos7 ssh服务怎么使用ftp
方法/步骤1、运行yum install vsftpd命令
[root@localhost ~]# yum install vsftpd
2、完成ftp安装后,将 /etc/vsftpd/user_list文件和/etc/vsftpd/ftpusers文件中的root这一行注释掉
# root
3、执行以下命令
# setsebool -P ftpd_disable_trans=1
修改/etc/vsftpd/vsftpd.conf,在最后一行处添加local_root=/
4、重启ftp进程 #service vsftpd restart
注:每次修改过ftp相关的配置文件,都需要重启ftp进程来生效。
vsftpd.ftpusers:位于/etc目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。
vsftpd.user_list:位于/etc目录下。该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd .conf配置文件里启用userlist_enable=NO选项时才允许访问。
vsftpd.conf:位于/etc/vsftpd目录下。来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。
(1)用户登录控制
anonymous_enable=YES,允许匿名用户登录。
no_anon_password=YES,匿名用户登录时不需要输入密码。
local_enable=YES,允许本地用户登录。
deny_email_enable=YES,可以创建一个文件保存某些匿名电子邮件的黑名单,以防止这些人使用Dos攻击。
banned_email_file=/etc/vsftpd.banned_emails,当启用deny_email_enable功能时,所需的电子邮件黑名单保存路径(默认为/etc/vsftpd.banned_emails)。
‘肆’ 求高手,想在CentOS下面搭个FTP服务器
一:安装vsftpd
查看是否已经安装vsftpd
1.rpm -qa | grep vsftpd
2.#如果没有,就安装,并设置开机启动
3.yum -y install vsftpd
4.chkconfig vsftpd on
二:基于虚拟用户的配置
所谓虚拟用户就是没有使用真实的帐户,只是通过映射到真实帐户和设置权限的目的。虚拟用户不能登录CentOS系统。
修改配置文件
打开/etc/vsftpd/vsftpd.conf,做如下配置
1.anonymous_enable=NO #设定不允许匿名访问
2.local_enable=YES #设定本地用户可以访问。注:如使用虚拟宿主用户,在该项目设定为NO的情况下所有虚拟用户将无法访问
3.chroot_list_enable=YES #使用户不能离开主目录
4.ascii_upload_enable=YES
5.ascii_download_enable=YES #设定支持ASCII模式的上传和下载功能
6.pam_service_name=vsftpd #PAM认证文件名。PAM将根据/etc/pam.d/vsftpd进行认证
7.以下这些是关于vsftpd虚拟用户支持的重要配置项,默认vsftpd.conf中不包含这些设定项目,需要自己手动添加
8.guest_enable=YES #设定启用虚拟用户功能
9.guest_username=ftp #指定虚拟用户的宿主用户,CentOS中已经有内置的ftp用户了
10.user_config_dir=/etc/vsftpd/vuser_conf #设定虚拟用户个人vsftp的CentOS FTP服务文件存放路径。存放虚拟用户个性的11.CentOS FTP服务文件(配置文件名=虚拟用户名
进行认证
12.chroot_list_file=/etc/vsftpd/vuser_passwd.txt
首先,安装Berkeley DB工具,很多人找不到db_load的问题就是没有安装这个包。
1.yum install db4 db4-utils
然后,创建用户密码文本/etc/vsftpd/vuser_passwd.txt ,注意奇行是用户名,偶行是密码
1.test
2.123456
接着,生成虚拟用户认证的db文件
1.db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db
随后,编辑认证文件/etc/pam.d/vsftpd,全部注释掉原来语句,再增加以下两句:
1.auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd
2.account required pam_userdb.so db=/etc/vsftpd/vuser_passwd
最后,创建虚拟用户配置文件
1.mkdir /etc/vsftpd/vuser_conf/
2.vi /etc/vsftpd/vuser_conf/test #文件名等于vuser_passwd.txt里面的账户名,否则下面设置无效
3.内容如下
4.local_root=/ftp/www #虚拟用户根目录,根据实际情况修改
5.write_enable=YES
6.anon_umask=022 #掩码
7.anon_world_readable_only=NO
8.anon_upload_enable=YES
9.anon_mkdir_write_enable=YES
10.anon_other_write_enable=YES
设置Selinux(如果你的selinux是开启的话)
1.setsebool -P ftp_home_dir=1 #设置ftp可以使用home目录
2.sersebool -P allow_ftpd_full_access=1 #设置ftp用户可以有所有权限
设置FTP根目录权限
1.mkdir /ftp/www #创建目录
2.chmod R 755 /ftp
3.chmod R 777 /ftp/www
最新的vsftpd要求对主目录不能有写的权限所以ftp为755,主目录下面的子目录再设置777权限
设置防火墙
打开/etc/sysconfig/iptables
在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:
1.-A INPUT m state --state NEW m tcp p dport 21 j ACCEPT
然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:
1.service iptables restart
OK,运行“service vsftpd start”,你就可以访问你的FTP服务器了。
配置PASV模式
vsftpd默认没有开启PASV模式,现在FTP只能通过PORT模式连接,要开启PASV默认需要通过下面的配置
打开/etc/vsftpd/vsftpd.conf,在末尾添加
1.pasv_enable=YES #开启PASV模式
2.pasv_min_port=40000 #最小端口号
3.pasv_max_port=40080 #最大端口号
4.pasv_promiscuous=YES
在防火墙配置内开启40000到40080端口
1.-A INPUT m state --state NEW m tcp p dport 40000:40080 j ACCEPT
重启iptabls和vsftpd
1.service iptables restart
2.service vsftpd restart
现在可以使用PASV模式连接你的FTP服务器了~
常见错误:
问题一:
可我按照配置步骤走完一遍后发现每次都是
530 Login incorrect
找来找去才发现我把验证用的vsftpd.vu创建在了etc的根目录,而不是/etc/pam.d/vsftpd.vu
问题二:
修改了上面的问题,还是不能登录,提示我:
500 OOPS:bad bool value in config file for:anon_world_readable_only
google了一把发现有人说是配置文件的末尾不能有空格,打开自己的配置文件一看,不止anon_world_readable_only这一行末尾,整个文件的末尾都有几个空格。唉,复制粘贴网页上的配置要谨慎啊。
问题三:
500 OOPS: vsftpd: cannot locate user specified in 'guest_username':aaA
这个问题很奇葩,最后发现是最后大小写的问题,应该是‘aaa’
所以注意一下细节,安装上面的步骤来是很简单的
‘伍’ centos7ftp限制文件夹大小
1、先用dd命令建立一个100M大的文件,命名为vhost01.img:
dd if=/dev/zero ibs=2M count=50 of=/data/htdocs/vhost01.img
解释:
if=/dev/zero:表示输入文件为/dev/zero,一个虚拟的设备,顾名思义,里边的数据全是0
ibs=2M: 表示每次读取的块大小为2M
count=50:表示共读取50块
of=/data/htdocs/vhost01.img:输出文件
2、将此常规文件与loop设备进行关联
losetup /dev/loop0 /data/htdocs/vhost01.img
3、建立文件系统
mkfs.ext3 /dev/loop0
4、挂接文件设备
mount -t ext3 /dev/loop0 /data/htdocs/vhost01
‘陆’ CentOS7文件服务器的搭建
安装
yum -y install vsftpd
安装后修改配置
vi /etc/vsftpd/vsftpd.conf
不允许匿名操作
开启用户管理列表
在文件最后面新增allow_writeable_chroot=YES,允许已登录用户进行上传
编辑用户管理列表
vi /etc/vsftpd/chroot_list
添加ftpuser用户
mkdir -p /home/ftp
创建ftp的根路径
useradd -d /home/ftptest -s /sbin/nologin ftpuser
新增用户并配置为ftpuser用户的主文件夹
usermod -aG ftp ftpuser
将ftpuser用户放置在ftp用户组中
chown ftpuser /home/ftp
修改ftp文件的所属
passwd ftpuser
修改ftpuser用户密码
vi /etc/selinux/config
如图配置
firewall-cmd --permanent --zone=public --add-service=ftp
开启ftp服务
firewall-cmd --reload
重加载firewall
systemctl start vsftpd
重启
systemctl status vsftpd
查看firewall状态
输入ftpuser的账号密码
文件服务器ftp文件夹根目录
‘柒’ linux配置ftp服务器的过程
第一步:打开终端(快捷键是Ctrl+Alt+t),如果当前用户不是root用户,请输入命令“su”,然后输入root账户密码即可;
第二步:输入命令“apt-get update”,这一步是为了更新下载的数据源,如果不更新可能造成有几个后面的软件包无法下载;
第三步:输入命令“apt-get install vsftpd”完成安装vsftpd;
第四步:判断vsftp是否安装成功,输入命令“service vsftpd restart”重启vsftpd服务,如果他在运行状态说明安装成功;
第五步:新建“/home/uftp”目录作为用户主目录,输入命令“mkdir /home/uftp”回车 ,然后输入命令“ls /home”查看home目录下有uftp这个目录吗,如果有就是创建成功;
第六步:新建用户uftp并且设置密码,输入命令“useradd -d /home/uftp -s /bin/bash uftp”
回车,然后再输入命令“passwd uftp”回车,然后输入两次密码就设置ok了
第七步:使用vi修改配置文件/etc/vsftpd.conf,输入命令“vi /etc/vsftpd.conf”回车,
向文件中添加“userlist_deny=NO””userlist_enable=YES”?, “userlist_file=/etc/allowed_users”?,
“seccomp_sandbox=NO”,最后把文件中的“local_enable=YES”保存(如果提示无法保存,直接退出来,把读写和执行权限给这个文件,具体操作为:输入命令: “chmod 777 /etc/vsftpd.conf”回车就可以了);
第八步:新建文件/etc/allowed_users,输入命令“vi /etc/allowed_users”,打开后再这个文件内写入“uftp”保存即可;《Linux就该这么学》
第九步:查看/etc/ftpusers文件(不能访问ftp服务用户清单)的内容,输入命令“vi /etc/ftpusers”回车,如果里面有uftp,就把他删除;
第十步:安装winscp软件,进行远程登录访问;下载直接在网络下载就行
‘捌’ centos怎样设置ftp登录
ftp权限配置是比较繁琐的。
我之前只配置在ubuntu 14.04中配置过,没在centos 7中配置过,具体过程可以参考下:
一. 为了服务器的安全,只可以使用ftp登录,禁止使用telnet与ssh登录
1,修改/etc/pam.d/vsftpd的验证模块 # Standard behaviour for ftpd(8). auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
# Note: vsftpd handles anonymous logins on its own. Do not enable # pam_ftp.so.
# Standard blurb. @include common-account @include common-session
@include common-auth #auth required pam_shells.so 注销下auth required pam_sheels.so验证
2,修改/etc/vsftpd.conf文件,添加check_shell=NO至vsftpd文件。
3,修改/etc/passwd用户的shell为false或nologin,重启/etc/init.d/vsftpd即可. 当然,也可以修改/etc/passwd中wp26:x:1002:1002::/home/vhost/wp26:/bin/false的最后/bin/false为/usr/bin/passwd,让用户登录系统只能够修改密码。
二. 设置ftp相关目录