广州茄子科技有限公司
一点课 内训师

搭建Ngrok服务器——以最快速度远程你的电脑

茄子阅读(4045)

环境准备:

服务端:

1、VPS:Centos 7 64

2、域名

3、软件下载地址(此下载地址仅供参考):
go的下载地址:http://www.golangtc.com/download
git的下载地址:http://git-scm.com/downloads git绝对下载地址: https://www.kernel.org/pub/software/scm/git/git-2.6.0.tar.gz
ngrok克隆地址:https://github.com/inconshreveable/ngrok.git

安装git

1、依赖

yum -y install zlib-devel openssl-devel perl hg cpio expat-devel gettext-devel curl curl-devel perl-ExtUtils-MakeMaker hg wget gcc gcc-c++

2、下载git

wget https://www.kernel.org/pub/software/scm/git/git-2.6.0.tar.gz

3、解压git

tar zxvf git-2.6.0.tar.gz

4、编译git

cd git-2.6.0
./configure --prefix=/usr/local/git
make
make install

5、创建git的软连接

ln -s /usr/local/git/bin/* /usr/bin/

安装go环境
准备go环境,我的系统是64位的centos所以我下载amd64的包(32位的下载386的包即可)


1、下载go的软件包

wget https://dl.google.com/go/go1.14.linux-amd64.tar.gz

2、解压出来可以随便指定位置

tar -zxvf go1.4.2.linux-amd64.tar.gz
mv go /usr/local/(*如果此处移动失败 请使用先复制到该目录再删除的方法)

3、go的命令需要做软连接到/usr/bin

ln -s /usr/local/go/bin/* /usr/bin/

编译ngrok

cd /usr/local/
git clone https://github.com/inconshreveable/ngrok.git
export GOPATH=/usr/local/ngrok/
export NGROK_DOMAIN="abc.com"(*此处改为你自己的域名即可)
cd ngrok

为域名生成证书

openssl genrsa -out rootCA.key 2048
openssl req -x509 -new -nodes -key rootCA.key -subj "/CN=$NGROK_DOMAIN" -days 5000 -out rootCA.pem
openssl genrsa -out server.key 2048
openssl req -new -key server.key -subj "/CN=$NGROK_DOMAIN" -out server.csr
openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 5000

在软件源代码目录下面会生成一些证书文件,我们需要把这些文件拷贝到指定位置

cp rootCA.pem assets/client/tls/ngrokroot.crt
cp server.crt assets/server/tls/snakeoil.crt
cp server.key assets/server/tls/snakeoil.key

遇到overwrite,输入y,回车

指定编译环境变量,如何确认GOOS和GOARCH,可以通过go env来查看

查看git、go是否正确安装

git version

go version

编译服务端

cd /usr/local/go/src
GOOS=linux GOARCH=amd64 ./make.bash
cd /usr/local/ngrok/
GOOS=linux GOARCH=amd64 make release-server

编译客户端(按自己的客户端选择编译即可)

适用于mac os 64位操作系统

cd /usr/local/go/src
GOOS=darwin GOARCH=amd64 ./make.bash
cd /usr/local/ngrok/
GOOS=darwin GOARCH=amd64 make release-client

适用于Windows的客户端编译

cd /usr/local/go/src
GOOS=windows GOARCH=amd64 ./make.bash
cd /usr/local/ngrok/
GOOS=windows GOARCH=amd64 make release-client

服务端启动

/usr/local/ngrok/bin/ngrokd -domain="$NGROK_DOMAIN" -httpAddr=":80"

#在linux下如果想后台运行客户端可使用下面这条启动命令

setsid ./ngrok -config=./ngrok.cfg -subdomain=test 80

#开启screen功能,确保等下要进行的进程不会因为断开Xshell的连接就被杀死

下面的命令 name可以随意指定,不过也没什么必要改,然后再输入服务端启动命令即可。

命令输入之后,界面会被清空

screen -S name

配置本地ngrok

把刚刚编译好的客户端下载下来,然后新建“ngrok.cfg”,复制客户端配置文件进去保存。

客户端配置文件(新建ngrok.cfg,将配置信息粘贴进去就行)

server_addr: "abc.com:4443"
trust_host_root_certs: false

在根目录cmd,复制一下回车就好啦,需要用到的代码:
(PS:dianmo请自行设置,避免与其他人重复,请对照下一步中访问地址 ;8080为端口号)

ngrok -config=ngrok.cfg -subdomain dianmo 8080

上面这个就是http转发,如果需要tcp转发,就在配置文件那里配置一下。

tcp转发的“ngrok.cfg”

根目录CMD启动命令修改为这个:

ngrok -config=ngrok.cfg start http https mstsc

启动后的客户端界面:

可以新建一个批处理,把启动命令放进去自启动

然后大家就可以在任何地方运行:mstsc

 

 

一些问题:

如果大家的ngrok服务器是在国内的,因为某些原因可能需要修改一下google源

修改代码
按理来说,跳过这一步直接进行后续的编译工作没有什么问题。但是由于google无法访问,造成编译的时候从code.google.com上自动下载依赖包log4go超时而编译失败。
所以,我们需要将依赖包的下载地址改为github上的地址

vim /usr/local/ngrok/src/ngrok/log/logger.go

将第四行改成下面的

log "github.com/keepeye/log4go"

常见错误解决办法
出现这个错误说明我们需要安装hg
package code.google.com/p/log4go: exec: "hg": executable file not found in $PATH
解决办法
yum install hg -y
编译到 go get gopkg.in/yaml.v1 的时候卡住不走了,说明是git比较低,版本需要大于1.7.9.5以上
fatal: Unable to find remote helper for 'https' 出现这个问题,可以重新安装 curl curl-devel 然后再重装git
安装git-core

wget https://www.kernel.org/pub/software/scm/git/git-core-0.99.6.tar.gz
tar zxvf git-core-0.99.6.tar.gz
cd git-core-0.99.6
make prefix=/usr/libexec/git-core install
export PATH=$PATH:/usr/libexec/git-core/

如果大家家中有NAS需要访问还可以把客户端放到梅林固件上运行。

挂载云硬盘方法

茄子阅读(3881)

  • 查看数据盘

       请以root用户执行以下命令:

[root@VM_39_211_centos ~]# fdisk -l

复制代码

  • 添加分区
[root@VM_39_211_centos ~]# fdisk /dev/vdb
  • 格式化分区
[root@VM_39_211_centos ~]# mkfs.ext4 /dev/vdb1
  • 设置自动挂载
[root@VM_39_211_centos ~]# mkdir -p /data
[root@VM_39_211_centos ~]# echo '/dev/vdb1 /data ext4 defaults 0 0' >> /etc/fstab
[root@VM_39_211_centos ~]# mount -a
[root@VM_39_211_centos ~]# df -Th

基于Auto.js手机端自动化测试的自学报告

茄子阅读(5266)

背景:

在工作和生活上,每个人总会遇到一些不想做,但无法拒绝的事情或者任务。

所以我们总是想方设法,“复制”多一个“自己”,来帮我们完成这些事情。

之前一直和雄仔研究用chrome+selenium+python来实现自动化操作,虽然基本达到预期效果,但网站cookie只有4小时,4小时要登录一次,达不到全自动化要求。。。

就在我和 bearboy一筹莫展的时候,我的小情人降临了,哈哈。。。所以就把这个项目搁置了一段时间。

最近自己改变了一下思路,不在PC端执行,改在app端,然后到处找资料,果然被我发现了这个auto.js的项目了。 看过介绍文档觉得比较有意思,就看着api学了几天,和雄仔写了几个自用的小脚本。很好上手,如果稍掌握一点js,将会很快可以写好并付诸使用。下文会予以简要介绍,并有部分学习资料便于快速上手。

所以说,有时候想问题,想不通,不妨放一放,过段时间再来想(时间允许的话)。还有,身边最好有个学伴跟你讨论,一起(互)学(叼)习,一起(吹)进(捧)步,一个人容易钻牛角尖,还好有bearboy。

介绍:

Auto.js是一款安卓应用,针对安卓7.0以上机型,它可以无需root执行脚本。主要是运用系统自带的“无障碍服务”来获取页面的,这是个亮点,但有个缺陷就是每次关闭 Auto.js 这个app后都要重新开启“无障碍服务”,颇为繁琐。

        因为接触的时间有限,js使用不熟等原因,以我目前的认识及需求,使用这个软件主要的方式是:通过获取页面的 布局、控件属性、point的颜色 来实现定位到具体坐标,从而实现自动化的效果。  软件还支持获取安卓系统的传感器信息、读写文件、发送接收网络请求等,感兴趣可以在api中看到实现方法。

功能介绍:
  1. 数据监控:可以监视当前手机的数据。
  2. 图片监控:截图获取当前页面信息。
  3. 控件操作:模拟操作手机控件。
  4. 自动化工作流:编写简单的脚本,完成一系列自动化操作。如:微信/QQ自动点赞,快速抢单等。
  5. 定时功能:定时执行某个脚本,来完成定时任务。如:定时打卡签到等
项目介绍:

手机安装使用步骤:

① 开启无障碍服务

② 音量上键停止脚本:当脚本处于无法停止的状态时,使用音量上键强制停止脚本。

③ 开启悬浮窗:

悬浮窗有4个控件:

1)脚本列表
2)自动录制
3)布局范围分析 与 布局层次分析

获取页面元素、控件:

以今日头条为例,点击悬浮窗中的“布局范围分析”

选取你需要的元素,长按

点击查看控件,就会显示该控件信息,然后我们就可以利用了。

关于脚本

以腾讯新闻极速版为例,简单介绍一下思路:

首先打开app,如果不是首页的要先回到首页:

app.launchApp("腾讯新闻极速版");
backHomePage(8);

function backHomePage(flag) {
    log("返回主页函数调用次数" + flag)
    if (flag < 0) {
        start();
    } else if (!isHomePage()) {
        back()
        sleep(1500)
        backAndEnter(--flag)
    }
}

function isHomePage() {
    //判断有无评论组件,防止把视频新闻页面误判为首页
    return currentActivity() === "com.tencent.news.activity.SplashActivity" && id(assemblyId.isHomePage).findOne(200) == null;

获取新闻列表,点击进入新闻页面,判断有没有红包,没有的话返回首页,刷新新闻后重新进入新闻页面:

var ar = id(assemblyId.newList).find();
ar.get([num]).parent().click();
if (id(assemblyId.redPacket).exists()) {
    sleep(1000);
    toNextNew();
} else {
    backAndEnter(8)
    refreshNews()
}

如果有红包,则使用swipe模拟滑动到页面最底部,等待红包打开后,上拉进入下个新闻:

scrollDown();
log("滑动完成,等待红包")
waitTipOpen(500);
log("判断暂无相关内容")
if (text("暂无相关内容").exists()) {
    backAndEnter(8);
    refreshNews();
} else {
    randomSwipeDown(1000, 300);
    readNews();
}

//滑动到最后
function scrollDown() {
    while (!(text("查看更多评论").exists() || id(assemblyId.sofa).exists())) {
        if (waitArr[waitFlag]) {
            sleep(waitArr[waitFlag++])
        }
        randomSwipeDown(1100, 300);
    }
}

//等待红包打开,超过8秒未打开则继续
function waitTipOpen(i) {
    if (id(assemblyId.redPacket).exists() && i > 0) {
        sleep(10);
        waitTipOpen(--i);
    }
}

注:我和bearboy的一些脚本代码由于涉及到灰色产业,纯自用,这里就不作分享了。

最后

auto的优点:

1)开源:代码开源,可以查到源码。

2)无需root:Android 7.0以上功能基本不需要root。

3)免费。

4)易用:代码自动生成。

5)语言:标准的JS语法。

6)灵活。

7)扩展:提供JS转JAVA桥梁,存在无限多的扩展。

提倡自动动手编写Auto.JS脚本

1)安全:Auto.JS脚本拥有很大的权限,使用他人的脚本可能存在风险。

2)编写简单:JS 脚本嵌套中文,方便阅读和书写。

3)脚本升级:一旦APP版本升级,原脚本可能不使用了。

4)提升自己的编写代码能力和解决问题能力。

软件下载

请关注公众号:茄子研究所

回复:“autojs”

获取下载链接。

【服务器】使用 KMS 激活 Microsoft 产品

茄子阅读(3755)

⚠ 前言

1. 使用此方法激活并不是正版,需要正版请前往微软商城购买。

2. KMS 只能激活批量授权 (Volume License) 产品,无法激活零售 (Retail) 产品。

3. KMS 激活有效期为 180 天 (常规版本) ,但是一般会连接 KMS 服务器进行自动续期。

4. 高端玩家可以考虑本地 KMS 或者路由器 KMS 。

5. 本文只谈 KMS 激活,怎么安装怎么使用不在讨论之列。

6. 非 MSDN 原版 / 使用过 KMS 软件的,不保证可以通过本文命令方式激活。

7.本文来源:https://fczbl.vip 、 https://blog.alanyhq.com

KMS 基本操作

常规三步操作:

1.安装KMS密钥;

2.指定KMS服务器地址;

3.激活产品。

个人不推荐使用 KMS 软件,毕竟有些软件有可能带有捆绑,推广等。 下面将对 KMS 的命令行激活进行较为详细的说明:

一、Windows 系列

对于 Windows 10 ,目前有数字权利工具 (通过模拟升级获取 Ticket 进行激活) 直接获取数字权利,可以考虑不使用 KMS 。 下面列出了所有可以通过 KMS 激活的版本及其 KMS 密钥,请选择对应的版本。

版本 KMS 密钥
Windows 10 Pro W269N-WFGWX-YVC9B-4J6C9-T83GX
Windows 10 Pro N MH37W-N47XK-V7XM9-C7227-GCQG9
Windows 10 Pro Workstations NRG8B-VKK3Q-CXVCJ-9G2XF-6Q84J
Windows 10 Pro Workstations N 9FNHH-K3HBT-3W4TD-6383H-6XYWF
Windows 10 Pro Education 6TP4R-GNPTD-KYYHQ-7B7DP-J447Y
Windows 10 Pro Education N YVWGF-BXNMC-HTQYQ-CPQ99-66QFC
Windows 10 Education NW6C2-QMPVW-D7KKK-3GKT6-VCFB2
Windows 10 Education N 2WH4N-8QGBV-H22JP-CT43Q-MDWWJ
Windows 10 Enterprise NPPR9-FWDCX-D2C8J-H872K-2YT43
Windows 10 Enterprise N DPH2V-TTNVB-4X9Q3-TJR4H-KHJW4
Windows 10 Enterprise G YYVX9-NTFWV-6MDM3-9PT4T-4M68B
Windows 10 Enterprise G N 44RPN-FTY23-9VTTB-MP9BX-T84FV
Windows 10 Enterprise LTSC 2019 M7XTQ-FN8P6-TTKYV-9D4CC-J462D
Windows 10 Enterprise N LTSC 2019 92NFX-8DJQP-P6BBQ-THF9C-7CG2H
Windows 10 Enterprise LTSB 2016 DCPHK-NFMTC-H88MJ-PFHPY-QJ4BJ
Windows 10 Enterprise N LTSB 2016 QFFDN-GRT3P-VKWWX-X7T3R-8B639
Windows 10 Enterprise LTSB 2015 WNMTR-4C88C-JK8YV-HQ7T2-76DF9
Windows 10 Enterprise N LTSB 2015 2F77B-TNFGY-69QQF-B8YKP-D69TJ
Windows 8.1 Pro GCRJD-8NW9H-F2CDX-CCM8D-9D6T9
Windows 8.1 Pro N HMCNV-VVBFX-7HMBH-CTY9B-B4FXY
Windows 8.1 Enterprise MHF9N-XY6XB-WVXMC-BTDCT-MKKG7
Windows 8.1 Enterprise N TT4HM-HN7YT-62K67-RGRQJ-JFFXW
Windows 8 Pro NG4HW-VH26C-733KW-K6F98-J8CK4
Windows 8 Pro N XCVCF-2NXM9-723PB-MHCB7-2RYQQ
Windows 8 Enterprise 32JNW-9KQ84-P47T8-D8GGY-CWCK7
Windows 8 Enterprise N JMNMF-RHW7P-DMY6X-RF3DR-X2BQT
Windows 7 Professional FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4
Windows 7 Professional N MRPKT-YTG23-K7D7T-X2JMM-QY7MG
Windows 7 Professional E W82YF-2Q76Y-63HXB-FGJG9-GF7QX
Windows 7 Enterprise 33PXH-7Y6KF-2VJC9-XBBR8-HVTHH
Windows 7 Enterprise N YDRBP-3D83W-TY26F-D46B2-XCKRJ
Windows 7 Enterprise E C29WB-22CC8-VJ326-GHFJW-H9DH4
Windows Server 2019 Datacenter WMDGN-G9PQG-XVVXX-R3X43-63DFG
Windows Server 2019 Standard N69G4-B89J2-4G8F4-WWYCC-J464C
Windows Server 2019 Essentials WVDHN-86M7X-466P6-VHXV7-YY726
Windows Server 2016 Datacenter CB7KF-BWN84-R7R2Y-793K2-8XDDG
Windows Server 2016 Standard WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY
Windows Server 2016 Essentials JCKRF-N37P4-C2D82-9YXRT-4M63B
Windows Server 2012 R2 Datacenter W3GGN-FT8W3-Y4M27-J84CP-Q3VJ9
Windows Server 2012 R2 Standard D2N9P-3P6X9-2R39C-7RTCD-MDVJX
Windows Server 2012 R2 Essentials KNC87-3J2TX-XB4WP-VCPJV-M4FWM
Windows Server 2012 BN3D2-R7TKB-3YPBD-8DRP2-27GG4
Windows Server 2012 N 8N2M2-HWPGY-7PGT9-HGDD8-GVGGY
Windows Server 2012 Single Language 2WN2H-YGCQR-KFX6K-CD6TF-84YXQ
Windows Server 2012 Country Specific 4K36P-JN4VD-GDC6V-KDT89-DYFKP
Windows Server 2012 Standard XC9B7-NBPP2-83J2H-RHMBY-92BT4
Windows Server 2012 MultiPoint Standard HM7DN-YVMH3-46JC3-XYTG7-CYQJJ
Windows Server 2012 MultiPoint Premium XNH6W-2V9GX-RGJ4K-Y8X6F-QGJ2G
Windows Server 2012 Datacenter 48HP8-DN98B-MYWDG-T2DCC-8W83P
Windows Server 2008 R2 Web 6TPJF-RBVHG-WBW2R-86QPH-6RTM4
Windows Server 2008 R2 HPC edition TT8MH-CG224-D3D7Q-498W2-9QCTX
Windows Server 2008 R2 Standard YC6KT-GKW9T-YTKYR-T4X34-R7VHC
Windows Server 2008 R2 Enterprise 489J6-VHDMP-X63PK-3K798-CPX3Y
Windows Server 2008 R2 Datacenter 74YFP-3QFB3-KQT8W-PMXWJ-7M648
Windows Server 2008 R2 for Itanium-based Systems GT63C-RJFQ3-4GMB6-BRFB9-CB83V
Windows Web Server 2008 WYR28-R7TFJ-3X2YQ-YCY4H-M249D
Windows Server 2008 Standard TM24T-X9RMF-VWXK6-X8JC9-BFGM2
Windows Server 2008 Standard without Hyper-V W7VD6-7JFBR-RX26B-YKQ3Y-6FFFJ
Windows Server 2008 Enterprise YQGMW-MPWTJ-34KDK-48M3W-X4Q6V
Windows Server 2008 Enterprise without Hyper-V 39BXF-X8Q23-P2WWT-38T2F-G3FPG
Windows Server 2008 HPC RCTX3-KWVHP-BR6TB-RB6DM-6X7HP
Windows Server 2008 Datacenter 7M67G-PC374-GR742-YH8V4-TCBY3
Windows Server 2008 Datacenter without Hyper-V 22XQ2-VRXRG-P8D42-K34TD-G3QQC
Windows Server 2008 for Itanium-Based Systems 4DWFP-JF3DJ-B7DTH-78FJB-PDRHK
Windows Server Datacenter, version 1809 6NMRW-2C8FM-D24W7-TQWMY-CWH2D
Windows Server Standard, version 1809 N2KJX-J94YW-TQVFB-DG9YT-724CC
Windows Server Datacenter, version 1803 2HXDN-KRXHB-GPYC7-YCKFJ-7FVDG
Windows Server Standard, version 1803 PTXN8-JFHJM-4WC78-MPCBR-9W4KR
Windows Server Datacenter, version 1709 6Y6KB-N82V8-D8CQV-23MJW-BWTG6
Windows Server Standard, version 1709 DPCNP-XQFKJ-BJF7R-FRC8D-GF6G4

以管理员身份运行 命令提示符 / PowerShell ,分别执行以下命令 (注意空格):

slmgr.vbs /ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX(KMS 密钥)
slmgr.vbs /skms kms.alanyhq.com(KMS 服务器地址)
slmgr.vbs /ato

下面以 Windows 10 Professional for Workstations 为例进行演示:

slmgr.vbs /ipk NRG8B-VKK3Q-CXVCJ-9G2XF-6Q84J
slmgr.vbs /skms kms.alanyhq.com
slmgr.vbs /ato

上面用到的 KMS 服务器 kms.alanyhq.com 由alanyhq维护,并对外开放使用。

查看到期时间:

slmgr.vbs /xpr

二、Office / Visio / Project

首先需要明确的是, Visio 和 Project 是独立于 Office 的不同软件 (Mondo 测试许可除外),需要单独激活,并且它们比 Office 贵得多!以及 Office 中的每一个套件也都是有独立许可版本的,但是太麻烦了建议还是直接使用 Office 比较好。

批量与零售版本的判断与转换

Office 2010 / 2013 对批量和零售的划分较为清楚,安装时就要确认安装的是批量版本,下面是判断批量与零售的方法:

1. 从安装包名称判断 (仅适用于 MSDN 来源的镜像):批量的安装包以 SW 开头;零售以语言开头,如 cn 。

2. 已安装从软件判断:转到软件的产品信息页面 (就是显示是否激活的页面),查看是否有 更改产品密钥 选项,有则为批量,没有则为零售。

Office 2016 也可以使用上面的方法判断,但是 16 的零售基于 C2R ,安装后可以轻松转换为批量版本 (最新的 2016 零售也可以通过安装证书直接转为 2019 版本)。 为了大家使用方便,这里推荐使用 Office Tool Plus (https://otp.landian.la): 转到“激活”选项卡,在右边的“证书管理”中选择对应版本的 批量(Volume) 证书安装即可。 如果需要手动安装证书可以使用 ospp.vbs /inslic: 命令(不懂别用) Office 2019 批量零售都是基于 C2R 的,所有版本都可以相互转换,也可以转为 365 / 2016 版本,转换方法参考上一条。

下面列出了所有可以通过 KMS 激活的版本及其 KMS 密钥,请选择对应的版本。

这里演示激活也是使用 Office Tool Plus 来完成的: 注意:Office 2010 需要使用命令行激活, OTP 不支持。

1. 填入对应版本的 KMS 密钥并安装。

2. 填入 KMS 服务器地址 (kms.alanyhq.com) 并设定。

3. 激活产品。

不使用 Office Tool Plus 而使用命令行方法: 需要你自行指定 ospp.vbs 所在目录,在 Office 安装目录下找。

cscript "ospp.vbs" /inpkey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX(KMS 密钥)
cscript "ospp.vbs" /sethst:kms.loli.beer(KMS 服务器地址)
cscript "ospp.vbs" /act

进阶:Windows 8 及以后的版本也可以使用 slmgr.vbs + SKUID 处理 Office,这里不展开。

AppStore换美区账号及Telegram解除频道block

茄子阅读(8226)

给AppStore账号换区一直是个很玄学的事情,我有时候直接在手机上就能随便换区,前段时间一天内从国区换到美区又从美区换到日区。。。用了几个月日区后有个APP又只能在美区下,我又想换回来,结果这次就没这么顺利了。。

后来我想出了这样一个方法再次换区成功。。这里记录下:

用电脑访问AppleID官方站并登录:https://appleid.apple.com/

打开这个站生成一个美国人身份信息:http://www.haoweichi.com/

点AppleID账户旁边的编辑,然后把国家或地区选成美国:

关键点来了,看你这个账号的付款方式这里有没有“无”的选项。我这个账号默认就有,这里就选择“无”,然后下面那些信息就按照之前生成的信息填写即可:

反正AppStore换区就是个很玄学的事情,这个选项“无”之前也是时有时无。。。

下面记录一下iOS端看Telegram小姐姐频道的方法。。苹果可真人性化,为了不让你的鸡儿受累,连屏蔽SQ信息这种事情都自动帮你做了。。

我之前也是在Google上面搜了一些方法,发现这些都失效了,像什么抓包装旧版本的Telegram X,现在这个Telegram X已经不在AppStore商店提供了,还抓个锤子包。然后还有说装什么BETA版本的Telegram,我也试过了没用。

首先在AppStore商店安装:TestFlight

之后在Safari打开这个链接:https://testflight.apple.com/join/e07wV6pl

点这个开始测试,然后在TestFlight内就可以安装这个应用了:

这个APP叫Nicegram,源码在Github也是开源的,官方的TG群组:

https://t.me/nicegramapp

之前我也说过了,我还测试过官方的BETA版本,并不行,但这里也记录一下,安装方法和这个Nicegram一样:

https://testflight.apple.com/join/u6iogfd0

官方的版本发布群组:

https://t.me/tgbetahttps://t.me/tgfiles

我非常了解你们,看到这里的人,关注的重点已经不是怎么去解锁频道了,而是在想哪里能获取到这些频道?抛砖引玉:社会主义核心价值观!

Via LALA.IM

关于小米手环写入加密卡IC卡数据的自学报告

茄子阅读(10857)

本文只作技术研究之用,请勿用于非法用途,否则后果自负。

如今网络上能找到RFID安全类的信息非常的少,原因我就不说了,大家也明白。大家如果要研究RFID安全可以去RadioWar或者Freebuf多看看相关的文章,我在后面也会放出一些相关的资料供大家下载研究,资料大多数是外语资料,所以说外语一定要学好!

这次案例的主角是某小区的门禁卡,小露一下。

用NFC手机上安装的MCT(Mifare Classic Tool)查看,门禁卡的确是Mifare Classic 1k类型的。

此次破解用到的工具有:电脑一台,ACR122U一台,带NFC功能的手机一台,门禁卡。除了ACR122U,大家也可以淘宝PM3、变色龙等解卡神器,这里不对解卡原理做过多的分析,有兴趣了解的朋友可以评论我,我再跟你吹一晚水~这里我用一种最简单的方法实现功能,大家都很忙,结果导向。

装好ACR122U驱动,找好软件,一般用M1卡服务程序其实就是简化版的(mfocgui),如果想了解ACR122U解卡算法,可以去官网下载SDK,方便日后的开发。

所有扇区打勾,证明搞掂了。

我们继续正题:首先解出门禁卡的秘钥A、B,得到.dump文件,我们先保存着。

在此之前我已经尝试过用MCT自带的常见的密钥去访问门禁卡,发现有部分扇区使用的不是默认密钥,被加密了,对于这种不是所有扇区加密的卡,我们可以采用验证漏洞把其他扇区密码破解出来,就是用ACR122U解卡。

第二步:用RFID RadioEye(我觉得这个好用,其他写卡的软件也行)把原卡的UID号码和刚刚解出来的dump文件中原卡的“0扇区内容”,写到一张空白的UID卡上。简单总结就是:使空白卡的UID号码和“0扇区内容” 与你原卡的数据一样。

然后其他扇区的内容保持为000000......,秘钥A和秘钥B未FFFFFFFFFF,如下图:

第三步:用小米运动app,连接手环,直接点击“模拟门卡”,把刚刚写好的空白卡用手环模拟出来,因为空白卡除了UID号和“0扇区内容”和你原卡一样之外,其他都是默认内容,小米app肯定可以模拟出来,而不会显示“该卡是加密卡,无法模拟”。

模拟好后,我们手环就会多了一张卡,最后一步就是把原卡内容写入手环

第四步:把原卡解出来的所有扇区的秘钥A、秘钥B全部加入到MCT 的秘钥文件中,点击右上角创建新文件,或者在原来的秘钥文件中直接打开添加也行,随你。

然后选择这个秘钥文件,在MCT中“读标签”,把你原卡的全部数据用MCT读出来保存到手机中(要点击右上角的保存按钮),like this:

最后,在手机MCT中,“写标签”,点击“写转储(克隆)”选择刚刚保存的原卡数据和秘钥文件,开始对手环写入。

这一切都搞掂后,你就可以拿手环去试试了。

小米最多支持存储五张卡数据,我自己写了四张,需要使用的时候在手环切换就好了。

装逼的时候,请注意!!小米手环NFC感应能力可能无卡那种大线圈那么好,所以有时候需要打两次才打到,这个也要看读卡器读卡能力,总之比较容易造成翻车事故。(本人试过几次了)

最后总结一下,小米手环NFC功能吧

简单几句:

(1)不能模拟扇区为非默认密码的卡

(2)写卡保护:小米手环会对比写入的卡和原来卡的UID号码和0扇区,如果两张卡不一样是写不入的,轻则报错,重则要拿回去售后换一只新的。

关于M1卡的相关资料:

高频IC卡指南

飞利浦官方M1卡文档

文献:

The Mifare Hack

Dismantling MIFARE Classic

关于利用宝塔PM2部署node.js项目的报告

茄子阅读(6479)

最近打算用宝塔来搭建node.js项目,之前只用过直接安装node和npm的方法来运行项目,如果对于多个node、php等项目同时在一台服务器运行,那么Nginx的配置也相对麻烦。那有没有一种方法是可以一台服务器运行多个不同项目的方法呢?

利用宝塔PM2管理多个node.js,宝塔这款产品我不再过多介绍了,了解过的朋友可以往下看,没有了解过的朋友自行百度,这里就不安利了。宝塔官方社区,对于PM2的使用方法介绍是很少的,搜索了一下都是网友提出的问题,连个教程都没有。

所以没有官方的支持,唯有靠自己摸索了。

首先安装宝塔官方的PM2管理器(LNMP搭建好是前提),切换到正确的node版本;(本例项目是egg.js)

一、把项目拉到服务器,git 什么的,或者ftp,或者。。。自行解决。

二、CD 到项目跟目录,命令:“npm i”,安装依赖包。如果报错,尝试删除项目中的“package-lock.json”后再重复“npm i”。

安装完后,命令:“node -v”和“npm -v”,查看版本是否正确。

三、环境安装好后,新建和导入sql到数据库,注意“config.prod.js”数据库配置文件的“用户名、密码、数据库名”要一致。“Host”地址是你项目地址。

数据库建立好后,建议用Navicat测试连接一下。注意访问权限和访问端口需要在宝塔添加到白名单。

四、SSH命令启动测试,CD到项目根目录,运行项目:"npm run start"

看到这个"started on http//........"证明项目启动成功了,可以往下一步,同时我们也可在浏览器输入”服务器地址+端口”测试项目,如果出现错误,请根据err log 自行排故。如果有用到API接口的,请检查接口状态。

在宝塔PM2部署,需要先关闭项目,输入命令“npm run stop”关闭项目。

五、打开宝塔PM2管理器设置,选择项目所在根目录和启动文件名称(一般是index.js),项目名称随便写,点击“添加”后,如无意外,状态是绿色运行,重启次数不会多的,如果重启次数不断增加,请查看运行日志。

六、创建映射,点击“映射按钮”,输入“域名”,即可。创建成功后,在宝塔后台网站管理会出现该网站,然后就是熟悉的感觉,SSL、网站监控等都可以方便设置。

踩过的一些坑:路由入口地址要设置正确,我就是忘记了项目路由地址,网站一直显示“404”,还以为是Nginx的配置问题。

SnapShot, 硬盘镜像备份工具, 支持全Windows版本(支持Win PE, Win2003, Win7, Win10, Win2016等)

茄子阅读(6465)

小编这个星期接触比较多的就是组装电脑啦(几乎可以去电脑城兼职了lol)

分享一个系统备份还原工具,除了ghost其实目前市面上的选择还是很多的喔

重装系统后进行封装,从此重装系统不再头疼.

    • 支持环境:

Windows 2000, Windows XP, Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10
Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012,Windows Server 2016
Windows PE

    • 软件特征:
      1. 内存需求:运行时32M,空闲时0M;
      2. 用户交互:界面和命令行;
      3. 文件系统:
        Windows NTFS/FAT16/FAT32/ReFS;
        Linux EXT2/3/4/Reiser/XFS;
      4. 其他特性:支持热备份,备份硬盘或路径为单文件.
    • 软件官网:

http://www.drivesnapshot.de/en/index.htm

    • No Limit Edition:

Windows SnapShot x32

MD5: 44084f412f8fb1e2426b3fd8dd452b4b

SHA1: f669b42fa469ea16ab62f51bf7ff260ec17025de

 

 

Windows SnapShot x64

MD5: 44dbf0e233c4ddb909ae6478b91ce487
SHA1: f349169ef00ea089610758a98624562e73838b1a

 

    如需PE封装,推荐使用32位的,拥有较好的兼容性.

 

win10之完美激活:数字许可证

茄子阅读(3114)

数字权利激活

什么是“数字权利激活”?数字许可证激活是 Windows 10 中新加入的激活方式,是一种授权方法的分类。

数字许可证会记录您的硬件设备信息,只要在CPU和主板设备没有更换的情况下就可以连接微软服务器自动永久性的激活系统,重新安装系统时无需再次输入产品密钥,安装后会自动永久激活。

“数字权利激活”在不更换电脑硬件的情况下一直有效,无论您安装的系统是正式版还是预览版,不影响永久激活效果。
这是Windows10特有的方式,非KMS 180天循环激活。

支持的系统

目前基本上支持大部分Win 10系统!

Windows 10 Cloud
Windows 10 Cloud(N)
Windows 10 Core(N)
Windows 10 CoreCountrySpecific
CWindows 10 oreSingleLanguage
Windows 10 Core
Windows 10 Education
Windows 10 Education(N)
Windows 10 Enterprise
Windows 10 Enterprise(S)
Windows 10 EnterpriseS(N)
Windows 10 Professional
Windows 10 Professional(N)
Windows 10 ProfessionalEducation
Windows 10 ProfessionalEducation(N)
Windows 10 ProfessionalWorkstation
Windows 10 ProfessionalWorkstation(N)

Windows 10 LTSB 2015

Windows 10 LTSB 2016

特别提醒

激活过程中,保持电脑联网,且开启Windows Update!

如果已使用密钥激活 Office 等产品,会丢失其激活状态。
建议: 备份激活信息后再操作。

有些杀毒软件会提示软件有病毒。大家可以参考下:http://bbs.pcbeta.com/forum.php?mod=viewthread&tid=1786693

Zabbix监控VPS主机详细教程 via荒岛LALA

茄子阅读(4005)

在你初步了解并安装完Zabbix后,现在就可以跟着我的这篇文章来尝试使用Zabbix来监控自己的服务器或是VPS主机了。

进入正题:

我们先尝试监控宿主机,也就是安装Zabbix的这台机器。

点击-配置-主机-Zabbix server,如图:

在Agent代理程序的接口这里,将IP地址修改成我们的Zabbix服务器公网IP:

这样我们就完成了对宿主机的系统监控。在监测中-图形,选择对应名字的群组,然后选择对应的主机名,再选择要显示的图形,即可看到监控图表:

上图中我只是随便选择了一个CPU负载的图形,实际上可选的图形多的数不胜数,就比如这样:

再比如我们选择一个常用的,查看eth0网卡流量的图表:

以上,是我想让大家先稍微熟悉一下Zabbix的基本监控操作。

那么下面,我们该如何监控除宿主机以外的其他机器呢?

这里我用CentOS7做示范,在被监控的机器上我们需要安装Agentd客户端。

使用Xshell登录到你的被监控机器内,首先安装EPEL源:

yum -y install epel-release

安装监控所需的依赖组件(Zabbix监控Ping值、丢包率等必须安装fping):

yum -y install fping

一条命令即可安装完成Agentd:

rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.7-1.el7.x86_64.rpm

注:更多其他系统的Agentd安装包可浏览:http://repo.zabbix.com/zabbix/3.4/

查找Agentd的配置文件:

find / -name zabbix_agentd.conf

编辑它:

vi /etc/zabbix/zabbix_agentd.conf

将Server=后面的IP地址修改成你的Zabbix服务端公网IP,如图所示:

最后启动Agentd:

zabbix_agentd

这样我们就在被监控的机器上安装好了客户端,那么下面就回到Zabbix的WEB界面内。

点击配置-主机-创建主机,如图所示:

填写主机名称、可见的名称以及选择一个合适的群组,然后在agent代理程序的接口这儿把IP地址修改成被监控机器的公网IP:

接着点击模版-选择链接指示器:

在弹出的新窗口内,我们可以看到各式各样的监控模版,这里假设LALA要监控Enoctus HKDC1 VPS的PING值和丢包率,我们就可以选择Template Module ICMP Ping,如图所示:

选择好了后,我们点击添加,确定链接指示器内有我们刚才选择的模版名后,再点击最下面的添加按钮,保存设置:

这样我们就把一台VPS主机加入到了Zabbix的监控列表中,此时Zabbix就在帮我们无时不刻的监控此VPS到Zabbix宿主机之间的Ping值、丢包率了。

但我们如何用图表的方式来查看监控的具体数据呢?这里我们就需要自己创建一个图形了,点击如图所示按钮:

右上角点击创建图形:

填写图形的名称,然后在监控项内点击添加按钮:

在弹出的新窗口中,我们可以看到之前添加的监控模版,都有哪些具体的监控项目,选择我们要显示在图形中的监控项目:

然后我们对图形的绘图风格进行适当的调整:

注:建议监控Ping值的时候,将ICMP response time的纵轴Y侧修改成:右。

然后我们就可以点击预览,来查看一下当前的图形显示状态:

这样,我们就配置好了一个监控Ping值、丢包率的监控项目。

同理,作为我们日常使用的话,除去添加一个监控Ping值、丢包率的模版外,还最常用到的必然是:Template OS Linux

方法一样,找到对应的模版名添加即可:

与之前不同的是,这个模版在添加完成后,会自动帮我们创建一些图形,而不再需要我们手动去添加。当然Zabbix也只是帮我们创建了一些最基本的图形:

如果你需要更多的图形,则还是需要手动添加,只不过这次可以添加的图形选择就很多了:

相信,你把这篇文章看到这里,就大概明白Zabbix添加监控某一个项目的具体方法了,无非流程就是这样:

1、在被监控的机器上安装Agentd客户端。

2、在Zabbix的WEB界面上创建主机,并填写被监控主机的IP地址。

3、使用Zabbix自带的模版,来添加监控项目。

4、绘制图形,用来显示监控项目的具体数据。

其实你理解后,就会发现操作起来很简单的,看,就只有4步。

但Zabbix作为一个企业级的监控软件,实际上可自定义的功能多的数不胜数,虽然内置的模版已经够强大了,但Zabbix并不局限于用模版来添加监控项目,实际上我们还可以自己手动来自定义某一个监控条件。

当然LALA不推荐各位使用接下来下面说的方法来监控,因为这些操作一般个人是根本使用不上的。

首先,我们点击监控项:

右上角创建监控项:

在这里有一个非常关键的键值:

点击选择,我们在新窗口中可以看到各式各样的“标准检测器”:

你们可以把“标准检测器”下面的这些键值理解成每一个键值都是一个监控项目,并且这些监控项目都是受高度DIY的,比如说监控的频率、时间、等等都是可以自定义的。

所以,这里我就点到为止,个人用户只是拿来监控VPS的话,根本不需要用到这些。当然如果你喜欢折腾,可以在这里尝试使用一下。

至此,我想你把文章看到这里,就应该基本知道该如何使用Zabbix来监控一个自己的项目了。现在让我们一起看看之前我们监控的Enoctus VPS各项数据展现如何。

网卡流量:

内存使用率:

CPU负载情况:

Ping值、丢包率情况:

空闲硬盘大小:

系统运行时间:

这里还有很多图形,就不一一列举了。在这里我想告诉大家的是,Zabbix还有一个强大的地方就在于图形的查看时间是可以自定义的,比如我上面的这些图形,有的是查看的1小时内的数据,有的是2小时内的数据,这里就用到了图形的缩放。那么Zabbix的缩放功能就在过滤器的下方。你们仔细看上面的几张图可以了解到。

至此,今天的教程就差不多结束了。

写在最后:

这里有一个Zabbix的小BUG,我觉得很有必要给大家提一下,顺带给大家一个修复办法。

如果你将Zabbix的WEB面板语言改成中文,那么图形内的中文会变成乱码,为何我文中的图形都没有乱码呢?因为我事先替换掉了Zabbix的WEB字体文件。

如何替换解决字体乱码?

1、找到你电脑系统内任何一款简体字(Windows/Fonts),把字体文件复制出来:

2、把字体文件上传到ZabbixWEB站点根目录下的fonts目录内,并把之前的字体重命名:

3、把我们刚上传的字体文件重命名为DejaVuSans.ttf:

如何关闭Agentd服务端?

查找Agentd进程PID:

ps -ef | grep zabbix_agentd

强制结束:

kill -9 进程PID

被监控机器无法正常和Zabbix的服务端通信?

关闭被监控机器内的防火墙:

systemctl stop firewalld.service
systemctl disable firewalld.service