一、系统环境
1.vmware workstation pro安装Linux虚拟机
2.Linux:Linux Red Hat Enterprise Linux 7.0
二、配置本地yum源
1.连接
在wmware workstation pro上点击虚拟机-->设置-->CD/DVD-->使用ISO映像文件-->浏览,找到Linux Red Hat Enterprise Linux 7.0的ISO映像文件,然后确定。
2.配置yum本地源
(1)挂在光盘(ISO映像文件)
mkdir /media/cdrom
mount /dev/cdrom /media/cdrom
(2)设置开机自动挂载ISO映像文件
df -T #查看ISO文件类型
vi /etc/fstab
#添加一下内容实现开机自动挂载
/usr/local/src/rhel-server-7.0-x86_64-dvd.iso /media/cdrom iso9660 default,ro,loop 0 0
#ISO所在路径 挂在到此目录 文件类型
(3)在/etc/yum.repos.d/目录下创建一个新的xxx.repo文件,并修改这个文件。这里直接把/media/cdrom里面的media.repo拷贝到/etc/yum.repos.d/目录
cp /media/cdrom /etc/yum.repos.d/
#修改media.repo文件
vim /etc/yum.repos.d/media.repo
[InstallMedia]
name=Red Hat Enterprise Linux 7.2
baseurl=file:///media/cdrom
eabled=1
mediaid=1446216863.790260
metadata_expire=-1
gpgcheck=1(如果是1就不用设置gpgkey)
gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release cost=500
:wq #保存并退出
(4)使用yum命令自动安装vsftpd服务
yum clean all #清除yum缓存
yum makecache #缓存本地yum源中的软件包信息
yum install vsftpd #安装vsftpd
rpm -qa vsftpd #查询所有安装httpd的目录和文件
(5)服务的启动、停止、重启和开机自动启动,以vsftpd为例
systemctl start vsftpd.service #启动apache
systemctl stop vsftpd.service #停止apache
systemctl restart vsftpd.service #重启apache
systemctl enable vsftpd.service #设置开机启动
systemctl status httpd.service #查看vsftpd服务的运行状态
ps ef | grep vsftpd #查看是否有vsftpd进程
(6)配置vsftpd服务
创建FTP用户、制定FTP目录和限制只能FTP连接系统
mkdir /data
useradd ftpuser -d /data -s /sbin/nologin
设置ftpuser用户的密码
passwd ftpuser
(7)修改vsftpd的配置文件
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO #不允许匿名登陆
local_enable=YES #允许本地访问
其他按需求修改.保存配置后需要重启vsftpd服务
(8)配置防火墙允许访问本机21端口
firewall-cmd --permanent --add-port=21\tcp
firewall-cmd --reload #刷新防火墙列表
firewall-cmd --list-all #查看防火墙列表
systemctl start firwalld.service #启动防火墙
systemctl stop firwalld.service #停止防火墙
systemctl restart firwalld.service #重启防火墙
systemctl status firwalld.service #查看防火墙状态
systemctl enable firwalld.service #设置开机启动
(9)关闭SELinux
临时修改selinux状态
getenfoce #查看selinux状态
setenfoce 0 #告警状态
setenfoce 1 #开启状态
“永久”修改色linux状态
vim /etc/sysconfig/selinux
SELINUX=enfocing #开启selinux
SELINUX=permissive #告警状态
SELINUX=disabled #关闭selinux
重启后生效
三、在物理机测试
1.匿名登陆(在修改配置文件前)
运行cmd.exe
ftp ip地址
用户名是ftp,无密码;回车后可以登录
2.用户名登陆
ftp ip地址
输入用户名ftpuser和密码;回车后可以登录
3.使用filezilla.exe客户端测试
输入ip地址,用户,密码和端口
四、FTP操作命令
ascii |
进入ASCII方式,为传输文本文件用。 |
binary |
进入二进制方式,为传输二进制文件用。 |
cd 目录名称 |
改变远程计算机的工作目录。 |
close |
结束FTP与远程计算机的会话,并且返回FTP命令状态。运行close命令后,用户可以与一新的系统连结,或者从FTP中退出。 |
delete 文件名 |
删除远程系统中指定名的文件。 |
dir 目录或文件 |
在远程计算机上,列出全部目录或文件。 |
hash |
当每次用get或put命令传送一个数据块时,让FTP显示一个#。在用户不确信网络是否工作时有用。这给你一看得见的确定数据在传输的信号。当传输很大的文件时,如果FTP已显示这种信息,表示传输正在进行。hash命令是一个布尔变量式的命令,用hash命令打开显示#开关,再用hash命令关闭显示。 |
help 命令 |
显示出关于此命令的一段帮助文字。 |
lcd 目录 |
在本地计算机上将缺少目录改变为指定的目录。 |
ls |
在远程计算机上列出一短的目录,参数与dir的相同。 |
mget 文件列表 |
从远程计算机上获得多个文件。文件列表可以是一列用空格分开的文件名。或者经常带有表达任意文件的*和表达此位置上的任意东西的?的匹配类型结构。 |
mput 文件列表 |
将多个文件传送到远程计算机上。 |
open |
连接到指定的计算机上,如果你从某个系统传输完文件后,想连接到一新的系统上,这时是有用的。你必须首先关闭(close)原来的连接。 |
prompt |
使用mget或mput时,promput命令让FTP在传输每个文件前提示你确定一下。这样防止覆盖已有的文件。当发了promput命令时如果已经启动了提示,FTP将把提示关掉,此时再传输所有的文件时,没有任何提问。 |
pwd |
显示远程当前目录的名字。 |
lcd |
显示本地计算机当前目录。 |
quit |
关闭当前打开的所有连接,并退出FTP。 |
user |
将用户名发送到远程计算机来登录,当没有正确地输入用户名和口令时,可使用此命令。它可以不用关闭当前连接。 |
! |
在UNIX系统中,当运行FTP时,可不退出FTP,直接运行!后键入的UXIN命令。 |
CTRL+C |
中断FTP命令。 |