2019年12月18日星期三

OpenWrt Padavan 路由使用nps & frp 启动脚本及守护进程代码

写了3个sh脚本,来保持路由内网穿透服务,在OpenWrt和Padavan测试正常;
注意下面/root位置都要改成文件存放位置;
记得加权限

frpc配置文件在etc/storage/frpc/frpc.ini 新建,
npc可以vkey启动,也可以读取/etc/storage/npc/npc.conf 配置文件启动

开机自启动:
Padavan,可以放到脚本-WAN启动后,或防火墙启动后;
sh /media/AiDisk_a1/frpc/frpcstart.sh

OpenWrt的自启动参考这里

frp启动代码
-------------------------------------frpcstart.sh--------------------------------------
#!/bin/sh
cd /root
sh frpcstop.sh
sleep 1
./frpc-watchdog >/dev/null 2>&1 &
echo "frpc-watchdog started."

echo ""
echo "[Frps restart]"
./frpc -c /etc/storage/frpc/frpc.ini >/dev/null 2>&1 &
-----------------------------------------------------------------------------------------




frp停止代码
-------------------------------frpstop.sh--------------------------------------------
#!/bin/sh

kill -9 "`pidof frpc-watchdog`"

pid=$(ps | awk '/[f]rpc -c/{print $1}')

if [ "$pid" == "" ]; then
    echo "[Frpc not running]"
else
    echo "[Frpc stop]"
    kill $pid
fi
---------------------------------------------------------------------------------------





守护进程
----------------------------frpc-watchdog(无后缀)------------------------------

#!/bin/sh

while true; do
sleep 60

pid=$(ps | awk '/[f]rpc -c/{print $1}')

if [ "$pid" == "" ]; then
/root/frpcstart.sh

else
echo ""
fi

done
----------------------------------------------------------------------------------





--------------------------------npcstart.sh------------------------------------

#!/bin/sh
cd /root
sh npcstop.sh
sleep 1
./npc-watchdog >/dev/null 2>&1 &
./npc -server=yourip.com:21001 -vkey=mhgat9xztm78 -type=tcp  >/dev/null 2>&1 &
#./npc -config=/etc/storage/npc/npc.conf >/dev/null 2>&1 &
----------------------------------------------------------------------------------







---------------------------------npcstop.sh-------------------------------------------------
#!/bin/sh

kill -9 "`pidof npc-watchdog`"

pid=$(ps | awk '/[n]pc -config/{print $1}')

if [ "$pid" == "" ]; then
    echo "[Npc not running]"
else
    echo "[Npc stop]"
    kill $pid
fi
----------------------------------------------------------------------------------


















frp/nps在openwrt下的自启动

在openwrt下使用脚本自启,还不是一般繁琐。直接rc local放入sh 脚本自启不顺利。

然后绕个大圈子,下面记录下:

# 进入init.d目录
cd /etc/init.d

#创建一个你的脚本,例如frp,不用sh后缀

#编辑frp:

#!bin/sh /etc/rc.common
#设置启动顺序
START=95

start(){
sh /root/frp.sh
}

#保存退出
#给权限
chmod 0755 /etc/init.d/frp

# 进入rc.d目录
cd /etc/rc.d

# 建立启动软连接
ln -s /etc/init.d/frp /etc/rc.d/S95frp 


--------------------------------------------
#除了启动脚本,还可以直接打代码,&代表后台工作
./frpc -c frpc.ini &
./frpc -c /etc/storage/frpc/frpc.ini >/dev/null 2>&1 &



感谢
https://blog.csdn.net/weixin_38890593/article/details/87861003

OpenWrt开启sftp,方便传输文件

opkg update
opkg install vsftpd openssh-sftp-server
/etc/init.d/vsftpd enable
/etc/init.d/vsftpd start

另外答案
有 dropbear 和 openssh-sftp-server就够了,不需要vsftpd 
  opkg -d ram install openssh-sftp-server 
  mkdir -p /usr/libexec 
  cp /tmp/usr/lib/sftp-server /usr/libexec/ 
然后就行了。 

2019年12月17日星期二

UPX 压缩 frp nps v2ray 等go预编译文件

做了些一键脚本给padavan测试用。一些预编译文件近10MB实在有点大。特别tmp在padavan下只划分了24MB。且每次wget都要一阵时间。

发现UPX 压缩效果非常好,缩到原来三分之一,体积理想多了。下面简单记录下压缩过程


#下载frp
wget https://github.com/fatedier/frp/releases/download/v0.27.0/frp_0.27.0_linux_mips.tar.gz

#下载upx-3.95 amd64版
wget https://github.com/upx/upx/releases/download/v3.95/upx-3.95-amd64_linux.tar.xz

解压
tar -xvf frp_0.27.0_linux_mips.tar.gz
tar -xvf upx-3.95-amd64_linux.tar.xz

