(一)搭建frp内网穿透
.frp的安装下载
去以下网址下载frp
百度云盘
https://pan.baidu.com/s/1PbKa8DkK5lq3bgEFTNLNog 密码:i8vm
github
mwget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
然后将其拖拽到我们的虚拟机当中,并且进行解压
然后为了方便,我们可以备份一下,并且修改一个更简便的名字
然后进入frp目录,去编辑我们的文件
上图,第一个【】是设备名称 server——addr 是要连接的服务器地址 port是端口号,token是密码
下面的【】里面是连接的名字,type是类型,ip指的是本机,然后端口号是22,连接端口是6094
然后启动服务:
然后在我们的页面就能看到我们连接的信息了
2.内网穿透案例
现有两台主机,我们用a,b表示
y主机 作为内网主机 它不可以被网路访问
x主机 作为外网主机 它可以被外网通过ip或者域名访问
现在呢,使用x代理y主机,通过访问x主机管理y主机
访问x主机的特点端口,管理y主机的22端口
(1)配置x主机
从y主机下载frp的软件包
然后进行解压
再进入配置文件进行编辑
然后打开端口
发现报错,是因为没有指定协议
加上/tcp协议,再试一次
就没有问题了,端口成功打开
然后启动服务器
再去浏览器进入我们的控制面板:输入:192.168.1.60:7500进入
发现此时并无连接
然后去y主机修改配置文件
然后启动:
来到我们的控制面板就可以发现有连接的了:
(二)ftp服务搭建
1.ftp服务器搭建
首先下载ftp服务
yum -y install vsftpd
下载完成之后开启ftp服务
systemctl start vsftpd
然后开启端口号21
firewall-cmd --zone=public --add-port=21/tcp --permanent
开启完成之后重启:
firewall-cmd --reload
编辑selinux文件,进行永久关闭
vim /etc/selinux/config
然后让其立即生效
setenforce 0
然后给ftp设置开机自启动
systemctl enable vsftpd
2.配置ftp服务文件
vim /etc/vsftpd/vsftpd.conf
打开服务,并且开启上述条例
然后创建用户kefu
useradd kefu
更改用户密码
echo kefu | passwd --stdin kefu
然后重启
systemctl restart vsftpd
然后去客户端安装ftp,lftp服务
yum -y install ftp lftp
此时使用ftp 192.168.1.10登录,输入我们的用户名和账户就可以登录了
3.做传输测试
在我们的服务器创建一个目录
mkdir -p /data/kefu/
然后去客户端的/tmp目录下创建一个文件
dd if=/dev/zero of=bf000 bs=300M count=1
然后使用ftp登录,测试传输
此时会发生错误,由于权限的问题:
4.解决办法
回到我们的服务器,添加这样一段
setfacl -R -m u:kefu:rwx /data/kefu
赋予我们客户kefu对于/data/kefu⽂件夹w写权限
再进入配置文件
vim /etc/vsftpd/vsftpd.conf
打开这两条
开启⽤户列表⽂件以及指定⽤户列表⽂件
最后输入:
echo kefu >> /etc/vsftpd/chroot_list
代表客服这个账号不会被禁锢在指定目录
然后重启服务:
systemctl restart vsftp
再回到客户端测试
发现可以正常传输了
再去服务器检查一下
发现也没有问题
这样我们的ftp文件传输就搭建完毕了