部署frp(内网渗透)+ftp(文件传输)的环境

回顾

Rsync文件远程同步

  1. yum -y install rsync

  2. rsync -av 源文件 目标目录

  3. 细节

​ 源目录/ 同步目录下的文件

​ 源目录 同步整个目录+目录下的文件

​ Rsync -avR 保证文件的相对路径 会复制相对路径包含的目录

​ 同步的内容

​ 新增

​ 修改

​ 删除 --delete

  1. 免密

  2. Rsyncd 启动关闭 端口号:873

6.Vim /etc/rsyncd.conf

7.abc

​ Path=项目所在的目录

​ Log file=日志文件保存的位置

  1. 重启rsyncd服务

  2. 在备份机检测 rsync -a 用户@ip::

  3. Rsync -av 源::abc 保存的位置

  4. 设置每分钟推送一次

  1. 监听修改之后再推送

yum -y install notify-tools

/usr/bin/inotifywait -mrq 目录 -e modify delete arrirs moved create

/usr/bin/inotifywatch

自动同步:

写脚本:

2024.7.19

frp

frp 是⼀个开源、简洁易⽤、⾼性能的内⽹穿透和反向代理软件,⽀持 tcp, udp, http, https等

协议。frp 项⽬官⽹是 https://github.com/fatedier/frp

底层 vpn

frp⼯作原理

服务端运⾏,监听⼀个主端⼝,等待客户端的连接;

客户端连接到服务端的主端⼝,同时告诉服务端要监听的端⼝和转发类型;

服务端fork新的进程监听客户端指定的端⼝;

外⽹⽤户连接到客户端指定的端⼝,服务端通过和客户端的连接将数据转发到客户端;

客户端进程再将数据转发到本地服务,从⽽实现内⽹对外暴露服务的能⼒。

应用安装

#解压
[root@localhost ~]# tar -zxvf frp.tar.gz
[root@localhost ~]# ls
anaconda-ks.cfg               frp.tar.gz.0
apache-tomcat-10.1.25.tar.gz  openjdk-17.0.1_linux-x64_bin.tar.gz
apache-tomcat-9.0.91.tar.gz   Python-3.12.4
a.txt                         Python-3.12.4.tgz
bak.tar.gz                    redis-7.0.15
frp_0.33.0_linux_amd64        redis-7.0.15.tar(1).gz
frp.tar.gz                    todolist.jar
#改名
[root@localhost ~]# mv frp_0.33.0_linux_amd64/ frp/
[root@localhost ~]# tree frp
frp
├── frpc
├── frpc_full.ini
├── frpc.ini
├── frps
├── frps_full.ini
├── frps.ini
├── LICENSE
└── systemd
   ├── frpc.service
   ├── frpc@.service
   ├── frps.service
   └── frps@.service

1 directory, 11 files
#进到frp目录下
[root@localhost ~]# cd frp/
#修改配置文件
[root@localhost frp]# vim frpc.ini
[common]
server_addr = 123.249.27.70
server_port = 7000
token=knee@588588

[huifengyan]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6054
#启动服务
[root@localhost frp]# ls
frpc  frpc_full.ini  frpc.ini  frps  frps_full.ini  frps.ini  LICENSE  systemd
[root@localhost frp]# ./frpc -c frpc.ini
2024/07/19 10:19:29 [I][service.go:282] [b60f7accc15fe586] login to server success, get run id [b60f7accc15fe586], server udp port [0]

2024/07/19 10:19:29 [I][proxy_manager.go:144] [b60f7accc15fe586] proxy added: [huifengyan]
2024/07/19 10:19:29 [I][control.go:179] [b60f7accc15fe586][huifengyan] start proxy success

浏览器访问

http://123.249.27.70:7500/

a 内网主机 不可以被网络访问

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

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

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

现在我们说b为服务端,提供代理访问

a主机是客户端,被代理了

b服务器:

[root@b_server ~]# scp root@192.168.2.5:~/frp.tar.gz ~ The authenticity of host '192.168.2.5 (192.168.2.5)' can't be established. ECDSA key fingerprint is SHA256:EfMzVBUrczaT3PIJrQ9HR+sbSb5B8+MbwUyl0QH7ZBo. ECDSA key fingerprint is MD5:6b:c3:cd:8e:75:b5:37:33:77:50:99:f8:c9:4f:1a:10. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.2.5' (ECDSA) to the list of known hosts. root@192.168.2.5's password: frp.tar.gz                                    100% 8817KB  74.3MB/s   00:00     [root@b_server ~]# ls anaconda-ks.cfg frp.tar.gz inotifytest.sh

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

