centos7运维管理笔记----安装ftp服务器

HorseShoe2016 HorseShoe2016     2022-07-30     636

关键词:

 

在CentOS 7下安装ftp服务器,可以使局域网内的主机拥有共享文件的一个站点。

在Linux系统下,vsftp是一款应用比较广泛的FTP软件,其特点是小巧轻快,安全易用。目前在开源操作系统中常用的FTP软件除了vsftp外,主要有proftpd、pureftpd和 wu-ftpd等。本篇随笔记录vsftp的安装与配置。

注意:本随笔所有操作均在VMware workstations虚拟机中安装的CentOS7 中进行,在进行操作前最好设置快照,这样某一步出错了还可以退回原来的状态:

1.安装vsftp:在root用户下,输入:

yum install -y vsftpd

查看安装情况:

 

2.匿名FTP配置:

允许匿名用户访问并上传文件,配置文件路径一般为 /etc/vsftpd.conf, 如果是使用rpm 包安装,配置文件位于 /etc/vsftpd/vsftpd.conf

(i) 安装vsftpd后,该软件会自动在/var目录下生成/var/ftp/pub目录,此/var/ftp 目录即为匿名用户默认访问的目录。因为在虚拟机中拍摄了快照,所以可以通过转到安装vsfptd之前的快照的方式进行验证 /var/ftp目录为vsftpd软件生成的。在虚拟机中转到安装vsftpd软件之前的快照状态。输入 

ls /var/ftp

显示没有该目录。

然后再转到安装vsftpd后的快照,再次输入同样的命令,结果如下:

显示该目录下有pub文件夹,该文件夹当前为空; 这足以说明 /var/ftp/ 和 /var/ftp/pub文件夹为 vsftpd软件安装过程中自动生成的。

(ii)系统中当前会有 ftp用户组和ftp用户,博主已通过退回快照的方式验证,该用户和该用户组并非由vsftpd软件产生。所用命令为:

groups ftp

在两个快照状态下均显示出ftp用户属于ftp用户组。

将默认目录赋予用户ftp权限以便可以上传文件。

该命令的意思是将 ftp用户组中的所有用户设置为 /var/ftp/pub目录的拥有者,使用 -R 参数的意义是使用 recursive方式,即pub目录下的所有其他子目录也都属于ftp用户组中的所有用户。

 (iii)使用 

vim /etc/vsftpd/vsftpd.conf

命令,编辑 vsftpd的配置文件。

配置情况如下:

其中 

grep -v ^# filename

命令即是查看 filename 文件中去除'#'注释掉的内容后的有效内容。

关于红色方框内的 chroot_local_user等选项的详细解释,参见:http://blog.csdn.net/bluishglc/article/details/42398811

(3)启动FTP服务器

(i)在启动 vsftpd之前,查看端口状态:

netstat -nptl

可以看到目前只有ipv4的53,22,631号端口和ipv6的22号端口正在Listen。

输入

systemctl start vsftpd

启动 vsftpd 服务.

再次输入命令

netstat -ntpl 

可以看到21号端口已经启动,这正是ftp的命令端口。(ftp的数据端口为20)。

(ii)使用虚拟机中开启的另一台Ubuntu连接CentOS7上的ftp服务:

显示无法连接,这是因为没有在服务器的防火墙上开启21号端口的缘故。

于是在CentOS7服务器上编辑 iptables :

vim /etc/sysconfig/iptables

添加红色方框中的两行,开启20和21号端口。(21号端口为ftp命令端口,20号端口为ftp数据端口)

 之前安装iptables的时候,已经使用了如下的命令

systemctl disable firewalld  #禁止开机启动 firewalld
systemctl stop firewalld      #停止运行firewalld
systemctl enable iptables    #开机启动iptables
systemctl start iptables        #启动iptables

当前,firewalld没有启动,iptables正在运行,在修改了 /etc/sysconfig/iptables文件的情况下,应该重新启动iptables

systemctl restart iptables

这时候再输入

systemctl stop vsftpd
netstat -nptl

没有开启21号端口,那是因为已经关闭了vsftpd服务器:

 启动vsftpd服务器并查看端口:

