安装ftp
ftp服务器
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。 FTP是File Transfer Protocol(文件传输协议)。顾名思义,就是专门用来传输文件的协议。简单地说,支持FTP协议的服务器就是FTP服务器。
步骤一:配置ftp安装环境
检查ftp服务器的环境
服务器端:一台ftp服务器
客户端:一台win主机、一台linux主机
确保这三台主机互联互通
设置虚拟机网络可以参考我的这篇文章设置虚拟机ip地址
可以使用两种方式安装
步骤二:安装
可以使用网络下载或者本地镜像安装
方法一:网络下载
#直接输入下面这句话就好了,yum是下载方式 vsftpd是需要下载的依赖,也就是ftp服务器
# -y是确认下载,不加的话后面会给选择让你选择是否安装,输入加上*号就是下载有关的所有依赖
[root@localhost ~]# yum -y install vsftpd*
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: ftp.sjtu.edu.cn
* extras: mirrors.cn99.com
* updates: mirrors.cn99.com
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
Resolving Dependencies
--> Running transaction check
---> Package vsftpd.x86_64 0:3.0.2-29.el7_9 will be installed
---> Package vsftpd-sysvinit.x86_64 0:3.0.2-29.el7_9 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=======================================================================================
Package Arch Version Repository Size
=======================================================================================
Installing:
vsftpd x86_64 3.0.2-29.el7_9 updates 173 k
vsftpd-sysvinit x86_64 3.0.2-29.el7_9 updates 24 k
Transaction Summary
=======================================================================================
Install 2 Packages
Total download size: 197 k
Installed size: 356 k
Downloading packages:
(1/2): vsftpd-sysvinit-3.0.2-29.el7_9.x86_64.rpm | 24 kB 00:00:00
(2/2): vsftpd-3.0.2-29.el7_9.x86_64.rpm | 173 kB 00:00:01
---------------------------------------------------------------------------------------
Total 178 kB/s | 197 kB 00:01
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : vsftpd-3.0.2-29.el7_9.x86_64 1/2
Installing : vsftpd-sysvinit-3.0.2-29.el7_9.x86_64 2/2
Verifying : vsftpd-sysvinit-3.0.2-29.el7_9.x86_64 1/2
Verifying : vsftpd-3.0.2-29.el7_9.x86_64 2/2
Installed:
vsftpd.x86_64 0:3.0.2-29.el7_9 vsftpd-sysvinit.x86_64 0:3.0.2-29.el7_9
Complete!
方法一:本地镜像下载
打开虚拟机设置
挂载光盘
mount 光盘目录 这里是挂载目录
比如我的就是
mount /dev/cdrom /mnt/cdrom
[root@localhost ~]# cd /etc/yum.repos.d/ #配置yum源
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-Media.repo CentOS-x86_64-kernel.repo
CentOS-Debuginfo.repo CentOS-Sources.repo
[root@localhost yum.repos.d]# mkdir repobak #创建一个文件夹放配置文件,感觉这里可以不要,但是我是按照老师教法做的
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo repobak
CentOS-CR.repo CentOS-Media.repo CentOS-x86_64-kernel.repo
CentOS-Debuginfo.repo CentOS-Sources.repo
[root@localhost yum.repos.d]# vi cjy.repo #写一个配置文件,文件名无所谓,但是后缀必须是 repo
#这是里面的内容,写好后保存退出
#[cjy] #这里是文件名
#name=cjy' yum install file! #配置文件的介绍信息,可以忽略不写
#baseurl=file:///mnt/cdrom #注意,这里的目录需要是挂载的目录
#gpgcheck=0
#enabled=1
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo repobak
CentOS-CR.repo CentOS-Media.repo CentOS-x86_64-kernel.repo
CentOS-Debuginfo.repo CentOS-Sources.repo cjy.repo
[root@localhost yum.repos.d]# rm -f CentOS*
[root@localhost yum.repos.d]# ls
cjy.repo repobak
#上面的搞好就可以下载了
[root@localhost ~]# yum install vsftpd*
方式二下载完之后记得卸载光盘
umount /dev/cdrom
这里输入光盘目录或者挂载目录都可以
[root@localhost ~]# umount /mnt/cdrom
[root@localhost ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 482100 0 482100 0% /dev
tmpfs 497836 0 497836 0% /dev/shm
tmpfs 497836 8716 489120 2% /run
tmpfs 497836 0 497836 0% /sys/fs/cgroup
/dev/sda3 18555904 4513764 14042140 25% /
/dev/sda1 303780 155536 148244 52% /boot
tmpfs 99568 20 99548 1% /run/user/0
/dev/sr0 4600876 4600876 0 100% /run/media/root/CentOS 7 x86_64
步骤三:下载后的配置
#进入ftp的配置目录
[root@localhost ~]# cd /etc/vsftpd/
[root@localhost vsftpd]# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
#打开配置文件
[root@localhost vsftpd]# vi vsftpd.conf
在配置文件中找到
#anno_mkdir_write_enable=YES
#anno_upload_enble=YES
去掉#
#重启防火墙服务器
[root@localhost vsftpd]# systemctl stop firewalld.service
#查看防火墙服务器是否在运行
[root@localhost vsftpd]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Sun 2022-06-12 00:10:39 PDT; 5s ago
Docs: man:firewalld(1)
Process: 682 ExecStart=/usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS (code=exited, status=0/SUCCESS)
Main PID: 682 (code=exited, status=0/SUCCESS)
Jun 06 23:10:01 localhost.localdomain systemd[1]: Starting firewalld - dynamic fire....
Jun 06 23:10:05 localhost.localdomain systemd[1]: Started firewalld - dynamic firew....
Jun 06 23:10:06 localhost.localdomain firewalld[682]: WARNING: AllowZoneDrifting is....
Jun 12 00:10:37 localhost.localdomain systemd[1]: Stopping firewalld - dynamic fire....
Jun 12 00:10:39 localhost.localdomain systemd[1]: Stopped firewalld - dynamic firew....
Hint: Some lines were ellipsized, use -l to show in full.
#关闭安全上下文
[root@localhost vsftpd]# setenforce 0
#重启网卡
[root@localhost vsftpd]# service network restart
Restarting network (via systemctl): [ OK ]
#给ftp目录设置权限,为了后面上传下载文件
[root@localhost vsftpd]# chmod 777 /var/ftp/pub
步骤四:验证
从主机端验证
在文件管理器中输入
ftp://后面是虚拟机中的ip地址
我从桌面上复制一个文件上去,没有报错,成功~
从虚拟机端验证
#登录ftp服务器 后面的设置的ip地址
[root@localhost vsftpd]# ftp 192.168.44.11
ftp: connect: Connection refused
ftp> exit
#上面出了一个小问题,输入如下代码就好了,没有这个问题的就不需要输入了
[root@localhost vsftpd]# vsftpd /etc/vsftpd/vsftpd.conf &
[1] 6417
#再次登录,成功
[root@localhost vsftpd]# ftp 192.168.44.11
Connected to 192.168.44.11 (192.168.44.11).
220 (vsFTPd 3.0.2)
#这里要注意使用ftp为用户名登录,密码直接回车
Name (192.168.44.11:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (192,168,44,11,19,154).
150 Here comes the directory listing.
drwxrwxrwx 2 0 0 41 Jun 12 07:14 pub
226 Directory send OK.
ftp> cd pub
250 Directory successfully changed.
ftp> ls
227 Entering Passive Mode (192,168,44,11,122,229).
150 Here comes the directory listing.
-rw------- 1 14 50 5010 Jun 12 07:14 linux期末考试题库.txt
226 Directory send OK.
ftp> get linux期末考试题库.txt
local: linux期末考试题库.txt remote: linux期末考试题库.txt
227 Entering Passive Mode (192,168,44,11,201,116).
550 Failed to open file.
ftp>
可以看到,从win主机端上传的的文件可以在linux虚拟机端看到,并且下载,也可以从虚拟机上传,主机下载。
以上便是笔者对linux安装ftp服务器的一些浅显理解,仅供学习参考,欢迎大家交流学习。