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服务器的一些浅显理解,仅供学习参考,欢迎大家交流学习。