systemctl start vsftpd
netstat -nptl

vsftpd服务重新开启了,且21号端口正在倾听。以上现象说明端口倾听与否只与服务运行与否有关,跟防火墙iptables中有没有开放端口无关。

(iii)用Ubuntu连接CentOS 7上的 ftp服务:

连接成功!

4.用ftp上传和下载文件

(i)在连接的ftp命令行里输入 ls 命令:

显示当前目录下有pub文件夹,说明当前匿名用户默认登陆的目录是CentOS7服务器上的/var/ftp目录

(ii)上传文件:

cd pub

命令进入pub文件夹

然后用

put filename.txt

命令上传本地的filename.txt文件

(注意:因为登陆ftp之前,Ubuntu所在目录为 /home/username ,则此时 filename.txt 默认为Ubuntu上的 /home/username/filename.txt,也可以用绝对路径指定文件。可以用 lcd pathname 命令改变客户端的当前目录)

结果:

显示“533 Could not create file.”

在CentOS7 上使用如下命令更改 /var/ftp/pub文件夹的权限:

chmod 766 /var/ftp/pub

重启vsftpd服务,在Ubuntu客户端上连接,然后上传文件,结果还是显示“533 Could not create file.”

网上搜索原因,按照这个网页的指示:http://www.111cn.net/sys/linux/45542.htm 在CentOS7服务器上做如下设置:

在CentOS7服务器上重启 vsftpd服务,然后在Ubuntu上重新登录服务器,这是还是默认登录进 /var/ftp目录,一定要用 cd pub 命令转换进pub目录,再试试上传文件:

成功!

(iii)下载文件:

在CentOS7服务器上用

vim /var/ftp/pub/welcom.txt

命令新建一个文件。

在Ubuntu上尝试下载:

成功!

centos7运维管理笔记----apache基于端口的虚拟主机配置

  如果一台服务器只有一个IP或需要通过不同的端口访问不同的虚拟主机,可以使用基于端口的虚拟主机配置。(1)在虚拟机的CentOS7服务器上配置eth0:4为192.168.1.214: (2)配置/etc/hosts文件以方便测试: 进行ping测试,看ip地... 查看详情

centos7运维管理笔记----apache基于ip的虚拟主机配置

...篇随笔记录自己基于IP的虚拟主机配置。  如果同一台服务器有多个IP,可以使用基于IP的虚拟主机配置,将不同的服务绑定在不同的IP上。(1)绑定IP:  在虚拟机中搭建的CentOS7服务器的IP被自己设置为了静态IP192.168.1.210,现... 查看详情

centos7.2纯净版安装不了宝塔

...、进入容器,安装宝塔面板。宝塔面板是一款简单好用的服务器运维面板,简单说来就是一个可视化的面板管理工具,支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能。 查看详情

centos7运维管理笔记----apache基于域名的虚拟主机配置

  使用基于域名的虚拟主机配置是比较流行的方式,可以在同一个IP上配置多个域名并且都通过80端口访问。(1)在网卡eth0的第五个接口上配置192.168.1.215这个地址:(2)配置/etc/hosts文件,192.168.1.215对应的域名如下:做ping测试,保... 查看详情

centos7运维管理笔记(11)----解决配置静态ip还是会出现动态ip地址的问题

  网上搜集CentOS7配置静态IP的方法,基本上都是说在/etc/sysconfig/network-scripts/ifcfg-eth0文件中做如下配置TYPE=EthernetHWADDR=00:xx:xx:xx:xx:xx#only:none,bootp,ordhcpBOOTPROTO=noneDEFROUTE=yesPEERDNS=yesPEERROUTES=yesIPV4_FAILU 查看详情

运维自动化之salt笔记

1:saltstack的基本介绍2:salt的安装1:服务端1:安装2:配置文件3:运行4:注意事项2:客户端1:安装2:配置文件3:运行4:注意事项 3:salt的使用:1:基础知识1:targeting2:nodegroup3:grains4:pillar2:状态管理1:state1:state语法2:state的逻辑关系2:highstate... 查看详情

