前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS 6.5 & CentOS 7 rpm安装ftp服务端与ftp客户端「建议收藏」

CentOS 6.5 & CentOS 7 rpm安装ftp服务端与ftp客户端「建议收藏」

作者头像
全栈程序员站长
发布2022-11-01 16:28:31
8.5K0
发布2022-11-01 16:28:31
举报
文章被收录于专栏:全栈程序员必看

一、rpm安装ftp服务端

1、查看是否安装vsftp

代码语言:javascript
复制
rpm -qa|grep vsftpd

如果出现vsftpd,说明已经安装 vsftp

2、下载vsftpd:

我这里下载的是vsftpd-2.2.2-24.el6.x86_64.rpm 下载地址:ftp服务端程序vsftpd-2.2.2-24.el6.x86_64.rpm 以及ftp客户端 ftp-0.17-54.el6.x86_64.rpm

3、安装vsftpd

代码语言:javascript
复制
rpm -ivh vsftpd-2.2.2-24.el6.x86_64.rpm

4、测试是否安装成功

代码语言:javascript
复制
service vsftpd start

为 vsftpd 启动 vsftp

5、配置vsftpd

代码语言:javascript
复制
whereis vsftpd
代码语言:javascript
复制
cd /etc/vsftpd/
代码语言:javascript
复制
cp vsftpd.conf vsftpd.conf_bak

效果如下图:

编辑vsftpd.conf文件:

代码语言:javascript
复制
vim vsftpd.conf

在文件末尾添加以下内容(我的配置,采用被动模式):

代码语言:javascript
复制
#启动被动式联机(passivemode), 必须设置为 YES!开启被动模式
pasv_enable=YES
#30000-30999(开放1000个端口用于被动模式调用)
pasv_min_port=30000
pasv_max_port=30999
#默认是 50,限制了同一IP地址客户端连接数。0表示不限制,如果配置具体数值,则数值不要小于2000。
max_per_ip=0
#默认是 100,限制了所有用户连接数。0表示不限制,如果配置具体数值,则数值不要小于2000。
max_clients=0
#解决ftp登陆慢问题
reverse_lookup_enable=NO
#FTP访问目录
local_root=/home/userftp/
#关闭匿名用户登录,为设置允许登录的用户提供前提。
anonymous_enable=NO
# 修改连接端口
listen_port=32121

6、vsftpd.conf文件的其它参数(可供参考):

代码语言:javascript
复制
核心设置
# 允许本地用户登录
local_enable=YES
# 本地用户的写权限
write_enable=YES
# 使用FTP的本地文件权限,默认为077
# 一般设置为022
local_umask=022
# 切换目录时
# 是否显示目录下.message的内容
dirmessage_enable=YES
dirlist_enable = NO
#验证方式
#pam_service_name=vsftpd
# 启用FTP数据端口的数据连接
connect_from_port_20=YES
# 以独立的FTP服务运行
listen=yes
# 修改连接端口
#listen_port=2121
匿名登录设置
# 允许匿名登录
anonymous_enable=NO
# 如果允许匿名登录
# 是否开启匿名上传权限
#anon_upload_enable=YES
# 如果允许匿名登录
# 是否允许匿名建立文件夹并在文件夹内上传文件
#anon_mkdir_write_enable=YES
# 如果允许匿名登录
# 匿名帐号可以有删除的权限
#anon_other_write_enable=yes
# 如果允许匿名登录
# 匿名的下载权限
# 匿名为Other,可设置目录/文件属性控制
#anon_world_readable_only=no
# 如果允许匿名登录
# 限制匿名用户传输速率,单位bite
#anon_max_rate=30000
用户限制设置
限制登录
# 用userlist来限制用户访问
#userlist_enable=yes
# 名单中的人不允许访问
#userlist_deny=no
# 限制名单文件放置的路径
#userlist_file=/etc/vsftpd/userlist_deny.chroot
限制目录
# 限制所有用户都在家目录
#chroot_local_user=yes
# 调用限制在家目录的用户名单
chroot_list_enable=YES
# 限制在家目录的用户名单所在路径
chroot_list_file=/etc/vsftpd/chroot_list
日志设置
# 日志文件路径设置
xferlog_file=/var/log/vsftpd.log
# 激活上传/下载的日志
xferlog_enable=YES
# 使用标准的日志格式
#xferlog_std_format=YES
安全设置
# 用户空闲超时,单位秒
#idle_session_timeout=600
# 数据连接空闲超时,单位秒
#data_connection_timeout=120
# 将客户端空闲1分钟后断开
#accept_timeout=60
# 中断1分钟后重新连接
#connect_timeout=60
# 本地用户传输速率,单位bite
#local_max_rate=50000
# FTP的最大连接数
#max_clients=200
# 每IP的最大连接数
#max_per_ip=5
被动模式设置
# 是否开户被动模式
pasv_enable=yes
# 被动模式最小端口
pasv_min_port=5000
# 被动模式最大端口
pasv_max_port=6000
其他设置
# 欢迎信息
ftpd_banner=Welcome to Ftp Server!

