JWT Authentication for WP-API在nginx下使用

由于最近在调试wp的JWT Authentication for WP-API认证功能,但是sandy用了快10年的nginx了。实在不想去用apache,看了官方说明没也刻意去提示怎么修改。

其实2年前解决过这个问题,一直没记录下来。总是忘记,翻了好几个备份盘终于找到之前修改过的文档。

ubuntu下利用expect实现screen多窗口开机运行

ubuntu下利用expect实现screen多窗口开机运行

1. expect的安装与使用

1.1. expect的安装与使用

是什么

expect 是用来进行自动化控制和测试的工具。主要是和交互式软件telnet ftp ssh 等进行自动化的交互。

利用Mac下的launchctl(定时任务)来备份数据到google盘

利用Mac下的launchctl(定时任务)来备份数据到google盘

1. 说明

由于sandy用的是黑苹果,未知的状态太多。所以得备份。时光机器可以解决为什么还要launchctl来备份吗?两手备份是最安全的,吃过这样的亏上过这样的当。还是多一个备份渠道还是好滴!

CloudFlare 自建DDNS教程

CloudFlare 自建DDNS教程

CloudFlare Global API 获取地址: https://www.cloudflare.com/a/profile

Shell 脚本

安装一些要使用的组件

Mac terminal无法清除历史纪录

我用的iterm2 + zsh

  1. Linux传统清除方式并没能解决

    history -c
    `

  2. 常用history命令:

  • 查看历史命令纪录:

    `history
    history | less
    `
  • 使用 !! 执行上一条命令

    `!!
    `
  • 使用 !foo 执行以 foo 开头的命令

    `!foo
    `
  • 使用 !n 执行第 n 个命令

    `!100
    `
  1. 可以尝试下这样来解决:
  • 在terminal中输入hist,然后tab键,出来以下这些

    `HISTCHARS  HISTFILE   HISTSIZE
    `
  • 了解历史记录的大小:

    `echo $HISTSIZE
    `
  • 历史记录的保存位置: echo $HISTFILE # 查看history文件存放地址

    `echo > ~/.zsh_history # 清空
    
  • 好了,退出terminal,重新登录检查一下即可 退出后,再history检查一下

群晖自动申请Let’s Encrypt的ssl域名证书,支持泛域名,支持自动签发,自动部署到群晖[新增cloudflare教程]

群晖自动申请Let’s Encrypt的ssl域名证书,支持泛域名,支持自动签发,自动部署到群晖[新增cloudflare教程]

img

使用条件

1.需要有一个域名

2.必须要有公网ip

3.dns使用阿里云、Dnspod、Godaddy、AWS、Linode、cloudflare均可

下载脚本(右键另存为,使用下载工具无法下载):下载地址

首先获取cloudflare 的e-mail 和Key

如图方式申请

img

创建一个新的,注意创建后要记得保存,因为这个只显示一次
img

之后修改config文件

修改主域名,DNS类型,生效时间,及你的DNS的e-mail 和Key(就是上面刚刚保存的e-mail和Key)

export DOMAIN=e9china.net 这里是你的域名

export DNS=dns_cf 这里是你的dns类型,dns_cf就是cloudflare,具体类型可以看config文件内的说明,比如阿里云的为 dns_ali ,需要阿里云的Key和Secret,之前文章也介绍过,不知道在哪里查看的可以百度一下!

export DNS_SLEEP=120 这里是生效时间,一般为60-120,不知道什么意思就保持默认

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
export DOMAIN=e9china.net

# DNS类型,根据域名服务商而定
export DNS=dns_cf

# DNS API 生效等待时间 值(单位:秒)
# 某些域名服务商的API生效时间较大,需要将这个值加大(比如900)
export DNS_SLEEP=120

# 阿里云 DNS=dns_ali
export Ali_Key="LTqIA87hOKdjevsf5"
export Ali_Secret="0p5EYueFNq501xnCPzKNbx6K51qPH2"

# Dnspod DNS=dns_dp
export DP_Id="78903"
export DP_Key="1234567890000000000000000000"

# Godaddy DNS=dns_gd
export GD_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export GD_Secret="asdfsdfsfsdfsdfdfsdf"

# AWS DNS=dns_aws
export AWS_ACCESS_KEY_ID="sdfsdfsdfljlbjkljlkjsdfoiwje"
export AWS_SECRET_ACCESS_KEY="xxxxxxx"

