分类 默认分类 下的文章

链接
nssm-github

参考资料
run frp client as a service on windows and ubuntu / debian
怎样将 FRP 安装为系统服务
Windows上有没有类似tail -f这样的命令?


简单的总结一下

首先frp肯定要下下来,把frpc.toml改好,启动一次看看有没有弄错的,没问题就ok
然后把nssm下下来,把里面的nssm.exe拿出来就行,不用全解压,放到和frp一个目录下
打开cmd,输入nssm按tab,打个空格,打个install,然后回车

然后会弹出来一个窗,最底下是服务名,写个frpc就行
path写frpc绝对路径
第二行在第一行填好后会自动出来的,不用改
第三行是参数,写 -c 然后跟frpc.toml的绝对路径,和cmd直接开frpc.exe大差不差

上面第二个标签页details,中间那个框是写服务详情的,可以随便写点,比如frpc的版本号啥的,不写也行

选项卡往后翻有个 I/O ,填个文件地址可以记录日志
只要填stdout就行,stderr会自动用同一个文件,你可以先在frp目录里创建一个log.log,然后去选它

都搞完了之后直接保存就行了,服务列表里去找找,启动试试,应该是没问题的


附带一个用处不是很大的操作,上面参考资料最后一个链接,可以实时看日志,达到直接开cmd的效果  
如果你上面日志部分是照做的,那下面直接照抄就行
在frp目录下新建一个bat文件,里面写powershell gc log.log -wait就行

建议在gui后台操作,因为很可能改着改着就进不去后台了

目的:主线插eth0,走eth0上网,因为eth0无论如何都不能shutdown所以首先考虑用这个口

设静态
如果你的其他网卡有设置地址,先改掉,改成和eth0不重复的,以及不要和接下来要接在eth0上的网段重复
把eth0的地址设置成你要接入的局域网地址,填好网关和dns,重点:在默认网关的可选项那填1,保存

把其他有信息的网卡默认网关后面的可选信息填大于1的数字,保存

建议重启
也可以先命令行ping一下,应该是已经正常了

标题有点模棱两可,讲详细点就是自动录制直播并且上传到onedrive备份,以及网页版自助文件下载服务

为了实现零额外成本,本方案只需要一台能联网的电脑

所需的软件是
录播姬
raidrive
freefilesync
花生壳
java8
zfile

大致流程如下:
录播姬录制直播,完成后自动转封装成mp4,利用freefilesync将文件同步到raidrive挂载的onedrive里,zfile映射onedrive目录,然后用花生壳的免费内网穿透将zfile的web页面发布出来就行了

原地址
tar

解包:tar zxvf filename.tar
打包:tar czvf filename.tar dirname

gz命令

解压1:gunzip filename.gz
解压2:gzip -d filename.gz
压缩:gzip filename
    .tar.gz 和  .tgz
    解压:tar zxvf filename.tar.gz
    压缩:tar zcvf filename.tar.gz dirname
    压缩多个文件:tar zcvf filename.tar.gz dirname1 dirname2 dirname3.....

bz2命令

解压1:bzip2 -d filename.bz2
解压2:bunzip2 filename.bz2
压缩:bzip2 -z filename
     .tar.bz2
     解压:tar jxvf filename.tar.bz2
     压缩:tar jcvf filename.tar.bz2 dirname

bz命令

解压1:bzip2 -d filename.bz
解压2:bunzip2 filename.bz
     .tar.bz
     解压:tar jxvf filename.tar.bz

z命令

解压:uncompress filename.z
压缩:compress filename
     .tar.z
     解压:tar zxvf filename.tar.z
     压缩:tar zcvf filename.tar.z dirname

zip命令

解压:unzip filename.zip
压缩:zip filename.zip dirname

Nginx 常用配置
截图

nginx中文文档
nginx简易认证
常用命令原网址

nginx -s reopen     #重启Nginx
nginx -s reload     #重新加载Nginx配置文件,然后以优雅的方式重启Nginx
nginx -s stop       #强制停止Nginx服务
nginx -s quit       #优雅地停止Nginx服务(即处理完所有请求后再停止服务)
nginx -t            #检测配置文件是否有语法错误,然后退出
nginx -?,-h         #打开帮助信息
nginx -v            #显示版本信息并退出
nginx -V            #显示版本和配置选项信息,然后退出
nginx -t            #检测配置文件是否有语法错误,然后退出
nginx -T            #检测配置文件是否有语法错误,转储并退出
nginx -q            #在检测配置文件期间屏蔽非错误信息
nginx -p prefix     #设置前缀路径(默认是:/usr/share/nginx/)
nginx -c filename   #设置配置文件(默认是:/etc/nginx/nginx.conf)
nginx -g directives #设置配置文件外的全局指令
killall nginx       #杀死所有nginx进程

