①为什么“搬家”?

生命在于折腾。最近搞到了公网IP,最近淘到了新的离谱的暴风酷博云二期,最近还新出了飞牛OS,快乐三连,终于可以在家搞主页了。

image-elcc.png

1.1 新IP地址

要公网IP首先就是要嘴甜,还好前期加了联通的大哥。一口一个“大哥”直接搞定。

image-idyj.png

1.2 暴风云

正愁家里没有NAS用了,逛了半天小黄鱼,意外发现一个新的离谱的暴风云,J3455+8G+32G,下单下单!

aefce11ac44e5c33f307bb5c5cea7d0-ioxb.jpg

机器到手还有原包装,钢琴烤漆面颜值贼高,原生最高支持1*2.5 SSD+2*3.5 HDD。

1.3 飞牛私有云OS

windows、OMV、TrueNAS全都用过,都感觉差那么点。正好最近新出了飞牛私有云OS,搞个试试。

image-zhci.png

②系统安装

基本傻瓜式安装,一路NEXT就完事了。系统扔在了U盘里,由于U盘是USB2.0,安装过程极其漫长。32G的U盘,装完还有一多半空间。

image-rmzf.png

装完之后很快进入系统,界面非常干爽,支持web端文件管理,太太太方便了!

③Halo部署

飞牛私有云halo部署过程非常丝滑,由于自带docker且支持图形化管理docker-compose,就,按照halo.run的教程,完全无痛傻瓜安装。

备份恢复过程也很顺利,恢复完成后就满血复活了。

image-pals.png

④nginx反向代理

这部分算是本文的重点了,甚至是为了这碟醋包的这碗饺子…

飞牛私有云OS的web界面本就使用的是nginx,占用了80和443端口。所以我只需要在原nginx.conf基础上,进行修改,就可以完成反向代理和ssl证书部署了。而且,飞牛本身有非常优秀的证书管理机制,也就是…以后只需要更新证书到目标文件夹,不用重启nginx,它理论上应该就可以自动使用证书了。飞牛私有云OS自带的nginx配置文件在/usr/trim/nginx/conf/nginx.conf,只要编辑这个文件,再

/usr/trim/nginx/sbin/nginx -s reload

重启nginx,就万事大吉了!

user  www-data;

worker_processes  auto;

load_module modules/ngx_http_trim_cert_module.so;

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

pid        /run/nginx.pid;

events {

    worker_connections  10240;

}

http {

    #

    map $http_upgrade $connection_upgrade {

                default upgrade;

                ''      close;

    }

    #

    upstream trim_cgi {

        server unix:/run/trim_cgi.socket;

    }

    upstream trim_upload {

        server unix:/run/trim_upload_srv.socket;

    }

    include       mime.types;

    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

    #                  '$status $body_bytes_sent "$http_referer" '

    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;

    #tcp_nopush     on;

    #keepalive_timeout  0;

    keepalive_timeout  65;

    #gzip  on;

    # nginx上传文件最大限制

    client_max_body_size 1000000g;

    trim_cert_cfg_path /usr/trim/etc/network_gateway_cert.conf;

    server_tokens off;

    server {

        listen          0.0.0.0:8000    default_server;

        listen          [::]:8000 ipv6only=on default_server;

        listen       8001 ssl default_server;

        listen       [::]:8001 ssl ipv6only=on;

        #server_name  _;

        trim_hook_cert_switch  on;

        ssl_certificate      $ssl_server_name;

        ssl_certificate_key  $ssl_server_name;

        ssl_session_cache    shared:SSL:1m;

        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;

        ssl_prefer_server_ciphers  on;

        root /usr/trim/www;

        index index.html index.htm;

        error_page 404 /index.html;

        # websocket配置

        location /websocket {

                proxy_pass http://trim_cgi;

                proxy_http_version 1.1;

                proxy_set_header X-Real-IP      $remote_addr;

                proxy_set_header Upgrade        $http_upgrade;

                proxy_set_header Connection     "upgrade";

        }

        # upload配置

        location /upload {

                proxy_pass http://trim_upload;

                keepalive_timeout  0;

                proxy_http_version 1.1;

                proxy_set_header X-Real-IP      $remote_addr;

                proxy_request_buffering off;

                client_body_buffer_size 512K;

                tcp_nopush on;

        }

        location /download {

                alias  /;

                download_auth on;

        }

        location /appui {

                alias  /vol0/@appui;

        }

        location ~ ^/(signin|login|system) {

                add_header cache-control no-cache;

                try_files /index.html =200;

        }

        include conf.d/*.conf;

    }

    upstream halo_server{

        server 127.0.0.1:8090;

    }

    server {

        listen 80;

        listen 443 ssl;

        server_name  halo;

        trim_hook_cert_switch  on;

        ssl_certificate      $ssl_server_name;

        ssl_certificate_key  $ssl_server_name;

        ssl_session_cache    shared:SSL:1m;

        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;

        ssl_prefer_server_ciphers  on;

        location / {

            proxy_pass  http://127.0.0.1:8090;

            #proxy_buffer_size 64k;

            #proxy_buffers 32 32k;

            #proxy_busy_buffers_size 128k;

    }

    }

}

配置完毕后,飞牛私有云的80和443端口就归Halo所有了,飞牛web管理页面使用8001端口就好了。

⑤飞牛私有云OS的Web页面DIY

通过编辑/usr/trim/www/assets/index-DTyzZQE_.js,修改文件里的title,可以自定义web界面的名称,等内容。

⑥写在最后

从5月份网站重建以来,又快5个月的时间,期间也没更新什么内容。希望以后可以有精力多更新一点生活的内容吧。

开心就好!!@yuubari