运维监控前言

...下。  稍微理一下,后续应该会有以下内容:    服务器监控系统(附:流量汇聚、同比监控)、硬件监控系统、交换机监控、指标监控【升级】、进程监控、端口监控、DB(mysql/redis/riak)监控    脚本调度平台:批量... 查看详情

centos7系统管理和运维实战

centos7系统管理和运维实战 RHEL中包含了红帽自行开发的闭源软件,如红帽集群套件,这些软件并未开放源代码,因此也就未包含在centos发行版中centos发行版通常会修改RHEL中存在的bug,并提供了一个yum源以便用户可以随时更新... 查看详情

centos7ftp简易搭建(区分用户权限)

...rtvsftpd   5、通过浏览器或者资源管理器访问ftp服务器,并通过用户a、b分别访问,查看权限是否正常控制资源管理器访问(ftp://192.168.5.11/): 通过资源管理器访问ftp://192.168.5.11/后,点击右键,点击登录,输入用... 查看详情

centos7安装ftp服务(代码片段)

FTP(文件传输协议)是一种常用的文件传输协议,今天就来说一下Linux安装vsftpd服务首先先准备一个vsftpd软件包,yum进行安装(默认系统盘里有)systemctlstartvsftpd启动服务vsftpd的配置文件位置/etc/vsftpd/vsftpd.conf此上为匿名用户的配... 查看详情

centos7.5运维之路初体验

CentOS7.5初体验首先下载CentOS7.5接下来开始安装CentOS7.5参考网上现有文章对基本操作系统进行安装点击>CentOS7.5安装文档接下来出现下图表示安装成功 查看详情

《centos7系统管理与运维实战》epub下载在线阅读,求百度网盘云资源

《CentOS7系统管理与运维实战》(王亚飞)电子书网盘下载免费在线阅读资源链接:链接:https://pan.baidu.com/s/1L0wHSWj0qWEVOyO_urCArQ 提取码:e0ly    书名:CentOS7系统管理与运维实战作者:王亚飞出版社:清华大学出... 查看详情

saltstack高效运维

...在远程执行系统中,salt用python通过函数调用完成任务。服务器环境准备服务器环境centos7(master)centos7(master)ip地址192.168.178.131192.168.178.132身份masterslave软件包salt-mastersalt-minion 查看详情

vsftpd配置ftp服务器(centos7.x安装)

安装配置1.安装vsftpd检查是否安装了vsftpd#rpm-qa|grepvsftpdvsftpd-2.2.2-24.el6.x86_64如果有展示则已经安装,不需要重新安装安装vsftpdyum-yinstallvsftpd//-y表示不用输入确定,直接一路安装 查看详情

自动化运维之cobbler安装多版本系统

...、引言与概述1、说明本文是紧接上一篇<自动化运维之CentOS7下PXE+Kickstart+DHCP+TFTP+HTTP无人值守安装系统>补充篇,或叫基于上篇相关技术之上构建的cobbler服务;因此省略了部分服务的安装配置;部署也是在之前的基础上进行的;2、c... 查看详情

centos7下安装ftp服务

1、安装vsftpyum-yinstallvsftpd2、修改配置文件vi/etc/vsftpd/vsftpd.conf  保证下面3项为YES  anonymous_enable=YES  anon_upload_enable=YES  anon_mkdir_write_enable=YES3、设置FTP开机启动ch 查看详情

centos7安装配置ftp服务器详解(代码片段)

CentOS7安装配置FTP服务器详解1、FTP简介ftp(FileTransferProtocol文件传输协议)是基于TCP/IP协议的应用层协议,用于文件的传输,包括ftp服务器(或服务端)和ftp客户端ftp客户端与服务器创建网络连接,请求... 查看详情

怎么安装部署osa运维管理平台linux运维服务器管理

1、首先你要确定windows服务器上安装了IIS2、把你的网站源代码放在D:\www\wwwroot下,当然目录你也可以自己定3、打开IIS,在网站上右击,选择【添加网站】4、在添加网站对话框中,输入网站名称,选择物理路径和端口,其他... 查看详情