# Linode DNS=dns_linode
export LINODE_API_KEY="xxxxxxxx"

# cloudflare dns=dns_cf
export CF_Email="dsasdadsad"
export CF_Key="dsadsadsadsadsadsadasda"

Bash

Copy

修改之后保存,上传到群晖任意文件夹,并查看真实存放路径

img

ssh登录群晖,输入以下命令

1
2
3
4
5
sudo -i

cd /volume1/web/syno-acme-master/

./cert-up.sh update

Bash

Copy

之后等待读秒结束

img

等待….

img

读秒结束后,到群晖控制面板-安全性-证书 就可以查看到了

img

证书有效期3个月,我们建立一个脚本来每3个月运行一次即可实现全自动签发

进入控制面板-计划任务,新建用户脚本

img

取名

img

设置日期,三个月一次
img

输入脚本

1
sh /volume1/文件目录/syno-acme-master/cert-up.sh update >> /volume1/文件目录/syno-acme-master/log.txt 2>&1

Bash

Copy

确定既可

img

确定完成。

之后每三个月就会自动签发证书并部署到你的群晖了!

Mac下Aria2安装及其配置并设置开机启动

![](https://blog.e9china.net/wp-content/uploads/2019/06/下载.png)

1.安装Homebrew

注:(如已安装,请忽略)
打开终端键入以下命令,等待完成

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
`</pre>

## 2.安装最新版本aria2并配置

**1.终端下输入以下命令**

<pre>`➜  ~ brew install aria2
`</pre>

**2.等待安装完成后,下载附件**

**Aria2相关配置下载地址**
 **[aria2 config](https://blog.e9china.net/wp-content/uploads/2019/06/Aria2V2.zip "aria2 config")**

**3.建立aria2文件夹**

<pre>`cd ~
// 创建aria2文件夹
mkdir ~/.aria2
`</pre>

**4.打开刚才创建好的aria2文件夹**

<pre>`➜  ~ open ~/.aria2
`</pre>

**5.解压下载好的附件,将 下列文件 复制到aria2文件夹内**

<pre>`aria2.conf
aria2.log
aria2.session
com.aria2c.plist
com.google.Chrome.mobileconfig
`</pre>

**6.将下载文件夹内的 aria2c 文件复制到 /usr/local/Cellar/aria2/1.33.1/bin 下**
 **操作方式,终端输入命令**

<pre>`cd /usr/local/Cellar/aria2/1.33.1/bin
`</pre>

**将该文件夹里的 aria2c 文件重命名为 aria2c.bak,再将下载文件夹内的 aria2c 复制进去**
 **注:**
 **1.理由是官方的 aria2c 版本最多支持16线程,sarkrui改好的aria2c版本支持128线程**
 **2.文中所说的1.33.1是我当前从brew上下载下来的版本,实际以你brew下载下来的版本为准,如果和我版本不一致,请修改相关的1.33.1这个路径**

**7.右键使用文本编辑或sublime打开 aria2.conf**
 **找到如下语句,将hsuyelin(本人电脑用户名)修改为你电脑的用户,修改完成 command+s 保存退出**

<pre>`#文件保存路径, 默认为当前启动位置
dir=/Users/hsuyelin/Downloads
# 日志保存路径
log=/Users/hsuyelin/.aria2/aria2.log
# 从会话文件中读取下载任务
input-file=/Users/hsuyelin/.aria2/aria2.session
# 在Aria2退出时保存`错误/未完成`的下载任务到会话文件
save-session=/Users/hsuyelin/.aria2/aria2.session
`</pre>

**8.右键使用文本编辑或sublime打开 com.aria2c.plist**
 **找到如下语句,将hsuyelin(本人电脑用户名)修改为你电脑的用户,修改完成 command+s 保存退出**

<pre>`--conf-path=/Users/hsuyelin/.aria2/aria2.conf
`</pre>

**9.安装 Aria2 GUI 软件**
 将附件里的 Aria2 GUI.app 复制到 /Applications 目录下

## 3.初次安装运行aria2服务,以后可配置开机自启动

**1\. 终端输入以下命令,输入如果未报错,那么Aria2服务正常运行了**

<pre>`aria2c
`</pre>

**注:如果报6800错误,那么将 aria2.conf 文件里的下列语句进行修改**

<pre>`#RPC端口, 仅当默认端口被占用时修改
rpc-listen-port=6800
`</pre>

## 4.进阶使用

**1.安装BaiduExporter插件**
 **1.1浏览器输入地址,点击右边的clone or download进行下载:**
 [https://github.com/acgotaku/BaiduExporter](https://link.jianshu.com?t=https%3A%2F%2Fgithub.com%2Facgotaku%2FBaiduExporter)

**1.2也可以用命令行克隆到本地文件夹**

<pre>`// 这个 /Users/hsuyelin/Desktop/Developer 只是我本地的文件夹,cd命令代表进入这个文件夹的意思
➜  ~ cd /Users/hsuyelin/Desktop/Developer
➜  Developer git clone https://github.com/acgotaku/BaiduExporter.git
`</pre>

**注:**
 **1\. 上面两种下载源码的方式二选其一即可**
 **2\. 该插件是由雪月秋水大神编写,版权归雪月秋水大神所有**

**2.安装 BaiduExporter.crx 插件到谷歌浏览器**
 **2.1 谷歌浏览器地址栏键入以下命令**

<pre>`chrome://extensions/
`</pre>

**2.2 将 BaiduExporter.crx 插件左键按着不动拖入到谷歌浏览器插件页面**

**2.3 右上角打开开发者模式**

**2.4 点击 BaiduExporter.crx 插件详细信息,找到ID那一栏,复制ID那一栏**

**2.5 用sublime打开 com.google.Chrome.mobileconfig 文件,找到第19行,将刚才记录的id进行替换,保存退出**

**2.6 安装 com.google.Chrome.mobileconfig,一直点击运行或者确定的字样,反正就是肯定啦**

## 5.设置Aria2开启启动

**5.1 将附件包里的 com.aria2c.plist 复制到 /Users/你的用户名/.aria2/ 目录下,也就是和刚才复制配置 aria2.conf 在一个文件夹**

**5.2 键入以下命令**

<pre>`open ~/Library/LaunchAgents
// 然后把 com.aria2c.plist 复制到打开的LaunchAgents文件夹里
launchctl load -w ~/Library/LaunchAgents/com.aria2c.plist

注:看不看得懂,全看各位的悟性,自我感觉已经把步骤拆分的很细,语言也用的很通俗了,看的懂的,给个赞,看不懂的,也请原谅。

Proxmox VE登陆的时候提示没有有效的订阅

Proxmox VE登陆的时候

提示没有有效的订阅
You do not have a valid subscription for this server. Please visit www.proxmox.com to get a list of available options.

问题描述:
最近测试KVM用的proxmox是免费版社区版的,所以每次都提示这个没有有效的订阅挺烦的!

解决方法:

修改文件/usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js

修改之前记得先备份一下

root@e9china# cp proxmoxlib.js proxmoxlib.js.bak
root@e9china# ls
root@e9china# proxmoxlib.js  proxmoxlib.js.bak
root@e9china# vi proxmoxlib.js

然后找到if (data.status !== ‘Active’) {

修改为if (false) {

然后保存,重登陆查看还有的话清理一下浏览器的缓存应该就行了!

J1900软路由刷pve,安装ikuai+lede

J1900软路由刷pve,安装ikuai+lede

pve是什么?pve是很多玩家的简称,其实全名叫:proxmox-ve。是一个虚拟机管理软件。今天我们就来折腾这个,网上很多教程要么就是太老了,要么就是版本不对!一大堆错误。Sandy一直卡在uefi引导系统里面过不去。测试了好几个版本的老毛桃pe都不行,后来实在没办法的。想起树莓派里面用过的一个软件Etcher,尝试一下,发现Ok哦可以进入pve的安装界面了

安装用到的软件:

Etcher https://www.balena.io/etcher/

Proxmox VE https://www.proxmox.com/en/downloads 最新版本

LEDE openwrt-koolshare-mod-v2.31-r10822-50aa0525d1-x86-64-combined-squashfs.img.gz

ikuai https://www.ikuai8.com/component/download ios 64位

img2kvm https://blog.e9china.net/ssh/img2kvm img转vm硬盘格式

演示机器:j1900,4网口,64g硬盘,4g内存,1个16g以上的u盘

全部下载完成,我们就准备来折腾!

第一步

使用Etcher刻录pve到你的u盘

如图一样,很简单的功能。第一步选择你的ios或者img的位置,第二步选择你的u盘,第3步刻录。记住要清空u盘原来的数据的!

第二步

安装pve,如果你和sandy是同款j1900的机器,那么就是f7进入u盘启动,如果不是那就得自己看产品说明书了。

  1. 同意协议

  1. 选择硬盘

  1. 选择国家和键盘布局

  1. 管理密码和邮箱(邮箱建议别乱写)

  1. 设置ip

    网口选择默认

    Hostname 域名随便输入

    Ip address: 192.168.1.100 pve管理后台地址

    Netmask: 255.255.255.0

    Gateway: 192.168.1.253 ikuai的管理地址

    DNS server: 192.168.1.253 ikuai的管理地址

  2. 等待安装完成

  3. 重启系统

  4. 重启成功,显示后台登录。一定要用https访问

然后用网口1连接你的pc机,你的pc机ip地址设置成

192.168.1.x

255.255.255.0

192.168.1.253 ikuai管理地址

第三步

设置网口,把多余空网卡绑定做好桥链

enp1s0 已经系统默认绑定。请不要重复绑定!

第四步

安装ikuai系统

  1. 上传iso文件

  • 创建虚拟机

  • 设置完成以后我们还要添加一个wan口拨号

    我们这里选择网口2作为拨号的端口使用

    一切设置好了,我们就开机安装ikuai吧!

    选择1,然后选择y

    这里我们选择2,设置lan口ip,也就是ikuai的管理后台地址,我们之前设置的是253,所以这里一定要设置192.168.1.253

    然后回车就可以了!

    进入怎么修改密码那些都有提示,这里就不截图了

    这里我们要绑定wan口

    绑定好了,我们设置adsl的账户和密码

    然后就自动连接上去了

    我们还要设置一下DHCP

    到这步我们的设置已经完成了

    第五步

    安装lede

    1.建立虚拟机,步骤相同,不同的地方看截图

    内存:1024,硬盘1g,cpu 1核

    2.绑定剩余网口,除vmbr1以外都绑定

    3.用ssh进入软路由执行命令

    ssh root@192.168.1.100
    wget https://blog.e9china.net/ssh/img2kvm
    wget http://firmware.koolshare.cn/LEDE_X64_fw867/%E8%99%9A%E6%8B%9F%E6%9C%BA%E8%BD%AC%E7%9B%98%E6%88%96PE%E4%B8%8B%E5%86%99%E7%9B%98%E4%B8%93%E7%94%A8/openwrt-koolshare-mod-v2.31-r10822-50aa0525d1-x86-64-combined-squashfs.img.gz
    gunzip openwrt-koolshare-mod-v2.31-r10822-50aa0525d1-x86-64-combined-squashfs.img.gz
    mv openwrt-koolshare-mod-v2.31-r10822-50aa0525d1-x86-64-combined-squashfs.img lede.img
    chmod +x img2kvm
    ./img2kvm lede.img 101 vm-101-disk-1 #101为虚拟机id号

    4.我们回到pve管理后台

    可以看到一个未使用的硬盘,我们双击他

    点击添加

    我们先选项里面设置一下驱动的顺序

    然后就开机了

    浏览器打开http://192.168.1.1

    设置好静态地址:

    然后我们把我们的pc机的ip也设置成自动获取,如果你要手工,那么网关要设置成192.168.1.1,这样就结束了!

    最后附上我的网线接连图

    LAN1是接ap路由器,LAN2是光猫的线也是连接我们ikuai的端口,这样我们就大功告成了!

    自己改usb连接9针插脚,让wifi的蓝牙模块使用起来!

    联想刃9000很悲剧,主板没9针Usb2.0的插脚!让我的蓝牙模块一直用usb的,但是支持不怎么样、会一直掉线!
    今天马云家的卖家给我一个启发,插9针是为了供电为什么不自己做一个连接线,连接到机箱后面去呢?说干就干~
    我们准备一个好的usb头子,剪断尽量留长一点的线,然后按照线的颜色对接上去

    按照线的颜色对接

    接好的样子

    然后开机让mac读取驱动(BCM943602 免驱,mac OS集成)

    这样就完美了~以后有电焊的时候再做的好看一点!

    Your browser is out-of-date!

    Update your browser to view this website correctly. Update my browser now

    ×