Holer 带Web管理界面的内网穿透工具
前言这是在Rat大佬博客发现的一个软件挺不错的,就在这里转载过来了,它可以将局域网服务器代理到公网的内网穿透工具,支持转发基于TCP等协议的报文,之前服务端并未开源,由作者免费提供服务,现在服务端代码已经开源了,而且带Web管理面板,我们就可以拿来自建一个内网穿透服务器,使用效果还不错。
截图
安装服务端Github地址:https://github.com/Wisdom-Projects/holer
支持系统:Windows、Linux系统,这里只说Linux搭建,建议直接Debain。
说明:由于该面板使用的JAVA,所以还是比较消耗内存的,如果内存太小,建议先加一点虚拟内存,可以使用Swap一键脚本→传送门。
1、安装JAVA
123456#CentOS系统yum install java-1.8.0-openjdk -y#Debian/Ubuntu系统apt updateapt install default-jdk -y
2、安装Mysql
1234567891011121314#CentOS 6系统rpm -ivh http://repo.mysql.com/mysql ...
CentOS 7 安装最新的 Git
yum 源仓库里的 Git 版本更新不及时,最新版本的 Git 是 1.8.3.1,但是官方最新版本已经到了 2.23.0。想要安装最新版本的的 Git,只能下载源码进行安装。
1. 查看 yum 源仓库的 Git 信息:1# yum info git
可以看出,截至目前,yum 源仓库中最新的 Git 版本才 1.8.3.1,而查看最新的 Git 发布版本,已经 2.23.0 了。
2. 依赖库安装12# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel# yum install gcc perl-ExtUtils-MakeMaker
3. 卸载低版本的 Git通过命令:git –-version 查看系统带的版本,Git 版本是: 1.8.3.1,所以先要卸载低版本的 Git,命令:
1# yum remove git
4. 下载新版的 Git 源码包1# wget https://github.com/git/git/archive/v2.23.0.tar.gz
也可 ...
LinuxVPS 自建ZeroTier 的MOON根目录服务器
说明zerotier 可以作为一款 p2p 的 vlan 内网穿透工具,功能强大且易用,同类产品还有 frp和 LanProxy等。最近有个朋友有创建 p2p vlan 的需求,在简单调研之后决定使用 zerotier 作为基础工具。
官方给出的使用方案比较简单。首先需要一个中心的节点用于两个内网节点的握手,该中心节点需要有一个公网 IP。zerotier 官网提供了中心节点相关服务,免费账户有一定的使用限制,但是由于其节点位于国外,延迟比较高,且可能还需要科学上网才能使用。除此之外,zerotier 也支持自己搭建中心节点服务器,也叫做 MOON 服务器。下面是它的搭建步骤。
MOON 服务器配置操作系统版本是 Ubuntu 18.04, Zerotier One 版本是 v1.2.10, 公网 (也就是 MOON 服务器) 地址是 1.1.1.1。
通过官网文档根据不同操作系统选择不同的安装方式,这里直接通过命令行安装
1curl -s 'https://pgp.mit.edu/pks/lookup?op=get&search=0x1657198823E52A ...
Openwrt lede软路由更新frp到最新0.28.2
frp分为两部分,客户端(frpc)和服务端(frps),所以使用过程中要注意不要混淆了文件。
网络上默认有很多教程,教我们使用,但是对于Openwrt lede软路由默认只支持到0.20,没有提到怎么升级,也没有及时更新,所以研究了一下,总结了以下教程。
新版解决了以下几个问题:
同个域名,不同协议无法使用,比如,同一个域名,Http和https同时存在就无法使用了;
空域名与www域名不能同时存在,会冲突无法访问;
报错页面无法修改,默认的404页面提示是直接写在编译文件里面,无法直接修改。
一、Frpc客户端的安装
1、首先在Openwrt lede软路由酷软里面找到frpc进行安装,安装成功后先不要开启服务,如果开启了先停止后保存。
2、访问 https://github.com/fatedier/frp/releases (移动、联通、长城宽带或者乱七八糟的宽带可能无法访问,有个比较好的办法,就是你用手机4G直接下载到手机,转发到你电脑)下载最新版本
我是的系统是amd64的下载所以下载 frp_0.28.2_linux_amd64.tar.gz
3.ssh登陆k ...
宝塔全站开启https并达到A+
由于现在Google浏览器提示非https的网站为不安全,为了使网站的https达到A+可谓费劲苦心。下边说一下全站开启https的过程吧。
证书申请这个东西看自己哪里申请都行,现在免费的证书大部分用的都是Let’s Encrypt(90天期限)和赛门铁克(本站用的期限1年)可以在腾讯云免费申请
打开后自己申请一个,所有默认即可。申请好后下载证书解压。(后边会用到)
服务器配置
我使用的是宝塔(如果是新手的话推荐大家用宝塔)打开网站的管理,找到ssl,如上图吧证书打开复制里边的内容添加到相应的框内。(过程不在赘述)勾选右上角的强制https,别忘记保存,之后访问你的网站你就会发现实https…
安全规则配置
打开网站配置修改一下部分
使用安全协议现在大部分都是用的TLSV1.2
1ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
使用安全加密套件这个安全加密套件可以有多种匹配,本站推荐一下加密套间
1ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+ ...
linux安装 jiacrontab 管理定时任务
自己有几个需要定时运行的爬虫,用不到诸如 pyspider 之类的爬虫框架,但是又觉得 crontab 不太直观。所以找到了 jiacrontab,自带 web 界面,使用 Go 语言开发。
提供可视化界面的定时任务&常驻任务管理工具。
功能
允许设置每个脚本的超时时间,超时操作可选择邮件通知管理者,或强杀脚本进程
允许设置脚本的最大并发数。
一台 server 管理多个 client。
每个脚本都可在 server 端灵活配置,如测试脚本运行,查看日志,强杀进程,停止定时…。
允许添加脚本依赖(支持跨服务器),依赖脚本提供同步和异步的执行模式。
友好的 web 界面,方便用户操作。
脚本出错时可选择邮箱通知多人。
支持常驻任务,任务失败后可配置自动重启。
支持管道操作。
说明jiacrontab 由 server,client 两部分构成,两者完全独立通过 rpc 通信。server:向用户提供可视化界面,调度多个 client。client:实现定时逻辑,隔离用户脚本,将 client 布置于多台服务器上可由 server 统一管理。 每个脚本的定时格式完全兼容 linu ...
网站加速 JS 脚本 instant.page
有一项技术叫做 prefetch,这个技术,其实说白了,就是一项预加载技术,当用户有意向访问某个页面之前,浏览器首先对此页面进行预加载,当用户真正点击链接后,会从预加载的缓存中直接读取页面内容,缩短页面的加载时间。
而如何来使用这项技术?其实在 html5 的链接标签中有一个 rel 属性,其中有个参数就是 prefetch,不过使用的人不多。
本文介绍的 instant.page,就是使用这项技术的一个脚本,脚本会根据用户鼠标在链接上的停留时间进行判断,当达到 65 毫秒,用户有一半的机会打开此链接,instant.page 将会对此页面进行预加载。
使用1、使用官方提供的带有 Cloudflare 加速的脚本
instant.page 的使用非常简单:
1<script src="//instant.page/1.2.2" type="module"></script>
只需要把这行代码添加到网站的 </body> 之前即可。
2、自托管
建议服务器在国内的朋友使用。只需将下面这段 js 上传到自己服务器 ...
Linux更改为密钥登录
今天登录服务器发现有将近一万个登陆失败的提示,明摆着被人盯上了。。。于是将服务器的登录方式改为了RSA密钥登录。
生成密钥首先是要生成密钥,我直接使用的XShell生成,另存为文件
配置服务器进入/home/用户名/.ssh文件夹,如果是root用户就是/root/.ssh。添加authorized_keys文件,已存在就下一步。
1touch authorized_keys
更改文件权限为600。
1chmod 600 authorized_keys
将公钥文件复制到目录内,使用>>追加到authorized_keys文件里。
1cat id_rsa.pub >> authorized_keys
修改sshd配置文件
123456vim /etc/ssh/sshd_configRSAAuthentication yes #有这一项就开启,没有则不管PubkeyAuthentication yes #开启密钥认证PasswordAuthentication no #关闭密码登录PermitRootLogin yes #是否允许root用户登录,我用的r ...
Linux 设置开机启动项的几种方法
Linux 设置开机启动项的几种方法Linux 设置开机启动项的几种方法
方法一:编辑rc.loacl脚本Ubuntu开机之后会执行/etc/rc.local文件中的脚本。
所以我们可以直接在/etc/rc.local中添加启动脚本。
1vim /etc/rc.local
123456789101112131415#!/bin/sh## This script will be executed *after* all the other init scripts.# You can put your own initialization stuff in here if you don't# want to do the full Sys V style init stuff.touch /var/lock/subsys/local/etc/init.d/mysqld start #mysql开机启动/etc/init.d/nginx start #nginx开机启动/etc/init.d/php-fpm start #php-fpm ...
Linux/VPS 使用 Supervisor 管理进程
Supervisor 是一款使用 Python 开发的非常优秀的进程管理工具。它可以在类 UNIX 系统上让用户精确地监视与控制多组指定数量的服务进程。当监控的服务进程意外退出时,会尝试自动重启这些服务,以保持服务可用状态。
安装Supervisor 官方 提供的安装方式较多,这里采用 pip 方式安装。
安装 pip12345$ yum install python-pip# 升级pip$ pip install --upgrade pip$ pip -Vpip 9.0.1
安装 Supervisor通过 pip 安装 Supervisor:
12$ pip install supervisorSuccessfully installed supervisor-3.3.3
安装 Supervisor 后,会出现 supervisorctl 和 supervisord 两个程序,其中 supervisorctl 为服务监控终端,而 supervisord 才是所有监控服务的大脑。查看 supervisord 是否安装成功:
12$ supervisord -v3.3.3
...