[root@b_server ~]# ls
anaconda-ks.cfg
frp_0.33.0_linux_amd64
frp.tar.gz
inotifytest.sh

[root@b_server ~]# cp -r frp_0.33.0_linux_amd64/ frp/
[root@b_server ~]# ls
anaconda-ks.cfg
frp
frp_0.33.0_linux_amd64
frp.tar.gz
inotifytest.sh

[root@b_server ~]# #配置服务端的ini文件  frps.ini
[root@b_server ~]# vim frp/frps.ini

[common]

bind_port = 7000
dashboard_user=aaa
dashboard_pwd=aaa
dashboard_port=7500

[root@b_server ~]# #打开端口 7000frp
[root@b_server ~]# #7500 面板
[root@b_server ~]# #6000-6100 客户端的代理端口
[root@b_server ~]# firewalld-cmd --zone=public --add-port=7000/tcp --permanent
-bash: firewalld-cmd: 未找到命令
[root@b_server ~]# firewall-cmd --zone=public --add-port=7000/tcp --permanent
success
[root@b_server ~]# firewall-cmd --zone=public --add-port=7500/tcp --permanent
success
[root@b_server ~]# firewall-cmd --zone=public --add-port=6000-6100/tcp --permanent
success
[root@b_server ~]# firewall-cmd --reload
success
[root@b_server ~]# #不要stop firewalld
[root@b_server ~]# cd frp/
[root@b_server frp]# ls
frpc  frpc_full.ini  frpc.ini  frps  frps_full.ini  frps.ini  LICENSE  systemd
[root@b_server frp]# ./frps -c frps.ini
2024/07/19 11:18:32 [I] [service.go:178] frps tcp listen on 0.0.0.0:7000
2024/07/19 11:18:32 [I] [service.go:277] Dashboard listen on 0.0.0.0:7500
2024/07/19 11:18:32 [I] [root.go:209] start frps success​

a客户端:
[root@localhost ~]# cd frp/
[root@localhost frp]# vim frpc.ini

[common]
server_addr = 192.168.71.136
server_port = 7000

[huifengyan]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6054

[root@localhost frp]# ./frps -c frps.ini
2024/07/19 11:23:01 [I][service.go:178] frps tcp listen on 0.0.0.0:7000
2024/07/19 11:23:01 [I][root.go:209] start frps success
通过b服务器代理a的22端口

浏览器访问服务器的ip地址:

上午回顾

FRP

反向代理

github上的开源软件

底层 vpn 私有的局域网

使用加速器github,uu加速器(收费),steam++免费开源

客户端

​ frpc frpc.ini frpc.full.ini

服务器

​ frps frps.ini frpc.full.ini

分别部署服务器和客户端:

配置服务器的frps.ini

[服务器名称]
bind_port=7000    #必须的


#配置面板 也叫控制台
dashboard_user=xxxxxx
dashboard_pwd=xxxxxxxx
dashboard-port=6100
#标识
token=xxxxxx

访问之前开启端口

firewall-cmd --zone=public --add-port=7000,7500,6000-6100/tcp --permanent

启动

~/frp/frps  -c frps.ini

配置客户端

frpc.ini

[服务器的名称]
​server_addr=x.x.x.x
server_port=7000
token=xxxxx

​​
[自定义被代理的名称]

local_ip=被代理的主机的ip

local_port=被代理的端口  22  80  443  8080

remote_port=6089

启动

~frp/frpc -c frpc.ini

x.x.x.x:7500

frp不止可以在linux和mac安装,也可以在windows安装frp

以后需要远程协助就可以直接发端口号和ssh账号密码

ftp

ftp概述

一个文件在同一时间内,无论有多少人在,但是只能有一个w权限,x其实是r权限

部署vsftpd

阿里云仓库 epel

