Skip to content

常见问题

EFS edited this page Sep 16, 2020 · 21 revisions

内容列表:


如何建立一个公开的下载目录?

可以使用 nginx fancyindex 来创建一个只读的下载目录。方法如下:

sudo su -
cd /etc/nginx/apps
touch $username.public.conf
cat > $username.public.conf << EOF
location /$username.public {
  alias /home/$username/public;
  include /etc/nginx/snippets/fancyindex.conf;
  location ~* \.php$ {

  }
}
EOF
nginx -s reload

请将 $username 替换成自己的用户名,并且将 alias /home/$username/public 替换成合适的路径,完成后即可通过 https://YOURDOMAIN/$username.public 访问你的下载目录

如何启用 File Browser 的临时外链功能?

由于默认的安装设置禁用了 File Browser 原本的鉴权功能,因此需要重新启用,并且禁用 nginx 的鉴权,操作方法如下:

  • 停止 File Browser 服务

    sudo su -
    systemctl stop filebrowser@$username
  • 修改配置

    filebrowser -d /home/$username/.config/filebrowser/filebrowser.db config set --address 0.0.0.0 --auth.method=json
  • 禁用 nginx 鉴权,注释掉 /etc/nginx/apps/filebrowser.conf

    #auth_basic "Password Required";
    #auth_basic_user_file /etc/htpasswd.d/htpasswd.$remote_user;
  • 修改如下内容:

    proxy_pass http://$username.filebrowser;
  • 重启服务

    nginx -s reload
    systemctl start filebrowser@$username
如何使用 Flood 连接 rTorrent?

在 Flood 的初始化界面中选择 unix,填入以下内容,$username 需要替换为自己的用户名。

/var/run/$username/.rtorrent.sock
为什么在登录 Flood 后,仪表盘页面会反复弹出认证弹窗?

由于 Flood 软件也是用 Basic auth,在完成认证后会修改 Cookies,导致仪表盘认证失效,目前暂时没有太好的解决方法,只能在关闭 Flood 页面以后重新登录仪表盘。

为什么在重启 BT 客户端后,种子需要重新校验?

BT 客户端会定期将种子活动状态等信息写入自己的数据库,如果在关闭过程中,数据没有正确写入,就可能会造成恢复数据丢失,再次启动时会进行数据校验以确保完整性。因此建议在关闭 BT 客户端前 (包括重启),请暂停所有活动任务,并且等待3-5分钟后关闭,确保数据被正常记录。

如何通过 IP:端口 访问软件的 WebUI?

在 QuickBox Lite 中,几乎所有的软件都被设置为只允许通过 HTTPS 保护的反代路径访问。如果你需要直接访问 IP-端口,你需要修改软件的配置。以 qBittorrent 为例,你需要在 WebUI 设置中找到 Web 用户界面(远程控制)> IP 地址 将默认的 127.0.0.1 修改为 0.0.0.0 以监听所有来源的请求,保存后即可直接通过 IP:端口 访问软件。

为何通过 BT 客户端 WebUI 加载大量种子时会失败?

由于 QuickBox Lite 在反代配置中限制了单次上传的文件大小 (32MB),如果超出该上限,则可能会发生报错。解决方法为:修改 /etc/nginx/snippets/proxy.conf 中的 client_max_body_size 提高上传上限,并且重启 nginx。

为何在安装时选择中文后,控制台仍显示英语提示?

该现象通常发生在 Debian 10 平台,由于环境变量的区别,如果以 su root 或者 sudo su 提权方式从普通用户切换至 root 账户,则不会加载 /usr/sbin 路径下的可执行文件,因此无法正确重设语言。请使用 sudo su - 进行提权并且加载用户配置,然后再进行其他操作。

为什么找不到 flexget 可执行文件?

FlexGet 是通过 pip 用户态安装的,因此安装后,该二进制存储在 /home/${username}/.local/bin 中。同时,在使用 crontab 时,尽可能使用用户态运行,即:

# min hour  day month week  user         command
  *   *     *   *     *     ${username}  /home/${username}/.local/bin/flexget COMMAND

从 1.3.5 开始,FlexGet 将会以 pyenv 环境安装,二进制路径更改为 /home/${username}/.local/flexget3/bin/flexget。cronjob 用法示例:

crontab -e -u ${username}
添加以下内容(每分钟运行示例):
# min hour  day month week    command
  */1 *     *   *     *       /home/${username}/.local/flexget3/bin/flexget -c /home/${username}/.config/flexget/config.yml --cron execute

更多用法请查询官方文档

如何使用 autoremove-torrents?

在安装完 autoremove-torrents 后,你会在 /home/${username}/.config/autoremovetorrents 中找到一个示例配置文件 config.yml, 其中记录着几个最基本的使用方法。详细的配置方法参见官方文档。你可以直接以下列方式运行:

/home/${username}/.local/autoremovetorrents/bin/autoremove-torrents -c /home/${username}/.config/autoremovetorrents/config.yml -l /home/${username}/.config/autoremovetorrents/logs

如果使用 cronjob 则可以如下使用:

crontab -e -u ${username}
添加以下内容(每小时整点运行一次):
# min hour  day month week    command
  0   *     *   *     *       /home/${username}/.local/autoremovetorrents/bin/autoremove-torrents -c /home/${username}/.config/autoremovetorrents/config.yml -l /home/${username}/.config/autoremovetorrents/logs
如何添加一个 Cloudflare CDN?

首先你需要通过网上的教程搞定域名,cloudflare 账号。然后为你的服务器添加一个新的 A 记录解析,Proxy status 选择为 Proxied 此时若访问该域名,可能会遇到多次重定向问题。你有以下两种解决方法

  • 修改 Nginx 如下:
domain=YOUR DOMAIN
sock='php7.4-fpm'
cat > /etc/nginx/sites-enabled/default <<NGC
server {
    listen 80 default_server;
    listen [::]:80 default_server;
    server_name ${domain};

    location /.well-known {
      alias /srv/.well-known;
      allow all;
      default_type "text/plain";
      autoindex    on;
    }

    client_max_body_size 40M;
    server_tokens off;
    root /srv/;

    index index.html index.php index.htm;

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/$sock.sock;
        fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
    }

    include /etc/nginx/apps/*;

    location ~ /\.ht {
        deny all;
    }

    location /fancyindex {

    }
}

# SSL configuration
server {
    listen 443 ssl http2 default_server;
    listen [::]:443 ssl http2 default_server;
    server_name ${domain};
    ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
    ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
    include snippets/ssl-params.conf;
    client_max_body_size 40M;
    server_tokens off;
    root /srv/;

    index index.html index.php index.htm;

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/$sock.sock;
        fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
    }

    include /etc/nginx/apps/*;

    location ~ /\.ht {
        deny all;
    }

    location /fancyindex {

    }
}
NGC
nginx -s reload

清除浏览器缓存后,通常问题可以解决。为了安全,你可以打开 Cloudflare 控制面板中 SSL/TLS -> Always Use HTTPS。

  • 修改 Cloudflare 设置

该问题将会出现在 SSL/TLS encryption mode is Flexible,该状态下 Cloudflare 强制访问服务器 80 端口,但会被重定向,导致死循环,因此你也可以将 SSL/TLS encryption mode 修改为 Full。

在哪里可以找到应用安装日志?

QuickBox Lite 将默认的应用安装日志存储于 /srv/dashboard/db/output.log 文件中,你可以在新建的 SSH 会话中使用 tail -f /srv/dashboard/db/output.log 来获取安装的实时输出信息。

如何使用代理安装 QuickBox?

由于软件的安装源并不总是有靠谱的 CDN,因此你可能会需要使用代理对安装源进行加速,下面是一种典型的解决方法(proxychains-ng):

  • 编译安装最新的 proxychains-ng(root权限):

    cd /tmp
    git clone https://github.com/rofl0r/proxychains-ng
    cd proxychains-ng
    ./configure --prefix=/usr --sysconfdir=/etc
    make 
    make install
    make install-config
    
  • 配置 proxychains-ng :

    vim /etc/proxychains.conf
    
    quiet_mode
    proxy_dns
    [ProxyList]
    socks5  127.0.0.1 6666
    http    127.0.0.1 6666
    
  • 在安装软件时启用 proxychains-ng:

    proxychains4 -q bash /etc/QuickBox/setup.sh # for QuickBox installation
    proxychains4 -q box install novnc # for software installation
    
如何升级/降级软件版本?

最简单的办法是运行 box update APP 。目前支持升级的有 File Browser, Flexget, Netdata, qBittorrent, rTorrent, ruTorrent,支持指定版本的有 rTorrent, Deluge, qBittorrent。其中 qBittorrent 和 rTorrent 可以降级版本。

rTorrent 降级示例 0.9.8 -> 0.9.4

box update rtorrent -v 0.9.4

qBittorrent 降级示例 4.2.1 -> 4.1.8 (必须添加 --force 参数才可强制降级)

box update qbittorrent --qb 4.1.8 --force
如何连接 OpenVPN?

你需要先安装一个 OpenVPN 客户端,然后在 QuickBox Dashboard 左侧的 OpenVPN Config 中下载 ovpn.zip 其中包含了一个配置文件,解压后,将配置文件导入 OpenVPN 客户端后即可发起连接。你将会被分配一个 10.8.0.0/24 的 IP 地址。

如何创建新的 OpenVPN 用户?

由于脚本中使用 openvpn-install 脚本安装,因此你需要使用这个脚本对你的 OpenVPN 用户进行管理:

cd /tmp
curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
chmod +x openvpn-install.sh
./openvpn-install.sh

根据 Terminal 中显示的信息,可以自行增减用户。

如何连接 NFS/CIFS?
  • CIFS 默认已经启用加密,且带有基本的账户认证,账户信息同 Dashboard。例如 Windows 环境中,直接在文件管理器的地址栏中输入 \\[你的服务器IP] 就可以访问到你的 Samba 共享。
  • NFS 由于其特性,不适合在公网环境直接使用,请务必确保一个安全的 LAN 环境,或者在安装 OpenVPN 后,通过 OpenVPN 建立安全连接。通过 OpenVPN 连接时,目标 IP 地址为: 10.8.0.1