frp反向代理的安装与配置、ftp服务的搭建及应用

07-21 1379阅读

1、frp简介

frp 是⼀个开源、简洁易⽤、⾼性能的内⽹穿透和反向代理软件,⽀持 tcp, udp, http, https等 协议。frp 项⽬官⽹是 https://github.com/fatedier/frp

2、frp⼯作原理

服务端运⾏,监听⼀个主端⼝,等待客户端的连接; 客户端连接到服务端的主端⼝,同时告诉服务端要监听的端⼝和转发类型; 服务端fork新的进程监听客户端指定的端⼝; 外⽹⽤户连接到客户端指定的端⼝,服务端通过和客户端的连接将数据转发到客户端; 客户端进程再将数据转发到本地服务,从⽽实现内⽹对外暴露服务的能⼒。

3、frp的安装与配置

[root@y ~]# wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz

[root@y ~]# tar -zxvf frp.tar.gz 

[root@y ~]# mv frp_0.33.0_linux_amd64/ /frp

[root@y ~]# ls /frp

frpc  frpc_full.ini  frpc.ini  frps  frps_full.ini  frps.ini  LICENSE  systemd 

[root@y ~]# vim /frp/frpc.ini                                    这里由于我没有云服务器所有连的别人的

[common]

server_addr = 123.249.27.70                        代理服务器IP

server_port = 7000

代理标识

token=knee@588588

[qwer]                        被代理的主机名称,不允许和其他重复

type = tcp                        代理服务类型

local_ip = 127.0.0.1

local_port = 22                本地被代理的端⼝

remote_port = 6022                选择代理后的端⼝

[root@y ~]#cd /frp

[root@y frp]# ./frpc -c frpc.ini                            启动frp服务浏览器访问123.249.27.70:6002

换成4.10的主机搭建一个云frp的服务器

[root@localhost ~]# tar -zxvf frp.tar.gz 

[root@localhost ~]# scp root@192.168.4.30:~/frp.tar.gz ~

[root@localhost ~]# mv frp_0.33.0_linux_amd64/ /fr

[root@localhost ~]# vim /frp/frps.ini

服务名称

[common]

服务端⼝

bind_port = 7000

控制台⾯板账号

dashboard_user=aaa    

控制台密码

dashboard_pwd=aaa

控制台端⼝

dashboard_port=7500

打开frp服务端⼝

[root@localhost ~]# firewall-cmd --zone=public --add-port=7000/tcp --permanent

打开⼀组客户端⼝

[root@localhost ~]# firewall-cmd --zone=public --add-port=6000-6100/tcp --permanent

打开控制台⾯板端⼝

[root@localhost ~]# firewall-cmd --zone=public --add-port=7500/tcp --permanent

加载防⽕墙更新

[root@localhost ~]# firewall-cmd --reload

[root@localhost ~]# cd /frp

[root@localhost frp]# ./frps -c frps.ini

换成4.30的源主机这里由于是自己搭建了一个所以

[root@y ~]# vim /frp/frpc.ini

[common]

server_addr = 192.168.4.10

server_port = 7000

[qwer]

type = tcp

local_ip = 127.0.0.1

local_port = 22

remote_port = 6022

浏览器访问服务器IP:7500端口就可以访问到frp服务器,左边第二个选项TCP可以看见有没有可连接的主机,以及连接的端口号。

frp反向代理的安装与配置、ftp服务的搭建及应用

frp反向代理的安装与配置、ftp服务的搭建及应用

远程登录通过端口6022即可访问4.10的服务器就可以访问到客户端。

frp反向代理的安装与配置、ftp服务的搭建及应用

 

二、ftp

1.ftp服务概述:

FTP(File Transfer Protocol)是⼀种应⽤⾮常⼴泛并且古⽼的⼀个互联⽹⽂件传输协议。

主要⽤于互联⽹中==⽂件的双向传输==(上传/下载)、⽂件共享

跨平台   Linux、Windows

FTP是==C/S==架构,拥有⼀个客户端和服务端,使⽤==TCP协议==作为底层传输协议,

提供可靠的数据传输

FTP的默认端⼝ ==21号==(命令端⼝)    ==20号==(数据端⼝,主动模式下) 默认被

动模式下

FTP程序(软件)==vsftpd==

2、FTP服务的客户端⼯具 

Linux:ftp、lftp(客户端程序)

Windows:FlashFXP(虚拟主机)、FileZilla、IE、Chrome、Firefox

lftp和ftp⼯具区别:

lftp:默认是以==匿名⽤户==访问