#执行压缩操作
./upx-3.95-amd64_linux/upx -9 -k /root/frp_0.27.0_linux_mips/frpc

之后进入frp_0.27.0_linux_mips,能找到压缩后的frpc和原始~frpc
实测10MB的npc压缩后只有3.1MB。放路由执行更合适。



感谢:

2019年12月16日星期一

padavan路由搭建frp/nps客户端/服务端

一般在padavan U盘运行。tmp也可以

frp/nps客户端:
media/Aidisk里面新建frpc或npc文件夹,里面放入go执行文件等。
这里以架构为MT7620 7621,下载mipsle为例
github地址: frp nps nps大陆站

=================frpc客户端===========================

frpc文件夹里新建start.sh
内容为
#!/bin/sh
cd /media/AiDisk_a1/frpc
echo "[Frps start]"
./frpc -c /etc/storage/frpc/frpc.ini >/dev/null 2>&1 &

最后给frpc增加运行权限
cd /media/AiDisk_a
chmod +x frpc


编辑/etc/storage/frpc/frpc.ini(没有的话新建)

[common]
server_addr = mypadavan.f3322.net
server_port = 15000
token = pwpadavan

[tcp18880]
type = tcp
local_ip = 127.0.0.1
local_port = 80
remote_port = 18880

[tcp18822]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 18822


[common]例子(红字都要改的,对应你的fps服务端信息):
[common]
server_addr = 你服务端IP或域名
server_port = 对接端口
token = 自定义密码

蓝字,127.0.0.1=本地。
如不行(openwrt会不行),则输入路由器ip地址,如192.168.2.1


最后ssh运行
cd /media/AiDisk_a1/frpc
./frpc -c /etc/storage/frpc/frpc.ini

看看有没有提示错误。如果都蓝字正常。ctrl+c中断

然后

sh /media/AiDisk_a1/frpc/start.sh

上面代码也可放到路由web [脚本]-[在 WAN 上行/下行启动后执行]底部

完工

============================================

===================npc客户端:=========================

/media/AiDisk_a1/npc放入文件后
同样新建start.sh,内容为
#!/bin/sh
cd /media/AiDisk_a1/npc
./npc -server=yourdomain.com:8024 -vkey=iyx4n256457ck7 -type=tcp  >/dev/null 2>&1 &


这里具体说一下,红字都要改成你信息
./npc -server=你域名或ip.com:对接端口 -vkey=你的vkey -type=tcp  >/dev/null 2>&1 &

最后给npc增加运行权限
chmod +x npc

先执行./npc -server=yourdomain.com:8024 -vkey=iyx4n256457ck7
看看正不正常。正常的话
sh /media/AiDisk_a1/npc/start.sh

完工




2019年12月12日星期四

【转】Proxmox VE 上传 iso 档案

转自
http://blog.jason.tools/2019/01/pve-iso-upload.html

具体非常简单

进入pve的web-ssh(无需密码直接进入的那个)
一行一回车
cd /var/lib/vz/template/iso/

wget https://cdimage.debian.org/mirror/cdimage/archive/9.4.0/amd64/iso-cd/debian-9.4.0-amd64-netinst.iso

上面举例下载debian-9.4-amd64版iso
之后开vm虚拟机的时候就能自动提供选择了。

2019年12月11日星期三

一键脚本改内核,用上加速效果最明显的BBR PLUS

#BBR PLUS是一个可以让你晚高峰油管从3000kbps提升到10000kbps的一个神器。

#BBR PLUS 四合一 一键脚本
#推荐debian9下操作(只支持VM,不支持CT虚拟机/OpenVZ

wget --no-check-certificate -O tcp.sh https://github.com/cx9208/Linux-NetSpeed/raw/master/tcp.sh && chmod +x tcp.sh && ./tcp.sh

先选择2-更换BBR PLUS内核;

然后让他自动下载内核,会提示删掉旧内核, 选中YES删掉后,提示按Y重启

重启后输入./tcp.sh
选择7-启用BBR PLUS
即可完工。

还可以选择10,优化服务器参数(最大连接数等)。

SSRPanel V2Ray 后端对接 /ColetteContreras

#SSRPanel V2Ray 后端对接手把手教程。


v4.21最后一版免费不限用户 下载地址

超简单速成:
233boy脚本 ws-tls - stop v2ray - 替换v2ray核心文件 - 改config.json-运作



#准备好域名,ip指向你的vps
#ssrpanel建立v2ray节点,参考下图(点击放大)
#红框都要自己理解并填好。其余无需改动。
这里节点数字排序用5,ws path用/fun,对应本教程。


#debian vps 安装v2ray;

sudo -i
#装curl sudo
apt update && apt install curl sudo -y

