CentOS使用yum命令安装vsftp
- 格式:docx
- 大小:14.66 KB
- 文档页数:4
CentOS 5.5下FTP安装及配置一、FTP的安装1、检测是否安装了FTP :[root@localhost ~]# rpm -q vsftpd如果安装了会显示版本信息:[root@localhost ~]# vsftpd-2.0.5-16.el5_5.1否则显示:[root@localhost ~]# package vsftpd is not installed2、如果没安装FTP,运行yum install vsftpd命令具体的细节如下:(如果无法更新,你先配置能访问互联网,我有文档叫CentOS 在 VMware下,如何联网到Internet的解决办法可以解决无法上网的问题)[root@localhost ~]# yum install vsftpd[root@localhost ~]#3、完成ftp安装后,将 /etc/vsftpd/user_list文件和/etc/vsftpd/ftpusers 文件中的root这一行注释掉# root4、执行以下命令# setsebool -P ftpd_disable_trans=1修改/etc/vsftpd/vsftpd.conf,在最后一行处添加local_root=/5、重启ftp进程 #service vsftpd restart注:每次修改过ftp相关的配置文件,都需要重启ftp进程来生效。
ftp服务器就可以使用了。
********************************************************************* 二、vsftpd的配置文件说明:vsftpd.ftpusers:位于/etc目录下。
它指定了哪些用户账户不能访问FTP服务器,例如root等。
er_list:位于/etc目录下。
该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd .conf配置文件里启用userlist_enable=NO 选项时才允许访问。
CentOS搭建FTP⽂件服务的步骤基于 CentOS 搭建 FTP ⽂件服务,供⼤家参考,具体内容如下系统要求:CentOS 7.2 64 位操作系统⼀.安装VSFTPDyum install vsftpd -y 启动 VSFTPD(安装完成后,启动 FTP 服务)service vsftpd start 启动后,可以看到系统已经[监听了 21 端⼝]:FTP 协议默认使⽤ 21 端⼝作为服务端⼝netstat -nltp | grep 21此时,访问 ftp://<您的 CVM IP 地址> 可浏览机器上的 /var/ftp ⽬录了。
⼆.配置FTP 权限⽬前 FTP 服务登陆允许匿名登陆,也⽆法区分⽤户访问,我们需要配置 FTP 访问权限vsftpd 的配置⽬录为 /etc/vsftpd,包含下列的配置⽂件:vsftpd.conf 为主要配置⽂件ftpusers 配置禁⽌访问 FTP 服务器的⽤户列表user_list 配置⽤户访问控制阅读上述配置以了解更多信息。
如果您准备好了,点击下⼀步开始修改配置来设置权限。
阻⽌匿名访问和切换根⽬录(匿名访问和切换根⽬录都会给服务器带来[安全风险],我们把这两个功能关闭)编辑/etc/vsftpd/vsftpd.conf# 禁⽤匿名⽤户anonymous_enable=NO# 禁⽌切换根⽬录 匿名访问让所有⼈都可以上传⽂件到服务器上⽽⽆需鉴权,⽽允许切换根⽬录则可能产⽣越权访问问题。
chroot_local_user=YES重新启动 FTP 服务:service vsftpd restart三.创建 FTP ⽤户#创建⼀个⽤户 ftpuseruseradd ftpuser#为⽤户 ftpuser 设置密码echo "Password" | passwd ftpuser --stdin限制该⽤户仅能通过 FTP 访问:限制⽤户 ftpuser 只能通过 FTP 访问服务器,⽽不能直接登录服务器usermod -s /sbin/nologin ftpuser为⽤户分配主⽬录为⽤户 ftpuser 创建[主⽬录]并约定:/data/ftp 为主⽬录, 该⽬录不可上传⽂件/data/ftp/pub ⽂件只能上传到该⽬录下mkdir -p /data/ftp/pub创建登录欢迎⽂件:echo "Welcome to use FTP service." > /data/ftp/welcome.txt设置访问权限:chmod a-w /data/ftp && chmod 777 -R /data/ftp/pub设置为⽤户的主⽬录:usermod -d /data/ftp ftpuser四.准备域名和证书(云主机),将域名解析到实验云主机上,域名设置解析后需要过⼀段时间才会⽣效,通过 ping 命令检查域名是否⽣效:如果 ping 命令返回的信息中含有你设置的解析的 IP 地址,说明解析成功。
centos 安装配置vsftp虚拟用户访问绝对成功包括目录权限配置第一步:安装vsftp pam db41.#yum install vsftpd pam* db4* -y通过setup对系统服务及防火墙进行配置,然后reboot系统或者使用命令将vsftp配置为系统服务1.#chkconfig --level 35 vsftpd on第二步:配置vsftpd服务的宿主1.#useradd vsftpdadmin -s /sbin/nologin这个vsftpdadmin只是用来替换root的,并不需要登录第三步:建立ftp虚拟宿主帐户1.#useradd ftpuser -s /sbin/nologin这ftpuser只个虚拟帐户的宿主,本身是不用登录的第四步:配置vsftpd.conf更改配置前最好备份一下然后再改1、#cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak2、#vim /etc/vsftpd/vsftpd.conf主要修改下面部分anonymous_enable=YES --> anonymous_enable=NO //不允许匿名用户访问,默认是允许。
#chroot_list_enable=YES --> chroot_list_enable=YES //不允许FTP用户离开自己主目录,默认是被注释掉的。
#chroot_list_file=/etc/vsftpd/chroot_list --> chroot_list_file=/etc/vsftpd/chroot_list //如果开启了chroot_list_enable=YES,那么一定要开启这个,这条是锁定登录用户只能家目录的位置,如果不开启用户登录时就会报500 OOPS的错。
注意:/etc/vsftp/chroot_list本身是不存在的,这要建立vim /etc/vsftp/chroot_list,然后将帐户输入一行一个,保存就可以了无需修改local_enable=YES //允许本地用户访问,默认就是YES,不用改write_enable=YES //允许写入,默认是YES,不用改local_umask=022 //上传后文件的权限掩码,不用改dirmessage_enable=YES //开启目录标语,默认是YES,开不开无所谓,我是默认就行xferlog_enable=YES //开启日志,默认是YES,不用改connect_from_port_20=YES //设定连接端口20,不用改xferlog_std_format=YES //设定vsftpd的服务日志保存路径,不用改(这步后面要有几个操作才能运行,也就是touch这个文件(见第五步),因为它本身不存在,而且还要给文件写入的权限)#idle_session_timeout=600 --> idle_session_timeout=600 //会话超时,客户端连接到ftp但未操作,默认被注释掉,可根据个人情况修改#async_abor_enable=YES --> async_abor_enable=YES //支持异步传输功能,默认是注释掉的,去掉注释#ascii_upload_enable=YES --> ascii_upload_enable=YES //支持ASCII模式的下载功能,默认是注释掉的,去掉注释#ascii_download_enable=YES --> ascii_download_enable=YES //支持ASCII模式的上传功能,默认是注释掉的,去掉注释#ftpd_banner=Welcome to blah FTP service //FTP的登录欢迎语,本身是被注释掉的,去不去都行#chroot_local_user=YES --> chroot_local_user=YES //禁止本地用户登出自己的FTP 主目录,本身被注释掉,去掉注释pam_service_name=vsftpd //设定pam服务下vsftpdd的验证配置文件名,不用改userlist_enable=YES //拒绝登录用户名单,不用改TCP_wrappers=YES //限制主机对VSFTP服务器的访问,不用改(通过/etc/hosts.deny 和/etc/hosts.allow这两个文件来配置)如果没有则添加pam_service_name=vsftpduserlist_enable=YES #此处打开后,本地用户不能登录,只有虚拟用户可以登录userlist_deny=NOuserlist_file=/etc/vsftpd/er_listtcp_wrappers=YESchroot_local_user=NOguest_enable=YES //设定启用虚拟用户功能。
centos配置ftp服务器这篇⽂章是最近在centos上配置ftp服务器时,安装配置过程,做下记录,以防⽌⾃⼰忘记。
1、安装vsftpd命令:yum install -y vsftpd #使⽤yum安装vsftpdrpm –qa | grep vsftpd #查看服务是否安装2、vsftpd服务状态及服务设置命令:systemctl status vsftpd #服务状态查看命令systemctl start vsftpd.service #开启服务systemctl enable vsftpd.service #在开机时启⽤服务systemctl restart vsftpd.service #重启服务3、添加ftp账号和密码命令:useradd test #添加⽤户passwd test #给test⽤户添加密码,需要输⼊两次密码cat /etc/passwd #查看⽤户密码,/etc/passwd为系统⽤户⽂件4、创建访问⽬录命令:mkdir /var/www/html #创建ftp⽂件⽬录chmod o+w /var/www/html/ #修改ftp⽂件⽬录权限usermod -d /var/www/html/ test #将⽂件夹只给test⽤户ll /var/www/html/ #查看⽂件夹权限5、进⼊vsftp配置⽂件夹命令:gedit /etc/vsftpd/vsftpd.conf修改内容:chroot_local_user=YES #去掉chroot_local_user = yes前的注释,限制⽤户访问家⽬录之外的地⽅#去掉注释,添加xferlog_enable=YES,开启⽇志功能xferlog_file=/var/log/xferlogxferlog_enable=YESidle_session_timeout=600 #设置⽆任何操作的超时时间为五分钟# 修改ftp的根⽂件夹local_root=/var/www/htmlanon_root=/var/www/htmlallow_writeable_chroot=YESanonymous_enable=NO # NO 就是禁⽌匿名⽤户登录#添加anon_max_rate、local_max_rate限制传输的速度为1mb/s,这两个函数的⾃⾝单位是b/sanon_max_rate=10488333local_max_rate=104883336、关闭防⽕墙和selinux命令:systemctl stop fitewalld #关闭防⽕墙systemctl disable firewalld #防⽕墙默认不开启vi /etc/selinux/config #打开selinux配置⽂件,修改 SELINUX=disabled #关闭selinxsetenforce=0 #关闭SELINUX7、ok了浏览器访问:资源管理器也可访问:说明:1、默认ftp端⼝号为21,如需修改需要在vsftpd.conf配置⽂件中添加listen_port=2021 #(新端⼝号)pasv_enable=YESpasv_min_port=1050pasv_max_port=1060pasv_promiscuous=YES2、配置⽂件说明/etc/vsftpd/vsftpd.conf #主配置⽂件,核⼼配置⽂件/etc/vsftpd/ftpusers #⿊名单,这个⾥⾯的⽤户不允许访问FTP服务器/etc/vsftpd/user_list #⽩名单,允许访问FTP服务器的⽤户列表。
1.查看有没有安装vsftpd:rpm -qa | grep vsftpd2.yum安装vsftpd:yum install vsftpd3.rpm安装vsftpd:可以从下面两个地方获得最新的vsftpd的RPM包https:///或者/安装命令:rpm -Uvh vsftpd-1.1.3-8.i386.rpm4.设置每次开机时自动运行及手工启动它:chkconfig vsftpd onservice vsftpd startnetstat -tl 可以查看ftp端口是否在侦听了!5.为vsftpd添加ftp账号用useradd建立的用户,如果后面不加参数,建立的用户为普通用户,有系统登陆权限,所以要在useradd命令后面加上参数,为虚拟主机添加不可以登录系统的ftp专用账号,命令如下:# useradd –s /sbin/nologin –d /var/www -g ftp ftpadmin如果显示如下信息:Creating mailbox file: File existsuseradd: warning: the home directory already exists.Not copying any file from skel directory into it.表示用户家目录已经存在(/var/www),不可再新建此目录,并非添加用户失败,接下来给用户设置密码,否则此账号不能使用,命令如下:# passwd ftpadmin这样就为linux系统添加用户ftpadmin,用户目录指定为/var/www,属于ftp 用户组,且此用户不能登陆系统。
注:-s /sbin/nologin是让其不能登陆系统-d 是指定用户目录为/var/www-g ftp 把用户加入到ftp组中修改/var/www目录属性:$ chmod -R 777 /var/www递归地给此目录下所有文件和子目录的读、写、执行权限$ chgrp -R ftp /var/www 递归地把此目录及该目录下所有文件和子目录的组属性设置成ftp组6.配置etc/vsftpd/vsftpd.conf文件:nano -w /etc/vsftpd/vsftpd.conf注:用nano编辑配置文件要加参数“-w”,用于取消自动换行,否则有可能会出错。
CentOS中vsftp安装与配置详解⼀般我们在安装完系统后都会⾃动安装了vsftp服务了,但是有时候还是得需要⾃⼰动⼿的,⽐如这两天就在给我朋友配置了⼀下,顺⼿把过程记录下来,以便需要的时候查阅或者给需要的朋友提供⽅便:)1. 安装使⽤chkconfig --list来查看是否装有vsftpd服务;使⽤yum命令直接安装:yum -y install vsftpd然后为它创建⽇志⽂件:touch /var/log/vsftpd.log这样简单的两个命令就完成了vsftp的安装,但是如果你现在想这样ftp://your_ip来访问的话,那还不⾏,为什么??很简单,权限的问题!2. 启动与配置⾃启动使⽤chkconfig --list来查看vsftpd服务启动项情况;如果看到的是如下显⽰的结果:vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off服务全部都是off的,注意这⾥的off表⽰的是服务器启动的时候是否会⾃启动服务,我们使⽤如下命令来配置其⾃启动:chkconfig --level 2345 vsftpd on #2345对应的是上⾯对应的0-6项查看与管理ftp服务:启动ftp服务:service vsftpd start查看ftp服务状态:service vsftpd status重启ftp服务:service vsftpd restart关闭ftp服务:service vsftpd stop3. 配置vsftp服务编辑/etc/vsftpd/vsftpd.conf⽂件,配置vsftp服务#vi /etc/vsftpd/vsftpd.conf3.1 编辑修改如下项⽬:anonymous_enable=NO #设定不允许匿名访问local_enable=YES #设定本地⽤户可以访问。
注:如使⽤虚拟宿主⽤户,在该项⽬设定为NO的情况下所有虚拟⽤户将⽆法访问。
阿里云CentOS使用vsftpd搭建FTP服务器1.检查更新:#yumcheck-update2.安装更新:#yum update前两条可省略3.检查是否安装vsftpd:#rpm -q vsftpd或者rpm –qa | grep vsftpd4.安装vsftpd:#yum install vsftpd –y5.vsftpd.ftpusers:位于/etc目录下.它指定了哪些用户账户不能访问FTP服务器,例如root等.er_list:位于/etc目录下.该文件里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd .conf配置文件里启用userlist_enable=NO选项时才允许访问.vsftpd.conf:位于/etc/vsftpd目录下.来自定义用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP 服务器的配置.6.设置开机启动vsftpd ftp服务#chkconfig vsftpd on启动vsftpd服务#service vsftpd start管理vsftpd相关命令:停止vsftpd: #service vsftpd stop重启vsftpd: #service vsftpd restart7.开通telnet服务(这一步经过验证可以省略。
)#rpm -q xinetd#yum -y install xinetd#chkconfig xinetd on#service xinetd start这样就开通了telnet了。
8.建立用户组和用户和相应的文件夹并更改权限,达到题目要求# groupadd group1# useradd -ggroup1 user1# useradd -ggroup1 user2# useradd -ggroup1admin增加一个新用户到主要用户组,-g的意思是将user1的主要用户组设为group1# passwd user1# passwd user2# passwd admin# mkdir /home/zc# chown :group1 /home/zcchown将指定文件的拥有者改为指定的用户或组# chmod 770 /home/zc8.linux下如何查看所有的用户和组信息/etc/group 文件是用户组的配置文件。
centos6安装ftp+添加⽤户配置1.安装vsftp:yum -y install vsftp2.修改配置⽂件mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.confbak //备份vi /etc/vsftpd/vsftpd.conf //创建配置⽂件列出我的配置,根据环境修改做适当修改,注意每⾏后⾯不可有空格anonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022anon_upload_enable=NOanon_mkdir_write_enable=NOdirmessage_enable=YESxferlog_enable=YESconnect_from_port_20=YESchown_uploads=NOxferlog_file=/var/log/xferlogxferlog_std_format=YESnopriv_user=ftpdeasync_abor_enable=YESascii_upload_enable=YESascii_download_enable=YESftpd_banner=Welcome to blah FTP service.chroot_local_user=NOchroot_list_enable=YESchroot_list_file=/etc/vsftpd/vsftpd.chroot_listlisten=YESpam_service_name=vsftpduserlist_enable=YEStcp_wrappers=YES#You need to add contentbackground=YESguest_enable=YESguest_username=ftpdeuser_config_dir=/etc/vsftpd/user_configmax_clients=100max_per_ip=20pasv_enable=YESpasv_min_port=6000pasv_max_port=70003.创建本地⽤户ftpde 以及chroot虚拟⽤户映射⽂件useradd ftpde //创建ftpde⽤户,此⽤户为系统⽤户vi /etc/vsftpd/vsftpd.chroot_listftpde //该⽂件为⼿动建⽴,每⼀⾏代表⼀个欲将虚拟⽤户映射到本地账户的名称4.创建⽤户账户⽂件passwd.file该⽂件默认也不存在的,该⽂件⽤来存储⽤户账户以及明⽂密码,格式为每个账户两⾏,第⼀⾏是⽤户名,第⼆⾏是密码,以此类推!vi /etc/vsftpd/passwd.fileftpdemo1234565.⽣成虚拟⽤户认证的db⽂件db_load -T -t hash -f /etc/vsftpd/passwd.file /etc/vsftpd/ftpuser_passwd.db6.创建⽤户配置⽂件建⽴好账户后,需要为每个⽤户创建记录FTP⽬录位置、⽤户权限等信息的配置⽂件mkdir /etc/vsftpd/user_config配置⽂件以FTP⽤户名为⽂件名称,每个FTP⽤户⼀个⽂件,例如ftedemovi /etc/vsftpd/user_config/ftpdemo内容如下:local_root=/data/FTP/ftpuser //该路径对应的⽬录必须存在,下⼀步创建write_enable=YESanon_umask=022anon_world_readable_only=NOanon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YES7.创建ftp⽤户⽬录,并赋读/写权限mkdir -p /data/FTP/ftpdemoFTP ⽤户所映射到的系统帐户必须对FTP ⽤户主⽬录拥有相应的读/写权限。
CentOS7安装vsftpd服务器的具体操作步骤在CentOS7上安装ftp服务器⽤于保存服务端上传的图⽚。
1、CentOS卸载vsftpd的⽅法如果服务器上已经安装了vsftpd服务,配置出错需要卸载vsftpd服务。
1.1 查找vsftpd服务[root@localhost /]# rpm -aq vsftpd返回结果显⽰:vsftpd-3.0.2-21.el7.x86_64 #此处是查找vsftpd的返回结果表⽰此服务期之前已经安装过vsftpd服务。
1.2 删除查找到的vsftpd服务注:在卸载vsftpd之前,先停⽌vsftpd[root@localhost /]# /sbin/service vsftpd stop卸载vsftpd:[root@localhost /]# rpm -e vsftpd-3.0.2-21.el7.x86_64返回结果显⽰:warning: /etc/vsftpd/vsftpd.conf saved as /etc/vsftpd/vsftpd.conf.rpmsave #删除时将备份vsftp的⽤户列表⽂件1.3 输⼊验证命令,验证vsftpd服务是否已经删除[root@localhost /]# /sbin/service vsftpd stopRedirecting to /bin/systemctl stop vsftpd.serviceFailed to stop vsftpd.service: Unit vsftpd.service not loaded. #找不到vsftpd[root@localhost /]# /sbin/service vsftpd startRedirecting to /bin/systemctl start vsftpd.serviceFailed to start vsftpd.service: Unit not found. #找不到vsftpd如果输⼊以上两个命令都显⽰找不到vsftpd服务的话,那就证明已经卸载成功。
centos Vsftp 安装配置1.查看是否安装vsftprpm –qa|grep vsftpd如果出现vsftpd-2.0.5-16.el5_5.1 说明已经安装vsftp安装vsftpyum -y install vsftpd2.测试是否安装成功(ip 改成自己啊,不要用俺的此次登录为匿名登录user: anonymous 密码为空如果成功登录会有下面内容这说明vsftpd安装成功)[root@localhost ~]#service vsftpd start为vsftpd 启动vsftpd:[确定][root@localhost ~]#ftp 192.168.1.107Connected to192.168.1.107.220 (vsFTPd 2.0.5)530 Please loginwith USER and PASS.530 Please loginwith USER and PASS.KERBEROS_V4 rejectedas an authentication typeName(192.168.1.107:root): anonymous331 Please specifythe password.Password:230 Loginsuccessful.Remote system typeis UNIX.Using binary mode totransfer files.ftp> bye221 Goodbye.[root@localhost ~]#3.修改配置文件/etc/vsftpd/vsftpd.conf[root@localhost ~]#vi /etc/vsftpd/vsftpd.con取消下面内容前面的注释或添加anonymous_enable=YES/NO 是否允许匿名用户访问chroot_list_enable=YES限定用户不可以离开主目录chroot_list_file=/etc/vsftpd/chroot_listloca_enable=YES/NO 本地用户是否可以访问注:如果为NO 则所有虚拟用户都将不能访问原因:虚拟用户访问在主机上其实是以本地用户访问的pam_service_name=vsftpd pam认证文件名在/etc/pam.d/vsftpdguest_enable=YES 启用虚拟用户功能guest_username=ftp 指定虚拟用户的宿主用户–centos 里面已经有内置的ftp用户了(注:此用户在chroot_list_file=/etc/vsftpd/chroot_list文件里所指定的用户)user_config_dir=/etc/vsftpd/vuser_conf 设置虚拟用户个人vsftp的服务配置文件(此文件后面不能出现空格)4.查看是否安装db4 db4-utils[root@localhost ~]#rpm -qa|grep db4 运行后出现下面内容说明已经安装可以使用db_load 命令(主要是db4-utils)db4-devel-4.3.29-10.el5_5.2db4-4.3.29-10.el5_5.2db4-devel-4.3.29-10.el5_5.2db4-4.3.29-10.el5_5.2db4-tcl-4.3.29-10.el5_5.2db4-utils-4.3.29-10.el5_5.2[root@localhost ~]#如果没安装则要安装db4-utils4.1安装db4-utils[root@localhost ~]#yum -y install db4-utils5. 创建chroot_list_file=/etc/vsftpd/chroot_list文件[root@localhost ~]#vi /etc/vsftpd/chroot_list (编辑文件把/etc/vsftpd/vsftpd.conf 中guest_username的值写到文件中本例中为ftp)或者直接按下面进行操作[root@localhost ~]#touch /etc/vsftpd/chroot_list[root@localhost ~]# echoftp >> /etc/vsftpd/chroot_list (此处ftp 也要是/etc/vsftpd/vsftpd.conf中的guest_username的值)6.创建虚拟用户目录(密码文本)[root@localhost ~]#vi /etc/vsftpd/vftpuser.txtx (奇数行为用户名,偶数行为密码)本文中添加如下(用cat 命令查看)[root@localhost ~]#cat /etc/vsftpd/vftpuser.txtxaaaaaftp1zzzzz[root@localhost ~]#7.生成虚拟用户的db文件[root@localhost ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txtx /etc/vsftpd/vftpuser.db 8.生成虚拟用户的认证文件[root@localhostvsftpd]# vi /etc/pam.d/vsftpd#%PAM-1.0session optional pam_keyinit.so force revokeauth required pam_listfile.so item=user sense=denyfile=/etc/vsftpd/ftpusersonerr=succeedauth required pam_shells.soauth include system-authaccount include system-authsession include system-authsession required pam_loginuid.so注释掉/etc/pam.d/vsftpd中所有的内容反正已经不要本地用户的认证了特别注意以下区别32位系统增加以下两句:auth required pam_userdb.so db=/etc/vsftpd/vftpuseraccount required pam_userdb.so db=/etc/vsftpd/vftpuser64位系统增加以下两句:auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuseraccount required /lib64/security/pam_userdb.sodb=/etc/vsftpd/vftpuser注:db=/etc/vsftpd/vftpuser 中的vftpuser 是你生成的虚拟用户的db文件9.创建每个虚拟用户自己的配置文件,配置文件的路径是/etc/vsftpd/vsftpd.conf中的user_config_dir=/etc/vsftpd/vuser_conf路径在/etc/vsftpd/vuser_conf/下面创建以用户名为名称的文件(名称是/etc/vsftpd/vftpuser.txtx 下面的奇数行)[root@localhostvsftpd]# cat /etc/vsftpd/vftpuser.txtxzzaaaaaftp1zzzzz[root@localhostvsftpd]# mkdir vuser_conf[root@localhostvsftpd]# vi /etc/vsftpd/vuser_conf/zz内容如下local_root=/var/www(虚拟用户的根目录根据实际修改)write_enable=YES (可写)download_enable=YESanon_world_readable_only=NOanon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YESlocal_umask=02210.给文夹权限(否则不能上传权限可自定本人给的是777)[root@localhostvsftpd]# chmod 777 /var/www/11.重启vsftpd[root@localhostvsftpd]# service vsftpd restart到此安装配置完成如果出现连接被同位体重置或其它错误请查看SELinux的当前模12.登录测试[root@localhost vsftpd]# ftp192.168.1.107Connected to 192.168.1.107.220 (vsFTPd 2.0.5)530 Please login with USER and PASS.530 Please login with USER and PASS.KERBEROS_V4 rejected as anauthentication typeName (192.168.1.107:root): zz331 Please specify the password.Password:500 OOPS: cannot changedirectory:/var/wwwLogin failed.ftp>查看方法[root@localhost vsftpd]# getenforceEnforcing 如果出现(Enforcing )关闭方法:[root@localhost vsftpd]#setenforce 0 (0|1 开|关)再次测试登录成功[root@localhost vsftpd]# chmod 777/var/www/[root@localhost vsftpd]# ftp192.168.1.107Connected to 192.168.1.107.220 (vsFTPd 2.0.5)530 Please login with USER and PASS.530 Please login with USER and PASS.KERBEROS_V4 rejected as anauthentication typeName (192.168.1.107:root): zz331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp>查看系统是多少位的命令[root@bogon ~]# getconf LONG_BIT 64 (64|32)。
CentOS7下安装FTP服务1、安装vsftp1.1、安装vsftp,测试安装的vsftpd的版本是:vsftpd.x86_64 0:3.0.2-11.el7_2yum -y install vsftpd1.2、修改配置⽂件vi /etc/vsftpd/vsftpd.conf保证下⾯3项为YESanonymous_enable=YESanon_upload_enable=YESanon_mkdir_write_enable=YES1.3、设置vsftpd开机启动systemctl enable vsftpd.service1.4、启动并查看vsftpd服务状态,systemctl启动服务成功不会有任何提⽰,绿⾊的active表⽰服务正在运⾏systemctl start vsftpd.servicesystemctl status vsftpd.service2、本地验证ftp是否可以正常访问2.1、安装ftpyum -y install ftp2.2、使⽤anonymous登陆,⽆需密码ftp localhost220表⽰服务正常,可以登陆;230表⽰登陆成功。
2.3、查看FTP服务器⽂件夹信息3、外部证ftp是否可以正常访问3.1、关闭防⽕墙(也可以设置防⽕墙规则,得再百度了)systemctl stop firewalld.service 为防⽌机器重启后防⽕墙服务重新开启,可将防⽕墙服务永久关闭。
systemctl disable firewalld.service3.2、在window上输⼊ftp://IP地址,可看到ftp下的⽬录(pub为系统预设的)4、⽂件读写。
到上⾯为⽌,我们发现ftp⽬录下并不能读写⽂件,这是由⽂件夹权限和selinux引起的。
4.1、设置⽂件夹权限,将pub⽂件夹的权限设置为777chmod 777 -R /var/ftp/pub4.1、关闭selinux服务vi /etc/selinux/config将SELINUX=enforcing改为:SELINUX=disabled4.3、系统重启,让配置⽣效shutdown -r now4.4、上传⽂件⾄此,ftp完全安装完成,若需为FTP配置⽤户权限,可⾃⾏百度。
CentOS VSFTPD安装时RPM软件包安装的方法在向大家详细介绍CentOS VSFTPD安装之前,首先让大家了解下CentOS VSFTPD服务器,然后全面介绍CentOS VSFTPD安装,CentOS Linux和与之对应版本号的RHEL发行版具有软件包级别的二进制兼容性,即某个RPM软件包如果可以安装运行在RHEL产品中,就可以正常地安装运行在对应版本的CentOS Linux中。
希望对大家有用。
1.此次为了测试了解一下,CentOS VSFTPD,采用RPM包安装方式首先rpm -qa | grep CentOS VSFTPD查看有无安装,若没有,则要安装,我采用的是yumyum install vsftpd见下:[root@ftp sbin]# yum install vsftpd[root@ftp sbin]# service vsftpd statusvsftpd is stopped[root@ftp sbin]# service vsftpd startStarting vsftpd for vsftpd: [ OK ][root@ftp sbin]#2.设置每次开机时自动运行及手工启动它:chkconfig vsftpd onservice vsftpd startnetstat -tl 可以查看ftp端口是否在侦听了!相关配置文件:/etc/vsftpd/vsftpd.conf里面;3.CentOS VSFTPD至此已经可以FTP已经可以正常运行了,4.FTP配置参考以下设置:初级测试篇:(注:匿名用户使用ftp这个系统用户,无需密码)a.匿名服务器的连接(独立的服务器)在/etc/vsftp/vsftpd.conf配置文件中添加如下几项:Anonymous_enable=yes (允许匿名登陆)Dirmessage_enable=yes (切换目录时,显示目录下.message的内容)Local_umask=022 (FTP上本地的文件权限,默认是077)Connect_form_port_20=yes (启用FTP数据端口的数据连接)*Xferlog_enable=yes (激活上传和下载的日志)Xferlog_std_format=yes (使用标准的日志格式)Ftpd_banner=XXXXX (欢迎信息)Pam_service_name=vsftp (验证方式)*Listen=yes (独立的CentOS VSFTPD服务器)*功能:只能连接FTP服务器,不能上传和下载注:其中所有和日志欢迎信息相关连的都是可选项,打了星号的无论什么帐户都要添加,是属于FTP的基本选项b.开启匿名FTP服务器上传权限在配置文件中添加以下的信息即可:Anon_upload_enable=yes (开放上传权限)Anon_mkdir_write_enable=yes (可创建目录的同时可以在此目录中上传文件)Write_enable=yes (开放本地用户写的权限)Anon_other_write_enable=yes (匿名帐号可以有删除的权限)c.开启匿名服务器下载的权限在配置文件中添加如下信息即可:Anon_world_readable_only=no注:要注意文件夹的属性,匿名帐户是其它(other)用户要开启它的读写执行的权限(R)读-----下载(W)写----上传(X)执行----如果不开FTP的目录都进不去d.普通用户FTP服务器的连接(独立服务器)在配置文件中添加如下信息即可:Local_enble=yes (本地帐户能够登陆)Write_enable=no (本地帐户登陆后无权删除和修改文件)功能:可以用本地帐户登陆CentOS VSFTPD服务器,有下载上传的权限注:在禁止匿名登陆的信息后匿名服务器照样可以登陆但不可以上传下载e.用户登陆限制进其它的目录,只能进它的主目录设置所有的本地用户都执行chrootChroot_local_user=yes (本地所有帐户都只能在自家目录)设置指定用户执行chrootChroot_list_enable=yes (文件中的名单可以调用)Chroot_list_file=/任意指定的路径/vsftpd.chroot_list注意:vsftpd.chroot_list 是没有创建的需要自己添加,要想控制帐号就直接在文件中加帐号即可f.限制本地用户访问FTPUserlist_enable=yes (用userlistlai 来限制用户访问)Userlist_deny=no (名单中的人不允许访问)Userlist_file=/指定文件存放的路径/ (文件放置的路径)注:开启userlist_enable=yes匿名帐号不能登陆g.安全选项Idle_session_timeout=600(秒) (用户会话空闲后10分钟)Data_connection_timeout=120(秒)(将数据连接空闲2分钟断)Accept_timeout=60(秒)(将客户端空闲1分钟后断)Connect_timeout=60(秒)(中断1分钟后又重新连接)Local_max_rate=50000(bite)(本地用户传输率50K)Anon_max_rate=30000(bite)(匿名用户传输率30K)Pasv_min_port=50000 (将客户端的数据连接端口改在Pasv_max_port=60000 50000—60000之间)Max_clients=200 (FTP的最大连接数)Max_per_ip=4 (每IP的最大连接数)Listen_port=5555 (从5555端口进行数据连接)h.查看谁登陆了FTP,并杀死它的进程ps –xf |grep ftpkill 进程号5. 高阶部分测试篇:配置本地组访问的FTP首先创建用户组test和FTP的主目录groupadd testmkdir /tmp/test然后创建用户useradd -G test –d /tmp/test –M usr1注:G:用户所在的组d:表示创建用户的自己目录的位置给予指定M:不建立默认的自家目录,也就是说在/home下没有自己的目录useradd –G test –d /tmp/test –M usr2接着改变文件夹的属主和权限chown usr1.test /tmp/test ----这表示把/tmp/test的属主定为usr1chmod 750 /tmp/test ----7表示wrx 5表示rx 0表示什么权限都没有这个实验的目的就是usr1有上传、删除和下载的权限而usr2只有下载的权限没有上传和删除的权限当然啦大家别忘了我们的主配置文件CentOS VSFTPD.conf修改用户密码或添加用户密码以用户name为例,添加用户:useradd name,设置密码:passwd name,然后根据提示,输入两次密码即可。
Centos6.7搭建Vsftp实现虚拟用户登陆前言:1.需求用户可以访问FTP上传下载删除等权限,2.禁止用户访问除自己目录以外的所有目录———由此用到chroot_list限制虚拟用户一.安装:1.安装Vsftpd服务相关部件:[root@KcentOS5 ~]# yum -y install vsftpd*2.确认安装PAM服务相关部件:[root@KcentOS5 ~]# yum -y install pam*开发包,其实不装也没有关系,主要的目的是确认PAM。
3.安装DB4部件包:这里要特别安装一个db4的包,用来支持文件数据库。
[root@KcentOS5 ~]# yum -y install db4*4.准备环境,防火墙添加允许vi /etc/sysconfig/iptables #编辑防火墙配置文件,添加下面红色部分进入iptables,说明:21端口是ftp服务端口;6000到7000是Vsftpd被动模式需要的端口,可自定义一段大于1024的tcp端口-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT-A INPUT -m state --state NEW -m tcp -p tcp --dport 6000:7000 -j ACCEPT :wq! #保存退出5.关闭selinux或者不关闭selinux添加selinux允许(1)关闭selinx:vi /etc/selinux/config#SELINUX=enforcing #注释掉#SELINUXTYPE=targeted #注释掉SELINUX=disabled #增加:wq! #保存退出setenforce 0 #使配置立即生效(2)不关闭seliux添加允许:查询selinux使用命令开启所有跟FTP有关的:例如:setsebool -P ftp_home_dir 1 然后重启vsftpd。
Centos7搭建FTP服务详细过程一、安装VSFTP1.为了方便后续操作,现将用户切换到root用户 su -2.查看是否已经安装vsftpd方法一:[root@localhost ~]#rpm -q vsftpdvsftpd-3.0.2-22.el7.x86_64方法二:[root@localhost ~]# vsftpd -vyum安装vsftpd[root@localhost ~]# yum -y install vsftpd3.安装完成后,查看位置[root@localhost ~]# whereis vsftpdvsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz 4.直接启动VSFTP服务[root@localhost ~]# systemctl start vsftpd.service[root@localhost ~]#5.查看是否启动成功[root@localhost ~]# netstat -npal|grep vsftpdtcp6 0 0 :::21 :::* LISTEN 4432/vsftpd可以看到服务已经启动,端口为21,pid为4432关闭防火墙6.关闭SELinux限制,添加防火墙白名单①设置关闭SELinux对ftp的限制[root@localhost ~]# getsebool -a | grep ftpftp_home_dir --> onftpd_anon_write --> offftpd_connect_all_unreserved --> offftpd_connect_db --> offftpd_full_access --> onftpd_use_cifs --> offftpd_use_fusefs --> offftpd_use_nfs --> offftpd_use_passive_mode --> offhttpd_can_connect_ftp --> offhttpd_enable_ftp_server --> offsftpd_anon_write --> offsftpd_enable_homedirs --> offsftpd_full_access --> offsftpd_write_ssh_home --> offtftp_anon_write --> offtftp_home_dir --> off[root@localhost ~]# setsebool -P ftpd_full_access on②将ftp加入防火墙白名单firewall-cmd --permanent --zone=public --add-service=ftp firewall-cmd --reload查看防火墙状态:firewall-cmd --list-all二、配置修改1.修改配置文件[root@localhost ~]# cd /etc/vsftpd/[root@localhost vsftpd]# vim vsftpd.conf不允许匿名访问(不登录默认访问某目录/var/ftp)anonymous_enable=NO允许ascii文件上传和下载ascii_upload_enable=YESascii_download_enable=YES将用户限制在为其配置的主目录chroot_local_user=YESchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list三、匿名登录匿名登陆如果设置anonymous_enable=NO表示可以匿名登陆,保存后重新启动vsftp服务systemctl restart vsftpd.service),即可以匿名登陆ftp服务(ftp ipaddr),密码是空,对应目录是/var/ftp,如果你在配置里面配置了anonymous_enable=NO,匿名就无法登录。
CentOS使用yum命令安装vsftp
【来源:小鸟云计算】
Ps.小鸟云,国内专业的云计算服务商
1、安装vsftp
使用yum命令安装vsftp
[root@Cloud12347 ~]# yum install vsftpd -y
2、添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建帐户,该命令指定了/home/wwwroot为用户pwftp的根目录,您可以自己定义帐户名和目录:
[root@Cloud12347 ~]# useradd -d /home/wwwroot -s /sbin/nologinpwftp
修改该帐户密码: [root@Cloud12347 ~]# passwdpwftp
修改指定目录的权限: [root@Cloud12347 ~]# chown -R pwftp.pwftp /home/wwwroot
3、配置vsftp
编辑vsftp配置文件,命令如下:[root@Cloud12347 ~]# vi /etc/vsftpd/vsftpd.conf 将配置文件中”anonymous_enable=YES “改为“anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES
write_enable=YES
chroot_local_user=YES
保存修改,按ESC键,输入:wq
如果配置文件中没有"chroot_local_user=YES",输入以下命令并回车
[root@Cloud12347 home]# echo 'chroot_local_user=YES' >> /etc/vsftpd/vsftpd.conf
4、修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去
5、启动vsftp服务并测试登录.
使用命令启动vsftp服务:[root@Cloud12347 ~]# servicevsftpd start
然后用帐号pwftp测试下是否可以登陆ftp。
目录是/home/wwwroot。
二、Ubuntu/Debian安装vsftp软件
1、安装vsftp
使用apt-get命令安装vsftp
[root@Cloud12347 ~]# apt-get install vsftpd -y
2、添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建帐户,该命令指定了/home/wwwroot为用户pwftp的根目录,您可以自己定义帐户名和目录:
[root@Cloud12347 ~]# useradd -d /home/wwwroot -s /sbin/nologinpwftp
修改该帐户密码:
[root@Cloud12347 ~]# passwdpwftp
修改指定目录的权限
[root@Cloud12347 ~]# chown -R pwftp.pwftp /home/wwwroot
3、配置vsftp
编辑vsftp配置文件,命令如下:
[root@Cloud12347 ~]# vi /etc/vsftpd/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为“anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES write_enable=YES chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list
保存修改,按ESC键,输入:wq
如果配置文件中没有"chroot_local_user=YES",输入以下命令并回车
[root@Cloud12347 home]# echo 'chroot_local_user=YES' >> /etc/vsftpd/vsftpd.conf
编辑/etc/vsftpd.chroot_list文件,将ftp的帐户名添加进去,保存退出
4、修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去
5、启动vsftp服务并测试登录
使用命令启动vsftp服务:
[root@Cloud12347 ~]# servicevsftpd start
然后用帐号pwftp测试下是否可以登陆ftp。
目录是/home/wwwroot。