首页 > 其他分享 >Frp搭建脚本

Frp搭建脚本

时间:2023-09-28 14:33:04浏览次数:45  
标签:脚本 grep echo Frp Services port Dir 搭建

#!/bin/bash cat << EOF frp_pag变量改成frp包路径如/usr/local/src/ frp_version变量改为frp包名如frp_0.51.3_linux_386.tar.gz 若安装客户端请教WIP改为云主机公网地址 EOF frp_pag=/tmp/frp_0.51.3_linux_386.tar.gz ########env######## Frp_Dir=/etc/frp/ Frp_Log_Dir=/var/log/frp Frp_Bin=/usr/bin Frp_Port=5600 Tmp_Dir=/usr/local/src/ WIP=

#######funntion#####

preparation () { if [ ! -z $frp_pag ] ;then export Frp_Name=$(echo $frp_pag | awk -F / '{print $3}' | sed "s#.tar.gz##g") tar -xf $frp_pag -C $Tmp_Dir [ $? -ge 1 ] && exit 2 [ -d $Frp_Dir ] || mkdir $Frp_Dir [ -d $Frp_Log_Dir ] || mkdir $Frp_Log_Dir else echo "please Enter FRP package address or name" exit 2

fi

}

Server_Config_Data () {

cat << EOF > $Frp_Dir/frps.ini [common] bind_port = $Frp_Port token = actually EOF

}

Client_Config_Data () {

cat << EOF > $Frp_Dir/frpc.ini [common] server_addr = $WIP server_port = $Frp_Port token = actually

[ssh] remote_port = 10020 type = tcp local_ip = 127.0.0.1 local_port = 22 EOF

}

Filewalld_Add () { local port=(22 $Frp_Port 10020 10021 80) if systemctl status firewalld ; then for i in ${port[]} do firewall-cmd --add-port=$i/tcp --permanent done firewall-cmd --reload else systemctl restart firewalld for i in ${port[]} ;do firewall-cmd --add-port={$i/tcp} --permanent ; done firewall-cmd --reload fi }

Start_Services () { [ -x $Frp_Bin/$1 ] || cp $Tmp_Dir/$Frp_Name/$1 $Frp_Bin $Frp_Bin/$1 -c $Frp_Dir/$1.ini >> $Frp_Log_Dir/$1.log & }

Stop_Services () { if [ $(ps -aux | grep -i $Frp_Bin/$1 | grep -v grep | wc -l) -eq 1 ] ;then

    ps -aux | grep -i $Frp_Bin/$1 | grep -v grep | awk '{print $2}' | xargs kill -9
    [ $(ss -tnulp | grep -i $Frp_Port | wc -l) -eq 0  ] && echo "process killed" || echo "port is running"

else
    echo "FRP not running"
fi

}

Restart_Service () { Stop_Sservice $1 Start_Service $1 }

Server_Install () { preparation Server_Config_Data Filewalld_Add Start_Services frps

}

Clinet_Install () { preparation Client_Config_Data Filewalld_Add Start_Servies frpc }

main () { case $1 in server) case $2 in install) Server_Install ;; start) Start_Services frps ;; stop) Stop_Services frps ;; restart) Restart_Service frps ;; *) echo -e "\033[31merror please input install or start or stop or restart\033[0m" ;; esac ;; client) case $2 in install) Clinet_Install ;; start) Start_Services frpc ;; stop) Stop_Services frpc ;; restart) Restart_Service frpc ;;
*) echo -e "\033[31mError please input install or start or stop or restart\033[0m" ;; esac ;; *) echo -e "\033[31merror please once again input\033[0m" exit 2 ;; esac }

main $*

标签:脚本,grep,echo,Frp,Services,port,Dir,搭建
From: https://blog.51cto.com/u_15478219/7639500

相关文章

  • 源码编译nginx安装脚本
    #!/bin/bashprofile(){echo"installingrelyon...."yum-yinstallgccgcc-c++pcrewgetopensslopenssl-devellibtoolgdgd-develecho"dowloadnginx_1.18......"cd/usr/local/src&&wgethttps://nginx.org/download/nginx-1.......
  • vmare平台上esxi主机,搭建虚拟机ping不通网关
    环境描述:虚拟化平台:vmare5.5物理机系统:esxi虚拟机:centos7.5交换机2台:锐捷和华为机柜位置–》上面的交换机是华为的26机柜1台物理机ip10.1.1.1机柜位置–》上面的交换机是锐捷的12机柜3台物理机IP10.1.1.210.1.1.310.1.1.4物理机插了2个网线,a网线是物理机-管理网10.1.1.......
  • GO基础环境搭建GoLand
    一、GO官方资料官网:https://golang.org/gosdk下载:https://golang.google.cn/dl/golang中文社区:https://studygolang.com/dl中文社区文档https://studygolang.com/pkgdoc二、开发环境配置1、GOSDK下载后,自行安装go语言开发需要使用gosdk,下载链接https://go.dev/dl/下载......
  • go go代码中调用python脚本
    目录gogo代码中调用python脚本写个简单的py脚本再写个go的脚本gogo代码中调用python脚本有的官方文档只提供了java和python的sdk,而我们需要用他们封装的服务,只能调用python或java的接口,接下来演示怎么调用python写个简单的py脚本importsysdefmain():args1=sys.ar......
  • flash脚本语言详细解读
    flash脚本语言详细解读-Goto跳转到指定的帧-Play播放-Stop停止-ToggleHighQuality在高画质和低画质间切换-StopAllSounds停止所有声音的播放-GetURL跳转至某个超联结-FSCommand发送FSCommand命......
  • flash按钮脚本祥解
    在【影片剪辑控制】集合中还有一个与我们制做flash密切相关的on命令。这个命令是专门为按钮设计的,它提供了八种按钮的事件。分别是按下,滑过,释放,滑离,外部释放,拖过,拖离和按键。最后一种是定义键盘的事件。这八种时间在我们平时的制作中经常可以用到,每一种时间都有不同的效果,下面我们......
  • FLASH中纯脚本制作下雪效果
    做法:在第一帧中加入如下代码:    varsceneWidth=550;//定义场景的宽varsceneHeight=400;//定义场景的高varsideDisWidth=Stage.width/2-sceneWidth/2;//定义变量,雪花的横向位移范围varsideDisHeight=Stage.height/2-sceneHeight/2;//定义......
  • 搭建Hadoop环境
    搭建Hadoop环境一、虚拟机的安装二、安装JDK1.下载jdkwgethttps://download.java.net/openjdk/jdk8u41/ri/openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz使用上述命令安装2.执行以下命令,解压下载的JDK1.8安装包。tar-zxvfopenjdk-8u41-b04-linux-x64-14_jan_2020.tar......
  • 【Python进阶-PyQt5】00搭建PyQt5环境
    1.创建独立开发虚拟环境1.1虚拟环境简介我们编写的程序,有时用到的Python库是不一样的,比如说开发桌面应用程序我们主要用到PyQt5相关的Python库、开发Web应用程序我们主要用到Django相关的Python库等等。假设我们在开发桌面应用程序的时候除了PyQt5相关的Python库外,还附加了其他......
  • Microsoft 365 开发:如何使用PnP脚本删除文档库中的文件
    Blog链接:https://blog.51cto.com/13969817在SharePointOnline中,您可能偶尔需要删除文档库中的所有文件,例如,如果要将大量文档导入库,或者要清理旧文件,那么如何快速删除库中的所有文档呢?本文将给大家介绍如何通过PnPPowershell脚本来删除所有文件?1.  设定SiteURL和Library的参数......