ftp:默认是以==⽤户名/密码==⽅式访问

lftp可以批量并且下载⽬录

3、FTP的两种运⾏模式

在FTP服务中,其⼀共拥有两种模式(主动模式 + 被动模式)

4、搭建FTP服务

[root@y ~]# yum -y install vsftpd

[root@y ~]# systemctl restart vsftpd

[root@y ~]# systemctl enabled vsftpd

[root@y~]# firewall-cmd --set-default-zone=trusted   修改默认区域

[root@y ~]# firewall-cmd --get-default-zone     查看默认区域

5.FTP的配置⽂件详解

[root@y ~]# rpm -ql vsftpd 

 /usr/lib/systemd/system/vsftpd.service     启动脚本

/etc/vsftpd              配置⽂件的⽬录

/etc/vsftpd/ftpusers           ⽤户列表⽂件,⿊名单

/etc/vsftpd/user_list          ⽤户列表⽂件,可⿊可⽩(默认是⿊名单)

/etc/vsftpd/vsftpd.conf         配置⽂件(主配置⽂件)

 /usr/sbin/vsftpd            程序本身(⼆进制的命令)

/var/ftp               匿名⽤户的默认数据根⽬录

/var/ftp/pub             匿名⽤户的扩展数据⽬录

vsftpd配置⽂件详解:

[root@y ~]# grep -v ^# /etc/vsftpd/vsftpd.conf 

anonymous_enable=YES       ⽀持匿名⽤户访问  

local_enable=YES        ⽀持⾮匿名⽤户,普通账号登录,默认进⼊到⾃⼰家⽬录

write_enable=YES        写总开关

local_umask=022         反掩码  file:644  rw- r-- r-- dir:755

dirmessage_enable=YES   启⽤消息功能

xferlog_enable=YES       开启或启⽤xferlog⽇志

connect_from_port_20=YES    ⽀持主动模式(默认被动模式)

xferlog_std_format=YES      xferlog⽇志格式

listen=YES              ftp服务独⽴模式下的监听

pam_service_name=vsftpd     指定认证⽂件

userlist_enable=YES       启⽤⽤户列表

tcp_wrappers=YES        ⽀持tcp_wrappers功能(FTP限速操作)

6、ftp服务的搭建

[root@y ~]# yum -y install vsftpd

[root@y ~]# rpm -ql vsftpd                    查看相关的配置文件

[root@y ~]# systemctl status vsftpd            查看启动状态

[root@y ~]# systemctl start vsftpd

root@y ~]# netstat -lpunt |grep                 ftp查看端口情况

[root@y ~]# firewall-cmd --zone=public --add-port=21/tcp --permanent   

                                                 打开ftp端口

[root@y ~]# firewall-cmd --reload

[root@y ~]# firewall-cmd --zone=public --list-ports        查看打开的端口

[root@y ~]# setenforce 0                        关闭selinx

[root@y ~]# vim /etc/selinux/config                 永久关闭selinx

frp反向代理的安装与配置、ftp服务的搭建及应用

换一台主机设置为ftp的客户端

[root@localhost frp]# yum -y install ftp

[root@localhost frp]# ftp 192.168.4.30

frp反向代理的安装与配置、ftp服务的搭建及应用

[root@localhost frp]# yum -y install lftp            

[root@localhost frp]# lftp 192.168.4.30                默认是匿名访问

frp反向代理的安装与配置、ftp服务的搭建及应用

这里是因为ls时端口是随机的所以找不到。

换回服务器

[root@y ~]# useradd kehu

[root@y ~]# echo kehu |passwd --stdin kehu

[root@y ~]# vim /etc/vsftpd/vsftpd.conf 

17        local_root=/data/kehu                                    指定账号访问目录,需要写的

101    chroot_local_user=YES                    去掉这里的注释,禁锢kehu中i能在/data/kehu活动

[root@y ~]# systemctl start vsftpd

[root@y ~]# cd /data/kehu/

[root@y kehu]#  dd if=/dev/zero of=./syg.txt bs=3M count=1

[root@y kehu]# firewall-cmd --set-default-zone=trusted                设置信任所有端口

回到客户机

frp反向代理的安装与配置、ftp服务的搭建及应用

要下载的话就输入get 文件名,要上传就输入pull 文件名。

7、一般可能会遇见的问题

frp反向代理的安装与配置、ftp服务的搭建及应用

frp反向代理的安装与配置、ftp服务的搭建及应用

frp反向代理的安装与配置、ftp服务的搭建及应用

frp反向代理的安装与配置、ftp服务的搭建及应用

 

 

 

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]