实习十:frp

一、frp
1、什么是frp
frp是一个开源、简洁易用、高性能的内网穿透和反向代理软件,支持tcp,udp,http,https
等协议。frp项目官网是https://github.com/fatedier/frp

2、frp工作原理
服务端运行,监听一个主端口,等待客户端的连接;
客户端连接到服务端的主端口,同时告诉服务端要监听的端口和转发类型;
服务端fork新的进程监听客户端指定的端口;
外网用户连接到客户端指定的端口,服务端通过和客户端的连接将数据转发到客户端;
客户端进程再将数据转发到本地服务,从而实现内网对外暴露服务的能力。

3、frp
3.1 解压软件包
[root@aa ~]# tar -xzvf frp_0.33.0_linux_amd64.tar.gz 

3.2 复制并改名为frp
[root@aa ~]# cp -r frp_0.33.0_linux_amd64/ frp/
[root@aa ~]# cd frp/
[root@aa frp]# ls

3.3 修改配置文件
[root@aa frp]# vim frpc.ini

token=xxxxxxxx    # 代理标识

在ini配置文件中 token属性要保持一致

3.4 启动 frpc
[root@aa frp]# ./frpc -c frpc.ini

4、使用b主机代理a主机
a 内网主机    不可以被网络访问

b 外网主机    可以被外网通过ip或者域名访问

使用b主机代理a主机,通过访问b主机管理a主机

frp访问b主机的特定端口,管理a主机的22端口

4.1 b主机解压 修改配置文件
[root@b_server ~]# tar -xzvf frp_0.33.0_linux_amd64.tar.gz 
[root@b_server ~]# cp -r frp_0.33.0_linux_amd64/ frp/
[root@b_server ~]# ls

[root@b_server ~]# cd frp

[root@b_server frp]# ls

bind_port = 7000     # 服务端口
dashboard_user=aaa   # 控制台面板账号
dashboard_pwd=xxxxxxx  # 控制台密码
dashboard_port=7500  # 控制台端口

4.2 开启防火墙端口
[root@b_server frp]# firewall-cmd --zone=public --add-port=7000/tcp --permanent
[root@b_server frp]# firewall-cmd --zone=public --add-port=7500/tcp --permanent
[root@b_server frp]# firewall-cmd --zone=public --add-port=6000-6100/tcp --permanent

[root@b_server frp]# firewall-cmd --reload

4.3 b主机启动frp
[root@b_server frp]# ./frps -c frps.ini   

4.2 a主机修改配置文件
[root@a_server ~]# cd frp/
[root@a_server frp]# ls
frpc           frpc.ini  frps_full.ini  LICENSE
frpc_full.ini  frps      frps.ini       systemd
[root@a_server frp]# vim frpc.ini

 

 

FTP是一种应用非常广泛并且古老的一个互联网文件传输协议,主要用于互联网中 == 文件的双向传输 == (上传/下载)、文件共享, 跨平台 Linux、Windows, FTP是 == C/S == 架构,拥有一个客户端和服务端,使用 == TCP协议 == 作为底层传输协议,提供可靠的数据传输,FTP的默认端口 == 21号 == (命令端口)
被动模式下

 FTP程序(软件) == vsftpd = 20号 ==(数据端口,主动模式下)默认FTP软件名称=>vsftpd  => vs

2、FTP服务的客户端工具
服务端
(1)下载安装vsftpd
[root@b ~]# yum -y install vsftpd

(2)查看相关的配置文件
[root@b ~]# rpm -ql vsftpd

(3)查看服务状态
[root@b ~]# systemctl status vsftpd

(4)启动vsftpd服务
[root@b ~]# systemctl start vsftpd

(5)查看端口情况
[root@b ~]# netstat -lpunt | grep ftp   //21端口

3、FTP的两种运行方式
主动模式、被动模式

4、搭建FTP
(1)开放端口
[root@b ~]# firewall-cmd --zone=public --add-port=21/tcp --permanent
[root@b ~]# firewall-cmd --reload

[root@b ~]# firewall-cmd --zone=public --list-ports   //查看所有的开放端口
21/tcp

(2)关闭selinux
[root@b ~]# setenforce 0

(3)设置vsftpd服务开机自启动
[root@b ~]# systemctl enable vsftpd
 

客户端
[root@a ~]# lftp 192.168.8.142      //不能登录                     
[root@a ~]# ftp 192.168.8.142  //可以登录,但不能做什么,没有权限
 Name (192.168.8.142:root): ftp
331 Please specify the password.
Password:
230 Login successful.

5、FTP配置文件详解(重要)
 (1)查看vsftpd的配置文件
[root@b~]# vim /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限速操作)

(2)创建ftp登录的账户
[root@b ~]# useradd kefu
[root@b ~]# echo kefu | passwd --stdin kefu

(3)修改配置文件
[root@b ~]# vim /etc/vsftpd/vsftpd.conf 

   12行

(4)重启服务
[root@b ~]# systemctl restart vsftpd 

(5)客户端测试
[root@a ~]# ftp 192.168.8.142    没有权限
Connected to 192.168.8.142 (192.168.8.142).
220 (vsFTPd 3.0.2)
Name (192.168.8.142:root): kefu
331 Please specify the password.
Password:
230 Login successful.

(6)指定用户访问的路径
[root@b ~]# vim /etc/vsftpd/vsftpd.conf 

local_root=/data/kefu    新建

(7)创建配置文件对应的目录
 [root@b ~]# mkdir -p /data/kefu/

(8)限定目录
[root@b ~]# vim /etc/vsftpd/vsftpd.conf 

  101行

(9)重启服务
[root@b ~]# systemctl restart vsftpd 

(10)服务端创建文件
[root@b ~]# cd /data/kefu/
[root@b kefu]# dd if=/dev/zero of=bigfile0 bs=3M count=1 

(11)客户端访问
[root@a~]# ftp 192.168.8.142

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值