#233boy 一键脚本套娃
bash <(curl -s -L https://git.io/v2ray.sh)

选择4-ws tls
端口34177,
然后输入你的域名,,
分流路径fun,
去广告,和shadowsocks选择N。

伪装域名,随便填一个大型网。


之后安装好,输入v2ray url获得vmess,测试是否连接正常。

正常的话;

#停掉v2ray
service v2ray stop

cd /usr/bin/v2ray/
rm -rf v2ray v2ctl
#把最后一版V2Ray 两个文件覆盖进去
chmod +x v2ray v2ctl


#编辑config.json
nano /etc/v2ray/config.json
按住ctrl+k删除全部。

shift+insert粘贴例程进去;
-------------------------------------------------------------------------------------

{
    "log": {
        "access": "/var/log/v2ray/access.log",
        "error": "/var/log/v2ray/error.log",
        "loglevel": "warning"
    },
    "api": {
        "tag": "api",
        "services": [
            "HandlerService",
            "LoggerService",
            "StatsService"
        ]
    },
    "stats": {
        
    },
    "inboundDetour": [
        {
            "port": 34177,
            "protocol": "vmess",
            "streamSettings": {
                "network": "ws",
                "wsSettings": {
                    
                }
            },
            "tag": "proxy"
        },
        {
            "listen": "127.0.0.1",
            "port": 10085,
            "protocol": "dokodemo-door",
            "settings": {
                "address": "127.0.0.1"
            },
            "tag": "api"
        }
    ],
    "outbounds": [
        {
            "protocol": "freedom"
        }
    ],
    "dns": {
        "server": [
            "1.1.1.1",
            "1.0.0.1",
            "8.8.8.8",
            "8.8.4.4",
            "localhost"
        ]
    },
    "routing": {
        "rules": [
            {
                "type": "field",
                "inboundTag": [
                    "api"
                ],
                "outboundTag": "api"
            },
            {
                "type": "field",
                "ip": [
                    "0.0.0.0/8",
                    "10.0.0.0/8",
                    "100.64.0.0/10",
                    "127.0.0.0/8",
                    "169.254.0.0/16",
                    "172.16.0.0/12",
                    "192.0.0.0/24",
                    "192.0.2.0/24",
                    "192.168.0.0/16",
                    "198.18.0.0/15",
                    "198.51.100.0/24",
                    "203.0.113.0/24",
                    "::1/128",
                    "fc00::/7",
                    "fe80::/10"
                ],
                "outboundTag": "blocked"
            },
            {
                "type": "field",
                "protocol": [
                    "bittorrent"
                ],
                "outboundTag": "blocked"
            }
        ],
        "strategy": "rules"
    },
    "policy": {
        "levels": {
            "0": {
                "statsUserUplink": true,
                "statsUserDownlink": true
            }
        },
        "system": {
            "statsInboundUplink": true,
            "statsInboundDownlink": true
        }
    },
    "ssrpanel": {
        "nodeId": 5,
        "checkRate": 60,
        "user": {
            "inboundTag": "proxy",
            "level": 0,
            "alterId": 64,
            "security": "none"
        },
        "mysql": {
            "host": "你的数据库域名或ip地址",
            "port": 数据库端口号,
            "user": "用户",
            "password": "密码",
            "dbname": "库名"
        }
    },
    "sockopt": {
        "tcpFastOpen": true
    }
}

--------------上面全部红字都要改成你的信息,注意是全部-------------------

ctrl+o保存ctrl+c退出。

#重启v2ray
service v2ray restart

service v2ray status看数据库握手情况



uuid改为ssrpanel用户uuid;
打开网页测试下吧!

------------------------------------------



-------------------------纯TCP对接-------------------------------------------------------
inbounds改成下面。



  "inboundDetour": [
        {
            "port": 34177,
            "protocol": "vmess",
            "streamSettings": {
"network": "tcp"
},
            "sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
},
            "tag": "proxy"
        },
        {
            "listen": "127.0.0.1",
            "port": 10085,
            "protocol": "dokodemo-door",
            "settings": {
                "address": "127.0.0.1"
            },
            "tag": "api"
        }
    ],
--------------------------------------------
进阶:
TCP+TLS模式的v2后端(理论效能比WS-TLS好)
依旧替换核心文件即可

脚本还可同时搭trojan-go
卸载掉trojan-go,跑trojan后端。



Thanks:
#v2ray ssrpanel后端一键脚本
https://sobaigu.com/ssrpanel-v2ray-go.html

#ssrpanel v2ray 对接 go改版
https://github.com/ColetteContreras/v2ray-ssrpanel-plugin

caddy反代下载文件

# 监听端口 51110,提供静态文件服务和目录浏览 :51110 {     root * /home/tls     encode gzip  # 只启用 gzip 压缩     file_server {         browse     }     # 使用提供的证书...