https://www.rultr.com/tutorials/proxy/2268.html

apt-get install unzip //Debian、Ubuntu系统

yum install unzip //RHEL/CentOS系统

bash <(curl -L -s https://install.direct/go.sh)

/usr/bin/v2ray/v2ray:V2Ray 程序;
/usr/bin/v2ray/v2ctl:V2Ray 工具;
/etc/v2ray/config.json:配置文件;
/usr/bin/v2ray/geoip.dat:IP 数据文件
/usr/bin/v2ray/geosite.dat:域名数据文件

service v2ray status

同时,V2Ray也支持Shadowsocks协议,把V2Ray软件当做Shadowsocks服务器来使用。完成此功能,需要在配置文件中增加”inboundDetour”配置块,使其支持另一种入流量:
"inboundDetour": [
{

 "protocol": "shadowsocks",
 "port": 10087,
 "settings": {
  "method": "aes-256-cfb",
  "password": "www.rultr.com",
  "udp": false
 }
}

],
“inboundDetour” 的字面意思就很有意思,就是指入流量的另一条道路。配置文件中”protocol”指入流量使用的协议,直接写 “shadowsocks”就是了;”port”是指使用”shadowsocks”协议侦听的端口,注意要和”vmess”协议端口有区别;”settings”部分是使用”shadowsocks”协议时的主要配置项,不做设置的话,”shadowsocks”协议将不能正常工作。一般只需要设置其中的”password”部分,由用户自行设定,用于客户端的连接。

这样设置完成后,V2Ray就可以同时作为V2Ray和Shadowsocks的服务器,响应不同客户端的连接,是不是很方便呢。如果不确信的话,可以用 netstat -tnlp 命令查看一下10086端口和10087端口是不是都显示为侦听状态。

以下是V2Ray作为服务器端的全部配置内容,这里提供给大家参考:

{
"log" : {

"access": "/var/log/v2ray/access.log",
"error": "/var/log/v2ray/error.log",
"loglevel": "warning"

},
"inbound": {

"port": 10086,
"protocol": "vmess",
"settings": {
  "clients": [
    {
      "id": "b831381d-6324-4d53-ad4f-8cda48b30811",
      "level": 1,
      "alterId": 64
    }
  ]
}

},
"inboundDetour": [
{

 "protocol": "shadowsocks",
 "port": 10087,
 "settings": {
  "method": "aes-256-cfb",
  "password": "www.rultr.com",
  "udp": false
 }
}

],
"outbound": {

"protocol": "freedom",
"settings": {}

},
"outboundDetour": [

{
  "protocol": "blackhole",
  "settings": {},
  "tag": "blocked"
}

],
"routing": {

"strategy": "rules",
"settings": {
  "rules": [
    {
      "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"
    }
  ]
}

}
}

原文https://www.cnblogs.com/biao-wu/p/13275486.html
亲测可用√

vim /usr/share/rpcd/acl.d/luci-base.json

{
"unauthenticated": {
    "description": "Allow system feature probing",
    "read": {
        "ubus": {
            "luci": [ "getFeatures" ]
        }
    }
},

"luci-base": {
    "description": "Grant access to basic LuCI procedures",
    "read": {
        "file": {
            "/": [ "list" ],
            "/*": [ "list" ]
        },
        "ubus": {
            "file": [ "list" ],
            "uci": [ "changes", "get" ]
        }
    },
    "write": {
        "cgi-io": [ "upload" ],
        "file": {
            "/etc/luci-uploads/*": [ "write" ]
        },
        "ubus": {
            "file": [ "remove" ],
            "uci": [ "add", "apply", "confirm", "delete", "order", "rename", "set" ]
        }
    }
},

加上下面这段

"uci-access": {
    "description": "Grant uci write access to all configurations",
    "read": {
        "uci": [ "*" ]
    },
    "write": {
        "uci": [ "*" ]
    }
},

结束

"luci-base-network-status": {
    "description": "Grant access to network status information",
    "read": {
        "ubus": {
            "luci-rpc": [ "getBoardJSON", "getHostHints", "getNetworkDevices", "getWirelessDevices" ],
            "network": [ "get_proto_handlers" ],
            "network.interface": [ "dump" ]
        },
        "uci": [ "luci", "network", "wireless" ]
    }
}

}

然后重启