NAS中需要用到内网穿透,可以将内网映射到外网访问,之前搭过frpc感觉配置有点繁琐,并且不是很稳定,经常需要启动它,现在这个nps就解决了这个问题,非常好用且稳定。

错误1: strconv.Atoi: parsing "": invalid syntax

npc很多报错,需要更改配置文件,删掉一些没有用的配置


    [web]
    host=c.o.com
    target_addr=127.0.0.1:8083,127.0.0.1:8082

    [tcp]
    mode=tcp
    target_addr=127.0.0.1:8080
    server_port=10000

    [socks5]
    mode=socks5
    server_port=19009
    multi_account=multi_account.conf

    [file]
    mode=file
    server_port=19008
    local_path=/Users/liuhe/Downloads
    strip_pre=/web/

    [http]
    mode=httpProxy
    server_port=19004

    [udp]
    mode=udp
    server_port=12253
    target_addr=114.114.114.114:53

    [ssh_secret]
    mode=secret
    password=ssh2
    target_addr=123.206.77.88:22

    [ssh_p2p]
    mode=p2p
    password=ssh3

    [secret_ssh]
    local_port=2001
    password=ssh2

    [p2p_ssh]
    local_port=2002
    password=ssh3
    target_addr=123.206.77.88:22

错误2: 404 not found

配完后客户端能连接上服务端,域名主机也都是在线状态,也在域名做了解析,就是404

最后发现nginx少了一个映射


    server {
        listen 443 ssl http2;
        server_name {域名}; #请求域名

        #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
        #error_page 404/404.html; #开启ssl
        ssl_certificate {路径}; #pem证书路径
        ssl_certificate_key {路径}; #pem证书key路径
        ssl_session_timeout 5m; #会话超时时间
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #加密算法
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #SSL协议
        #SSL-END

        #拦截所有请求
        location / {
            proxy_set_header Host $http_host;
            proxy_pass http://127.0.0.1:{服务端配置文件http_proxy_port}; #服务A访问地址
        }
    }

    server {
        listen 80;
        server_name {域名};
        rewrite ^(.*)$ https://$host$1 permanent;
    }

附上群晖docker安装客户端命令

    docker run -d --restart=always --name npc --net=host -p -v {你的目录}:/conf ffdfgdfg/npc -config=/conf/npc.conf