[root@ftp ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

[root@ftp ~]# yum -y install epel-release

安装vsftpd

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

查看是否安装了ftp服务

[root@ftp ~]# rpm -qa|grep ftp
vsftpd-3.0.2-22.el7.x86_64
[root@ftp ~]# yum list installed|grep ftp
vsftpd.x86_64                         3.0.2-22.el7                     @a    

查看相关的配置文件

[root@ftp ~]# yum list installed|grep ftp
查看服务状态

[root@ftp ~]# systemctl status vsftpd

启动服务

[root@ftp ~]# systemctl start vsftpd

查看端口情况

[root@ftp ~]# netstat -luput|grep ftp
tcp6       0      0 [::]:ftp                [::]:*             LISTEN      1921/vsftpd  
关闭防火墙

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

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

关闭selinux
[root@ftp ~]# setenforce 0
[root@ftp ~]# #永久关闭
[root@ftp ~]# vim /etc/selinux/config

设置vsftpd服务开机启动

[root@ftp ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

修改配置文件

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

anonymous_enable=NO(将yes改为no--不允许匿名用户访问)

重启服务

[root@ftp ~]# systemctl restart vsftpd


FTP、NFS、SAMBA系统服务

⼀、rsync托管xinetd

1、为什么要进⾏服务托管

独⽴服务:独⽴启动脚本 ssh ftp nfs dns ...

依赖服务: 没有独⽴的启动脚本 rsync telnet 依赖xinetd服务(独⽴服务)

2、如何将rsync托管给xinetd服务去管理?

第⼀步:在系统中安装xinetd服务

第⼆步:编写xinetd.conf⽂件(/etc/xinetd.conf)



第三步:⼿⼯创建/etc/xinetd.d/rsync



第四步:重启xinetd服务(xinetd服务重启后,rsync服务也会随之重启,检查端⼝占⽤)

在查询873端⼝占⽤时,发现只有xinetd服务,没有rsync服务,原因:rsync => xinetd

常⻅问题(经验值)

⼆、FTP服务概述 统信os

⼀个⽂件在同⼀时间内,⽆论有多少⼈在r,但是只能有⼀个w权限,x其实r权限

1、FTP服务介绍

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

⽂件传输:⽂件上传与⽂件下载

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

跨平台 Linux、Windows

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

提供可靠的数据传输

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

动模式

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

FTP软件名称 => vsftpd => vs(very secure ftp daemon)

2、FTP服务的客户端⼯具

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

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

lftp和ftp⼯具区别:

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

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

lftp可以批量并且下载⽬录

3、FTP的两种运⾏模式(了解)

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

参考点,FTP的服务器端。如果是FTP服务器端主动连接客户端=>主动模式,如果是

客户端主动连接FTP服务器端=>被动模式。

主动模式

cmd:命令端⼝(发送FTP请求)

data:数据端⼝(后期⽤于传输数据)

☆ 被动模式

FTP默认使⽤的就是被动模式!

4、搭建FTP服务(重要)

第⼀步:关闭防⽕墙与SELinux

第⼆步:配置YUM源

第三步:安装vsftpd软件(FTP => vsftpd)

第四步:启动ftp服务并添加到开机启动项中

第五步:测试FTP是否安装成功

基于浏览器的访问

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
frp内网穿透的部署可以分为两步:部署frp客户端和部署frp服务器。 1. 部署frp客户端 首先需要在内网中部署frp客户端。具体步骤如下: - 下载frp客户端:在frp官网上下载对应平台的frp客户端程序。下载地址为:https://github.com/fatedier/frp/releases。 - 配置frp客户端:在frp客户端程序目录下,创建frpc.ini文件,配置需要暴露到公网的服务与端口映射关系。示例配置如下: ``` [common] server_addr = x.x.x.x server_port = 7000 [web] type = http local_ip = 127.0.0.1 local_port = 80 custom_domains = www.example.com ``` 以上配置表示将本地的80端口映射到公网的www.example.com域名上。 - 启动frp客户端:在frp客户端程序目录下,执行以下命令启动frp客户端: ``` ./frpc -c ./frpc.ini ``` 2. 部署frp服务器 frp服务器需要在公网中部署。具体步骤如下: - 下载frp服务器:在frp官网上下载对应平台的frp服务器程序。下载地址为:https://github.com/fatedier/frp/releases。 - 配置frp服务器:在frp服务器程序目录下,创建frps.ini文件,配置frp服务器的端口等信息。示例配置如下: ``` [common] bind_addr = 0.0.0.0 bind_port = 7000 vhost_http_port = 80 vhost_https_port = 443 ``` 以上配置表示frp服务器监听7000端口,并将80和443端口暴露给frp客户端。 - 启动frp服务器:在frp服务器程序目录下,执行以下命令启动frp服务器: ``` ./frps -c ./frps.ini ``` 这样就完成了frp内网穿透的部署
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值