7、 添加ftp防火墙规则:

7.1、针对centos6.5

#防火墙放开32121端口(默认21,这里我指定了32121端口)

代码语言:javascript
复制
/sbin/iptables -I INPUT -p tcp --dport 32121 -j ACCEPT

#防火墙放开30000-30999端口

代码语言:javascript
复制
/sbin/iptables -I INPUT -p tcp --dport 30000-30999 -j ACCEPT

#将更改进行保存

代码语言:javascript
复制
/etc/rc.d/init.d/iptables save 

#重启防火墙以便改动生效,当然如果不觉得麻烦也可重启系统(命令:reboot)

代码语言:javascript
复制
/etc/init.d/iptables restart 

查看打开端口命令

代码语言:javascript
复制
/etc/init.d/iptables status
7.2、针对centos7

#防火墙放开32121端口

代码语言:javascript
复制
firewall-cmd --add-port=32121/tcp --permanent

#防火墙放开30000-30999端口

代码语言:javascript
复制
firewall-cmd --add-port=30000-30999/tcp --permanent

#将更改进行保存

代码语言:javascript
复制
firewall-cmd --reload

查看当前开放的端口:

代码语言:javascript
复制
firewall-cmd --zone=public --list-ports

8、 添加用户(注意,该处添加nologin类型用户ftpuser):

添加nologin类型用户

代码语言:javascript
复制
useradd -s /sbin/nologin -d /home/ftpuser ftpuser

ftpuser 设置ftpuser的密码

代码语言:javascript
复制
passwd ftpuser

注意后面要输两次ftpuser要设置的密码,前后一致

9、重新启动

对于centos6.5:

代码语言:javascript
复制
service vsftpd stop
代码语言:javascript
复制
service vsftpd start

对于centos7,还可以使用:

代码语言:javascript
复制
systemctl start vsftpd.service

查看是否启动:

代码语言:javascript
复制
systemctl status vsftpd.service

二、rpm安装ftp客户端

安装后即可使用ftp命令在本机进行测试

1、下载

我这里下载的是ftp-0.17-54.el6.x86_64.rpm这个版本 下载地址同上:ftp服务端程序vsftpd-2.2.2-24.el6.x86_64.rpm 以及ftp客户端 ftp-0.17-54.el6.x86_64.rpm

2、安装

代码语言:javascript
复制
rpm -Uvh ftp-0.17-54.el6.x86_64.rpm

3、使用ftp命令在本机进行测试

命令格式 : ftp 本机ip 端口

代码语言:javascript
复制
ftp 192.168.77.135

然后分三步操作:

  • 输入用户名
  • 输入密码
  • ls查看ftp目录

至此,ftp安装测试就完成了!

三、ftp常用命令

3.1 常用FTP命令

许多FTP命令与您在Linux shell提示符中键入的命令类似或相同。

以下是一些最常见的FTP命令

  • help或? – 列出所有可用的FTP命令。
  • cd – 更改远程计算机上的目录。
  • lcd – 更改本地计算机上的目录。
  • ls – 列出当前远程目录中的文件和目录的名称。
  • mkdir – 在当前远程目录中创建一个新目录。
  • pwd – 打印远程计算机上的当前工作目录。
  • delete – 删除当前远程目录中的文件。
  • rmdir – 删除当前远程目录中的目录。
  • get – 将一个文件从远程复制到本地计算机。
  • mget – 将多个文件从远程复制到本地计算机。
  • put – 将一个文件从本地复制到远程计算机。
  • mput – 将一个文件从本地复制到远程计算机。

