春有百花秋有月

春有百花秋有月

夏有凉风冬有雪

acme网站证书更新

/root/.acme.sh/acme.sh  --upgrade
  • 2.使用acme.sh更新服务器本地所有SSL证书
    /root/.acme.sh/acme.sh  --renew-all

    如果你的服务器有多个网站的SSL证书,而你只想更新其中一个网站的SSL证书,可以使用“-d 域名”参数,例如

    /root/.acme.sh/acme.sh  --renew -d domain
  • 二、自动更新

    • 1.编写自动更新脚本,将更新后的证书替换nginx中使用的证书

        #!/bin/bash
      
        # 定义变量
        ACME_HOME="/root/.acme.sh"
        CERT_TARGET_DIR="/etc/nginx/ssl"
        NGINX_SERVICE="nginx"
      
        # 停 Nginx
        echo "Stoping Nginx service..."
        systemctl stop "${NGINX_SERVICE}"
      
        # 更新所有证书
        echo "Updating all certificates..."
        "${ACME_HOME}/acme.sh" --cron --home "${ACME_HOME}"
      
        if [ $? -eq 0 ]; then
          echo "Certificates updated successfully. Processing each domain..."
      
          # 遍历所有域名目录
          for domain_dir in "${ACME_HOME}"/*_ecc; do
            if [ -d "${domain_dir}" ]; then
              # 获取域名
              domain_name=$(basename "${domain_dir}" | sed 's/_ecc$//')
      
              # 检查证书和密钥是否存在
              cert_file="${domain_dir}/fullchain.cer"
              key_file="${domain_dir}/${domain_name}.key"
      
              if [ -f "${cert_file}" ] && [ -f "${key_file}" ]; then
                # 确保目标目录存在
                target_dir="${CERT_TARGET_DIR}/${domain_name}"
                mkdir -p "${target_dir}"
      
                # 拷贝证书和密钥
                cp "${cert_file}" "${target_dir}/fullchain.cer"
                cp "${key_file}" "${target_dir}/${domain_name}.key"
      
                echo "Certificates for ${domain_name} copied to ${target_dir}."
              else
                echo "Certificate or key file missing for ${domain_name}. Skipping."
              fi
            fi
          done
      
          # 重启 Nginx
          echo "Restarting Nginx service..."
          systemctl restart "${NGINX_SERVICE}"
      
          if [ $? -eq 0 ]; then
            echo "Nginx restarted successfully. Certificates are now active."
          else
            echo "Failed to restart Nginx. Please check the configuration."
          fi
        else
          echo "Failed to update certificates. Check acme.sh logs for details."
        fi
    • 2.手动执行测试

      阅读剩余部分 →

    修改系统配置和v2ray配置支持fast-open和udp-relay

    查看系统是否支持fast-open

      sysctl net.ipv4.tcp_fastopen
  • 备份配置文件

      cp /etc/sysctl.conf /etc/sysctl.conf.bak
      vi /etc/sysctl.conf
  • 新增支持fastopen conf

      net.ipv4.tcp_fastopen = 3
  • 应用设置

      sysctl -p

    2.修改v2ray支持fastopen

      vi /etc/v2ray/config.json
  • 修改进站支持udp

      {
        "port": ****,
        "protocol": "dokodemo-door",
        "settings": {
          "address": "0.0.0.0",          // 捕获所有地址的 UDP 流量
          "port": 0,                     // 捕获所有端口的 UDP 流量
          "network": "udp",              // 指定网络类型为 UDP
          "timeout": 0,                  // 超时时间,0 表示不超时
          "followRedirect": true         // 允许重定向
        }
      }
  • 修改出站支持fastopen

    阅读剩余部分 →
  • debian&ubuntu info

    1.修改nginx欢迎页,一般默认路径为/usr/share/nginx/html/index.html

    by:onedrive/myser/index.html

    2.通过nginx代理静态文件,使用python上传文件:

    by:onedrive/myser/upload_service.py

    3.v2ray info

    by:onedrive/myser/v2ray/*

    阅读剩余部分 →

    mac下mysql8.0重置root密码

    1.进入安全模式

    cd /usr/local/mysql/bin
  • 获取权限,输入: sudo su 点击回车,输入电脑开机密码,点击回车;(此时输入的密码终端是看不到的,根据记忆输入即可);
    sudo su
  • 进入安全模式,输入:
    ./mysqld_safe --skip-grant-tables & 
  • **2.

    再次启动一个新的终端(之前那个放着不动)**

    mysql
  • 终端输入:
    use mysql
  • 设置root账户为空密码,终端内输入:
    UPDATE user SET authentication_string='' where user='root';
  • 刷新权限:
    flush privileges; 
  • 退出 exit 。
  • 3.设置新密码

    mysql -uroot -p 
  • 进入mysql数据库,输入:
    use mysql 
  • 设置新密码,输入
    alter user 'root'@'localhost' identified by '你期望的新密码'; 
  • 刷新权限,输入:
    flush privileges; 
  • 提示 Query OK, 搞定!
  • 退出 exit .
  • 4.新密码测试

    mysql -uroot -p
  • 输入刚才重置的新密码,显示Welcom to the MySQL…。
  • 5.重启 MySQL 服务

    阅读剩余部分 →

    Oracle cloud申请与R探长抢实例---后续

    脚本一直抢不到,在tg群中得知,需要等待放水,昨天账号升级成功,收到oracle官方邮件后,脚本自动抢机成功

    上周升级账号失败,这周重试,唯一区别就是本周使用chrome的无痕模式升的级,其它一切不变,卡使用的是申请时候的实体卡,这周升级一次成功提交申请,上午申请下午4点左右收到官方升级成功的邮件通知。

    mark一下。

    阅读剩余部分 →

    Oracle cloud申请与R探长抢实例

    近期成功申请到了Oracle cloud的账号,简单总结一下相关信息。

    号与永久免费使用的说明**

    Out of capacity for shape VM.Standard.E2.1.Micro in availability domain AD-1. Create the instance in a different availability domain or try again later. If you specified a fault domain, try creating the instance without specifying a fault domain. If that doesn’t work, please try again later. Learn more about host capacity.

    听说最近(2024年11月14日)只有孟买可以手工创建成功,其它区域都比较难,上网找解决方案,试试R探长脚本。

    详情可参考:https://telegra.ph/oracleR-Bot-03-04

    核心步骤

    wget -N "https://raw.githubusercontent.com/jin-gubang/public/main/oracle_role_apiuser_policy.sh" --no-check-certificate && chmod +x oracle_role_apiuser_policy.sh && bash oracle_role_apiuser_policy.sh

    关于运行语句的内容及安全性,有能力的可以查看GitHub
    https://github.com/jin-gubang/public/blob/main/oracle_role_apiuser_policy.sh
    运行后的效果如下:

    阅读剩余部分 →

    在服务器上安装 v2ray-plugin 插件

    在服务器上安装 v2ray-plugin 插件,具体步骤如下:

    在安装 v2ray-plugin 之前,需要确保服务器上已经安装了 Shadowsocks 以及相关的依赖,如 wget 和 unzip。

    运行以下命令来更新系统并安装依赖:

        sudo apt update
        sudo apt install wget unzip -y
    1. 下载 v2ray-plugin

    https://github.com/shadowsocks/v2ray-plugin/releases

        wget https://github.com/shadowsocks/v2ray-plugin/releases/download/v1.3.2/v2ray-plugin-linux-amd64-v1.3.2.tar.gz
    1. 解压 v2ray-plugin

    下载完成后,使用以下命令解压:

        tar -zxvf v2ray-plugin-linux-amd64-v1.3.2.tar.gz

    解压后会生成一个可执行文件 v2ray-plugin。

    阅读剩余部分 →

    网页正常,app登录自托管bitwarden报错:An error has occurred.

    更新ios到18系统之后,网页正常,app登录自托管bitwarden报错:An error has occurred.

    尝试如下解决方案:

    阅读剩余部分 →

    使用vnstat监控vps的流量并用python脚本定期发送邮件提醒

    在使用 wgcf 创建的 WireGuard VPN 接口的情况下,你可能想要监控的是 VPS 流量而不仅仅是默认的物理网络接口(如 ens5)。WireGuard 通常会创建一个名为 wg0 或类似的虚拟网络接口。如果你想要监控通过这个 VPS 接口的流量,你需要确保 vnStat 也监控这个接口。

    以下是在 Debian 系统上安装 vnStat 并监控 WireGuard 接口的步骤:

    安装 vnStat

    sudo apt-get up
    <!--more-->
    date
    sudo apt-get install vnstat
  • 确认 WireGuard 接口名称
    安装 WireGuard 后,通过以下命令确认创建的 VPN 接口名称:

    wg

    或者

    ifconfig -a

    通常,WireGuard 接口会被命名为 wg0wg1 等。

    初始化 vnStat 数据库
    使用 WireGuard 接口名称(例如 wg0)初始化 vnStat 数据库:

    sudo vnstat -u -i wg0

    如果你还想要监控物理接口(例如 ens5),可以一次性监控多个接口:

    阅读剩余部分 →
  • youtube24小时直播脚本

    youtube 24小时直播脚本

    阅读剩余部分 →

    使用bench.sh查看Linux系统信息、测试网络带宽及硬盘I/O读写速率

    Bench.sh一键测试脚本几乎适用于Linux各种发行版本的测试,bench.sh可以查看Linux系统信息、测试网络带宽及硬盘I/O读写速率。使用方法执行下方命令即可:

      wget https://github.com/teddysun/across/blob/master/bench.sh
  • run:
      chmod +x bench.sh
      wget -qO- bench.sh | bash

    or

    阅读剩余部分 →
  • WARP多功能一键脚本,解锁ChatGPT客户端

    warp多功能一键脚本CFwarp,支持endpoint对端自选IP功能,实时查看当前VPS的IP对ChatGPT与奈飞Netflix的解锁情况

    一键脚本:

        wget -N --no-check-certificate https://gitlab.com/rwkgyg/CFwarp/raw/main/CFwarp.sh && bash CFwarp.sh

    引自:https://github.com/tyyxuhao/warp-yg?tab=readme-ov-file

    阅读剩余部分 →

    Debian 时区修改

    -- 时区列表

        timedatectl list-timezones

    -- 修改系统时区为亚洲/上海

        sudo timedatectl set-timezone Asia/Shanghai

    -- 查看

    阅读剩余部分 →

    Debian系统从su切换到root时报错“su: Authentication failure”

    方法:

        sudo passwd
        Password:你当前的密码
        Enter new UNIX password:这个是 root 的密码
        Retype new UNIX password:重复 root 的密码

    但是输入完当前密码之后报如下错误,我的当前用户是appadmin:

        appadmin is not in the sudoers file. This incident has been reported to the administrator.

    通过终端进入root之后执行如下命令:

        usermod -G sudo appadmin

    再重新执行

    阅读剩余部分 →

    最近将工作日志迁移至Notion,简单的总结一下。

    Notion 是一款功能强大的协作和组织工具,可以用于笔记、项目管理、知识管理等多种用途。以下是一些 Notion 使用技巧的总结:

    页面和数据库:

    嵌入式内容:

    任务管理和日历:

    模板的使用:

    链接和引用:

    页面布局和样式:

    同步和分享:

    阅读剩余部分 →

    github提交报错:OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443

    提交代码到github报错:

    fatal: unable to access 'https://xxx@github.com/xxx.git/': OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443

    执行:

    git config --global --unset http.proxy 
    git config --global http.sslVerify false 
    git config --global --unset https.proxy

    之后,关闭项目,再重新打开,再提交就可以了,期间也有切换内网再切回wifi,不知哪一步起作用了。

    阅读剩余部分 →

    日常问题方案

    支付宝-改美区-搜索pockytshop-注册-搜索app store礼品卡进行购买,亲测可行。

        wget -qO- bench.sh | bash

    3.测试vps线路优劣:

        curl https://raw.githubusercontent.com/zhanghanyun/backtrace/main/install.sh -sSf | sh

    4.直接购GPT PLUS地址:

    https://chat.openai.com/invite/accepted

    https://3.jetbra.in

    https://www.aliyundrive.com/s/BCEQqChRDMM

    运行--->cmd--->执行:

    阅读剩余部分 →

    Activate any Jetbrains IDEA

    Activate any Jetbrains IDEA Please visit the address
    below:https://3.jetbra.in/

    WARNING: plugins that use cloud services (AI Assistant, Copilot, etc) cannot be activated by design. Free alternative to AI services codeium.com

    Eg my vmoptions info:

    --add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
    --add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED
    -javaagent:/Users/zgz/Downloads/soft/jetbra/ja-netfilter.jar=jetbrains

    2024-12-13 更新:

    如果你的新版本IDE使用ja-netfilter之后一会就发现许可无法识别,请在 config-jetbrains\url.conf 中添加:

    [URL]
    PREFIX,https://account.jetbrains.com.cn/lservice/rpc/validateKey.action

    具体原因是一些被识别为CN的用户,会使用新的域名进行验证。 详情见:

    https://zhile.io/2024/09/05/jetbrains-2024-2-region.html

    阅读剩余部分 →

    Linux系统优化脚本

    Linux系统优化脚本,点击下载:vmupgrade_.rar

    阅读剩余部分 →

    近期使用Jakarta mail相关知识点

    当涉及到 Jakarta Mail 时,以下是一些基本知识点的总结,包括一些常见的类和方法。请注意,这只是一个基本的总结,而 Jakarta Mail 的使用可能涉及更多的细节和复杂性。

    这个表格覆盖了 Jakarta Mail 中一些基本的类和概念。请注意,实际的使用可能涉及更多的细节和更复杂的场景,具体取决于您的具体需求和邮件服务器的要求。阅读 Jakarta Mail 的官方文档也是深入了解的好途径。

    举例实例代码,比如查看收件箱的关键代码:

    阅读剩余部分 →