3.2 使用FTP命令下载文件

登录后,您当前的工作目录是远程用户主目录。

使用该ftp命令下载文件时,文件将下载到您键入ftp命令的目录中。

如果要将文件下载到另一个本地目录,请使用该lcd命令切换到该目录。

假设我们要将文件下载到~/ftp_downloads目录:

代码语言:javascript
复制
lcd ~/ftp_downloads

要从远程服务器下载单个文件,请使用该get命令。例如,要下载名为的文件,请backup.zip使用以下命令:

代码语言:javascript
复制
get backup.zip

输出应该如下所示:

200 PORT command successful 150-Connecting to port 60609 150 6516.9 kbytes to download 226-File successfully transferred 226 2.356 seconds (measured here), 2.70 Mbytes per second 6673256 bytes received in 2.55 seconds (2.49 Mbytes/s) 要一次下载多个文件,请使用该mget命令。您可以提供单个文件名列表或使用通配符。

代码语言:javascript
复制
mget backup1.zip backup2.zip

下载多个文件时,系统将提示您确认每个文件。

代码语言:javascript
复制
mget backup1.zip? y

200 PORT command successful 150 Connecting to port 52231 226-File successfully transferred 226 0.000 seconds (measured here), 31.51 Kbytes per second 14 bytes received in 0.00058 seconds (23.6 kbytes/s)

代码语言:javascript
复制
mget backup2.zip? y

200 PORT command successful 150-Connecting to port 59179 150 7.2 kbytes to download 226-File successfully transferred 226 0.000 seconds (measured here), 16.68 Mbytes per second 7415 bytes received in 0.011 seconds (661 kbytes/s) 完成从远程FTP服务器下载文件后,bye或关闭连接quit。

代码语言:javascript
复制
quit

221-Goodbye. You uploaded 0 and downloaded 6544 kbytes. 221 Logout.

3.3使用FTP命令上传文件

要将文件从本地目录上载到远程FTP服务器,请使用以下put命令:

代码语言:javascript
复制
put image.jpg

输出应该如下所示:

200 PORT command successful 150 Connecting to port 34583 226-File successfully transferred 226 0.849 seconds (measured here), 111.48 Kbytes per second 96936 bytes sent in 0.421 seconds (225 kbytes/s) 如果要上载不在当前工作目录中的文件,请使用该文件的绝对路径。

要将多个文件从本地目录上载到远程FTP服务器,请使用以下mput命令:

代码语言:javascript
复制
mput image1.jpg image2.jpg
代码语言:javascript
复制
mput image1.jpg? y

200 PORT command successful 150 Connecting to port 41075 226-File successfully transferred 226 1.439 seconds (measured here), 102.89 Kbytes per second 151586 bytes sent in 1.07 seconds (138 kbytes/s)

代码语言:javascript
复制
mput image2.jpg? y

200 PORT command successful 150 Connecting to port 40759 226-File successfully transferred 226 1.727 seconds (measured here), 111.75 Kbytes per second 197565 bytes sent in 1.39 seconds (138 kbytes/s)

上传多个文件时,系统将提示您确认要上传的每个文件。 完成上传文件到远程FTP服务器后,用bye或关闭连接quit。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/179635.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月21日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、rpm安装ftp服务端
    • 1、查看是否安装vsftp
      • 2、下载vsftpd:
        • 3、安装vsftpd
          • 4、测试是否安装成功
            • 5、配置vsftpd
              • 6、vsftpd.conf文件的其它参数(可供参考):
                • 7、 添加ftp防火墙规则:
                  • 7.1、针对centos6.5
                  • 7.2、针对centos7
                • 8、 添加用户(注意,该处添加nologin类型用户ftpuser):
                  • 9、重新启动
                  • 二、rpm安装ftp客户端
                    • 1、下载
                      • 2、安装
                        • 3、使用ftp命令在本机进行测试
                        • 三、ftp常用命令
                          • 3.1 常用FTP命令
                            • 3.2 使用FTP命令下载文件
                              • 3.3使用FTP命令上传文件
                              相关产品与服务
                              云服务器
                              云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
                              领券
                              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档