博客

  • 国际钱包地址

    国际钱包地址;尽量APP官网下载,推荐安卓谷歌商店下载, 苹果手机应用市场下载最安全。https://tron.network/wallet?lng=zh

  • 理财B站推荐

    理财B站推荐直达:

    https://space.bilibili.com/3546878014654781

    请 点赞 收藏 转发。

  • 7×24小时在线直播,分享免费高速稳定节点,扫码快速连接,V2Ray、Shadowsocks、Clash。

    YouTube 搜索 华元 、华元直播 。

    7×24小时在线直播,分享免费高速稳定节点,karing.app 扫码快速连接,V2Ray、Shadowsocks、Clash。

    链接直达 https://www.youtube.com/live/H0inbV05Ju0?si=k2_9TMT8KL1n8u-5

  • 在 Ubuntu 上可以用几个常用命令查看系统运行情况(内存、CPU、硬盘占用等)

    1. 查看内存使用情况

    free -h
    
    • -h 表示人类可读格式(GB、MB等)。

    2. 实时监控 CPU / 内存 / 进程

    top
    

    或更好看的版本:

    htop
    

    htop 需要安装:

    sudo apt install htop
    

    上下箭头可以翻看进程,q 退出。


    3. 查看 CPU 信息

    lscpu
    

    会显示核心数、线程数、频率等。


    4. 查看硬盘分区占用情况

    df -h
    
    • 会显示各个挂载点的总容量、已用、剩余空间。

    5. 查看磁盘文件占用

    du -sh /*
    
    • 按目录统计空间占用情况。

    6. 综合系统资源状态(推荐)

    vmstat 1
    
    • 每 1 秒更新一次 CPU、内存、IO 等使用情况。
  • PS 将照片底色改为黑白打印纸效果

    PS 将照片底色改为黑白打印纸效果

    剪切好 Ctrl+J 滤镜 其它 高反差保留 Ctrl+L 白色吸管  

    • 方法一:使用快速操作:打开照片,在Photoshop界面右上角点击搜索图标,或使用快捷键Ctrl+F,打开“发现”面板。在“发现”面板中,导航到“浏览”>“快速操作”,选择“制作黑白背景”,点击“应用”按钮,即可将图像背景变为黑白。

    • 方法二:使用色阶调整:打开图像后,按Ctrl+L调出色阶面板。选择白色吸管工具,点击照片背景的黑灰色部分,将背景设置为白色。然后拖动色阶中间的灰色滑块,增强对比度,使黑白效果更明显。

    ✅ 第1步:打开照片 → 去色

    菜单:图像 → 调整 → 去色(Shift + Ctrl + U
    👉 照片变成黑白


    ✅ 第2步:用“色阶”调白背景、调黑文字

    菜单:图像 → 调整 → 色阶(Ctrl + L
    右边白色箭头往左拉 → 背景变白
    左边黑色箭头往右拉 → 字变黑
    👉 调到像白纸黑字为止


    ✅ 第3步:保存

    菜单:文件 → 另存为(Shift + Ctrl + S
    👉 选择 JPG 或 PDF,打印就像复印的试卷一样 ✨

  • 结合 SSH 22 + 2222 备用端口 + 临时保护 + 长期守护 + 防火墙 的终极一行命令版本

    ✅ 功能说明

    1. 端口锁定:SSH 默认 22 端口不可被修改。
    2. 防火墙允许:TCP 22 永远允许访问。
    3. 自动回滚:如果 SSH 异常,自动回滚最近备份。
    4. 30 分钟临时保护:从首次执行起的 30 分钟内特别保护,即便软件误改也会自动恢复。
    5. 长期守护:30 分钟后仍保持常规守护,保证长期 SSH 可靠。
    6. 开机自启:systemd 服务保证开机自动运行。

    可直接复制执行的单行命令,包含 30 分钟临时保护 + 长期守护 + 22 端口锁定 + 防火墙允许 + 自动回滚,可以这样:

    sudo bash -c "set +H; mkdir -p /root/ssh_protect_backups && cp /etc/ssh/sshd_config /root/ssh_protect_backups/sshd_config.bak_\$(date +%F_%H%M%S) && chattr +i /etc/ssh/sshd_config && nft add table inet sshprotect 2>/dev/null || true && nft add chain inet sshprotect input '{ type filter hook input priority 0 ; }' 2>/dev/null || true && nft add rule inet sshprotect input tcp dport 22 ct state new,established accept || ufw allow 22/tcp && \
    echo '#!/bin/bash
    BACKUP_DIR=/root/ssh_protect_backups
    LOCK_FILE=/etc/ssh/sshd_config
    if [ ! -f /tmp/ssh_protect_end ]; then date -d \"+30 minutes\" +%s > /tmp/ssh_protect_end; fi
    CURRENT_TIME=\$(date +%s)
    if [ \$CURRENT_TIME -le \$(cat /tmp/ssh_protect_end) ]; then PROTECT_ACTIVE=1; else PROTECT_ACTIVE=0; fi
    if ! ss -tlnp | grep -q \":22.*sshd\"; then echo \"[SSH Monitor] sshd not running or port 22 missing, restoring backup...\"; chattr -i \$LOCK_FILE; cp \$BACKUP_DIR/sshd_config.bak_* \$LOCK_FILE; chattr +i \$LOCK_FILE; systemctl restart sshd; fi' > /usr/local/sbin/ssh_monitor.sh && chmod +x /usr/local/sbin/ssh_monitor.sh && \
    echo '#!/bin/bash
    while true; do
        /usr/local/sbin/ssh_monitor.sh
        sleep 60
    done' > /usr/local/sbin/ssh_monitor_loop.sh && chmod +x /usr/local/sbin/ssh_monitor_loop.sh && \
    echo '[Unit]
    Description=Enhanced SSH Monitor Service
    After=network.target
    [Service]
    Type=simple
    ExecStart=/usr/local/sbin/ssh_monitor_loop.sh
    Restart=always
    RestartSec=30
    [Install]
    WantedBy=multi-user.target' > /etc/systemd/system/ssh-monitor.service && \
    systemctl daemon-reload && systemctl enable --now ssh-monitor.service && systemctl restart sshd && echo '增强版 SSH 保护已启用,22 端口锁定、防火墙允许、30 分钟临时保护窗口+长期守护。'"
  • ubuntu 通过下面几种方式查看系统 重启时间/开机时间:

    你可以通过下面几种方式查看系统 重启时间/开机时间


    1️⃣ 用 uptime 查看开机时间

    uptime -s
    
    • 输出示例:
    2025-09-26 00:45:12
    

    表示系统从这个时间开始运行。


    2️⃣ 用 who -b 查看最后一次重启时间

    who -b
    
    • 输出示例:
    system boot  2025-09-26 00:45
    

    3️⃣ 用 last reboot 查看重启记录

    last reboot
    
    • 会显示所有重启历史记录,最新的在最上面:
    reboot   system boot  6.8.0-1035-oracle  Fri Sep 26 00:45   still running
    reboot   system boot  6.8.0-1035-oracle  Thu Sep 25 15:10 - 15:20  (00:10)
    

    ✅ 建议

    • 如果只关心 最近一次开机/重启时间,用:
    uptime -s
    

    最简单明了。

  • ubuntu 默认的ssh 22 端口 ,写命令不让任何软件改写 ssh 22端口 再添加一个 ssh 2222 备用端口 ,任何时候防火墙允许 ssh 22 和 2222

    保持默认 SSH 22 端口不变,并且锁死不让任何软件篡改。

    额外开放一个 2222 备用端口(你手动指定的)。

    防火墙永久允许 22 和 2222

    最高权限(root 下)写命令

    要求精简、按步执行地整理好了:
    目标是 保持 SSH 默认端口 22 不变并上锁(不可被软件改写) + 同时添加备用端口 2222 并始终允许 22 与 2222 的外部连接。你现在已经是 rootsudo -i),按顺序在同一会话里一步步执行即可。执行过程中请不要断开当前 SSH 会话,每做完关键一步在新终端测试连接。


    1) 进入 root(如果尚未)

    sudo -i

    2) 备份当前 ssh 配置

    mkdir -p /root/ssh_protect_backups
    cp -a /etc/ssh/sshd_config /root/ssh_protect_backups/sshd_config.bak.$(date +%F_%T)
    echo "backup saved to /root/ssh_protect_backups/"

    3) 确保同时启用端口 22 与 2222(不改 22 的含义,只在配置里显式加入 2222

    # 只在不存在时追加,不会删除其它内容
    grep -q '^Port 22' /etc/ssh/sshd_config || echo 'Port 22' >> /etc/ssh/sshd_config
    grep -q '^Port 2222' /etc/ssh/sshd_config || echo 'Port 2222' >> /etc/ssh/sshd_config
    
    # 语法检查(必须通过)
    sshd -t || { echo "sshd 配置语法错误,请检查 /etc/ssh/sshd_config"; exit 1; }
    
    # 重启 SSH 服务(当前会话不要断开)
    systemctl restart ssh
    

    4) 验证 SSH 在 22 和 2222 都在监听(新开一个终端测试连接)

    (在本机检查)

    ss -tlnp | egrep ‘:(22|2222)\s’
    # 远程测试(在另一台机器或新终端执行)
    # ssh -p 22 ubuntu@223.5.5.5 -o ConnectTimeout=8
    # ssh -p 2222 ubuntu@233.5.5.5 -o ConnectTimeout=8

    第5到第9步按最简明、可复制的顺序列好。
    每个步骤下我都放了立刻执行的命令简单的验证命令。请在当前 SSH 会话不要断开,在另一个终端/另一台机器做远程测试。按顺序逐条执行,出现任何报错把错误输出贴回来我帮你看。


    第 5 步 — 安装工具、备份并把关键文件上锁(+i

    目的:备份并把 /etc/ssh/sshd_configsshd 二进制上不可变标记,防止被改写。

    # 进入 root(如果已是 root 可略过)
    sudo -i

    # 创建备份目录
    mkdir -p /root/ssh_protect_backups

    # 安装 chattr 所需包
    apt update
    apt install -y e2fsprogs

    # 备份 sshd_config 与 nftables(如果存在)
    cp -a /etc/ssh/sshd_config /root/ssh_protect_backups/sshd_config.bak.$(date +%F_%T)
    [ -f /etc/nftables.conf ] && cp -a /etc/nftables.conf /root/ssh_protect_backups/nftables.conf.bak.$(date +%F_%T) || true

    # 确认 sshd 二进制路径并上锁
    SSHD_BIN=$(command -v sshd 2>/dev/null || echo /usr/sbin/sshd)
    echo “sshd binary: $SSHD_BIN”
    chattr +i /etc/ssh/sshd_config
    chattr +i “$SSHD_BIN”

    # 验证 immutable 标记
    lsattr /etc/ssh/sshd_config
    lsattr “$SSHD_BIN”

    验证(在本机)

    lsattr /etc/ssh/sshd_config
    lsattr $(command -v sshd || echo /usr/sbin/sshd)
    

    第 6 步 — 确保防火墙始终允许 222222(使用 nftables,如果系统没有再回退 iptables)

    目的:永远允许22和2222,其他端口“保持默认”。

    # 安装并启用 nftables(如果尚未)
    apt install -y nftables
    systemctl enable –now nftables

    # 备份当前运行时 ruleset
    nft list ruleset > /root/ssh_protect_backups/ruleset.before.$(date +%F_%T).conf || true

    # 添加允许 22 和 2222(增量,不删除其它规则)
    # 如果已经存在包含这两个端口的规则则不会重复添加
    if nft list ruleset | grep -q ‘tcp dport { 22, 2222 }’ 2>/dev/null; then
      echo “nft rule for 22/2222 already present”
    else
      # try to add to inet filter input; create table/chain if missing
      nft ‘add table inet filter’ 2>/dev/null || true
      nft ‘add chain inet filter input { type filter hook input priority 0 ; policy accept ; }’ 2>/dev/null || true
      nft add rule inet filter input tcp dport { 22, 2222 } ct state new accept
      echo “Added nft rule to accept tcp dport {22,2222}”
    fi

    # Persist current ruleset to file
    nft list ruleset > /etc/nftables.conf

    # 查看规则
    nft list ruleset | sed -n ‘1,200p’

    验证(在本机)

    nft list ruleset
    ss -tlnp | egrep ':(22|2222)\b' || ss -tlnp | grep sshd
    

    (如果系统不使用 nftables 而你更喜欢 iptables,请告诉我,我会给 iptables 版本的命令。)

    第 7 步 — 创建回滚检查脚本与辅助脚本(放到 /usr/local/sbin/

    目的:若你在验证阶段无法连上,自动回滚到之前状态(解除 immutable、还原配置、防火墙)。同时提供取消回滚与手动解锁/上锁脚本。

    把下面整块一次粘贴运行(会创建四个脚本):

    # 1) rollback 检查脚本
    cat > /usr/local/sbin/ssh_check_and_rollback.sh <<'EOF'
    #!/usr/bin/env bash
    set -euo pipefail
    
    PENDING_FILE=/root/ssh_protect_pending
    BACKUP_DIR=/root/ssh_protect_backups
    SSHD_BIN=$(command -v sshd 2>/dev/null || echo /usr/sbin/sshd)
    LOG=/root/ssh_protect_backups/rollback.log
    
    # 如果没有 pending 标记就退出
    [ -f "$PENDING_FILE" ] || exit 0
    
    echo "[$(date)] rollback-check running..." >> "$LOG"
    
    # 检查是否有远端 SSH 已建立连接(非 loopback)
    if ss -tn state established | grep -E ':(22|2222)\s' | grep -Ev '127\.0\.0\.1|\[::1\]' >/dev/null 2>&1 \
       || who | grep -q '('; then
      echo "[$(date)] SSH connection detected — cancelling rollback." >> "$LOG"
      rm -f "$PENDING_FILE"
      exit 0
    fi
    
    echo "[$(date)] No SSH detected — performing rollback." >> "$LOG"
    
    # restore nftables if backup exists
    NFT_BAK=$(ls -1t "$BACKUP_DIR"/nftables.conf.bak.* 2>/dev/null | head -n1 || true)
    if [ -n "$NFT_BAK" ]; then
      cp -a "$NFT_BAK" /etc/nftables.conf || true
      systemctl restart nftables || nft -f /etc/nftables.conf || true
      echo "[$(date)] nftables restored from $NFT_BAK" >> "$LOG"
    else
      echo "[$(date)] no nftables backup found" >> "$LOG"
    fi
    
    # remove immutable flags
    [ -f /etc/ssh/sshd_config ] && chattr -i /etc/ssh/sshd_config || true
    [ -f "$SSHD_BIN" ] && chattr -i "$SSHD_BIN" || true
    echo "[$(date)] immutable flags removed from ssh files" >> "$LOG"
    
    # restore sshd_config from latest backup if exists
    SSHD_BAK=$(ls -1t "$BACKUP_DIR"/sshd_config.bak.* 2>/dev/null | head -n1 || true)
    if [ -n "$SSHD_BAK" ]; then
      cp -a "$SSHD_BAK" /etc/ssh/sshd_config || true
      echo "[$(date)] sshd_config restored from $SSHD_BAK" >> "$LOG"
    fi
    
    # restart ssh
    systemctl restart ssh || systemctl restart sshd || true
    echo "[$(date)] ssh restarted" >> "$LOG"
    
    # cleanup pending marker
    rm -f "$PENDING_FILE"
    
    echo "[$(date)] rollback complete" >> "$LOG"
    EOF
    chmod 700 /usr/local/sbin/ssh_check_and_rollback.sh
    
    # 2) 取消回滚脚本
    cat > /usr/local/sbin/ssh_cancel_rollback.sh <<'EOF'
    #!/usr/bin/env bash
    rm -f /root/ssh_protect_pending
    echo "Pending rollback cancelled."
    EOF
    chmod 700 /usr/local/sbin/ssh_cancel_rollback.sh
    
    # 3) 解锁脚本(maintenance)
    cat > /usr/local/sbin/ssh_unlock_for_maintenance.sh <<'EOF'
    #!/usr/bin/env bash
    [ -f /etc/ssh/sshd_config ] && chattr -i /etc/ssh/sshd_config
    SSHD_BIN=$(command -v sshd 2>/dev/null || echo /usr/sbin/sshd)
    [ -f "$SSHD_BIN" ] && chattr -i "$SSHD_BIN"
    echo "ssh files unlocked."
    EOF
    chmod 700 /usr/local/sbin/ssh_unlock_for_maintenance.sh
    
    # 4) 重新上锁脚本
    cat > /usr/local/sbin/ssh_lock_protect.sh <<'EOF'
    #!/usr/bin/env bash
    [ -f /etc/ssh/sshd_config ] && chattr +i /etc/ssh/sshd_config
    SSHD_BIN=$(command -v sshd 2>/dev/null || echo /usr/sbin/sshd)
    [ -f "$SSHD_BIN" ] && chattr +i "$SSHD_BIN"
    echo "ssh files re-locked."
    EOF
    chmod 700 /usr/local/sbin/ssh_lock_protect.sh
    
    echo "Scripts created: /usr/local/sbin/ssh_check_and_rollback.sh , ssh_cancel_rollback.sh , ssh_unlock_for_maintenance.sh , ssh_lock_protect.sh"
    
    

    第 8 步 — 启动“自动回滚计时器” (创建 pending 并安排检查)

    说明:下面默认等待 120 秒 后运行回滚检查脚本(系统会检查在这段时间内是否有远端 SSH 连接)。如果你在另一台机器成功登录,请立即运行取消脚本来取消回滚。

    # 在 root 下创建 pending 标记
    touch /root/ssh_protect_pending
    echo “Pending created: /root/ssh_protect_pending”

    # 安排在 120 秒后运行检查脚本(systemd-run 或备用 nohup)
    if command -v systemd-run >/dev/null 2>&1; then
      systemd-run –unit=ssh-protect-rollout –on-active=120 /usr/local/sbin/ssh_check_and_rollback.sh
      echo “Scheduled rollback-check in ~120s via systemd-run.”
    else
      nohup bash -c ‘sleep 120; /usr/local/sbin/ssh_check_and_rollback.sh’ >/dev/null 2>&1 &
      echo “Scheduled rollback-check via background sleep for ~120s.”
    fi

    第 9 步 — 验证与取消回滚(必须在另一台机器/新终端测试)

    1. 在服务器上(同一会话)检查监听

    ss -tlnp | egrep ':(22|2222)\b' || ss -tlnp | grep sshd
    

     2. 在另一台机器/新终端测试远程连接(务必从另一台执行):

    ssh -p 22 ubuntu@233.5.5.5 -o ConnectTimeout=8
    ssh -p 2222 ubuntu@233.5.5.5 -o ConnectTimeout=8
    

    3.  如果远程测试成功,取消自动回滚(在服务器上执行):

    /usr/local/sbin/ssh_cancel_rollback.sh
    
    4. 如果需要查看回滚日志或回滚结果
    tail -n 200 /root/ssh_protect_backups/rollback.log
    # 若回滚已经执行,配置会被还原,immutable 会被移除
    

    5. 手工触发回滚(如果你通过控制台进入并需要立即回退)

    /usr/local/sbin/ssh_check_and_rollback.sh
    

    小提示与注意事项(再提醒)

    120 秒是默认值;如果你想改成 180 或 300 秒,把第8步 --on-active=120 的数字改成你需要的秒数(在你运行那条命令前修改)。

    绝对不要断开当前 SSH 会话,直到你在另一台机器验证连接成功或已取消回滚。

    chattr +i 会阻止 openssh-server 升级写入这些文件。将来需升级或改配置时先运行 /usr/local/sbin/ssh_unlock_for_maintenance.sh,改完再 /usr/local/sbin/ssh_lock_protect.sh

  • Ubuntu 用户名为 111,OpenVPN 生成了 .ovpn 配置文件,复制并下载。

    但因为你用的是普通用户 111,默认是 不能访问 /root/ 目录 的,所以你需要先复制配置文件到你有权限的目录,然后才能下载。

    ✅ 一次性命令(复制 + 修改权限)

    请先用 SSH 登录你的服务器,然后执行这两条命令:

    sudo cp /root/client1.ovpn /home/111/

    sudo chown 111:111 /home/111/client1.ovpn

    说明:

    client1.ovpn 替换为你生成的配置文件名

    /home/111/ 是你用户目录

    第二行把文件“归你所有”,否则 WinSCP 中仍无法访问

    ✅ 然后使用 WinSCP 下载文件

    打开 WinSCP

    配置连接:

    协议:SFTP(或 SCP)

    主机名:你的服务器 IP 地址

    用户名:111

    密码:你的登录密码

    登录后进入目录 /home/111/

    找到并下载 client1.ovpn

    ✅ 下载完成后(可选清理)

    如果你希望清理掉复制的文件,登录服务器后执行:rm /home/111/client1.ovpn

    rm /home/111/client1.ovpn  

    =================================================================

    搭建的远程ubantu服务器用户名是111 安装了openvpn服务端了生成了 配置文件在root文件夹里面,后面我只想下载openvpn 配置文件 ?

    你当前情况如下:

    远程 Ubuntu 服务器已搭建好 OpenVPN 服务端

    生成的 .ovpn 配置文件在 /root 目录

    你登录服务器使用的用户名是 111(不是 root)

    你现在 只想下载这个 .ovpn 文件到本地电脑使用

    ✅ 问题

    你用的是普通用户 111,默认是无法直接访问 /root 目录的,因为那是 root 用户的私有目录。

    ✅ 正确下载方法(2 步)

    第一步:先把文件从 /root 拷贝出来(登录服务器执行)

    sudo cp /root/client1.ovpn /home/111/

    sudo chown 111:111 /home/111/client1.ovpn

    解释:

    cp 把 /root/client1.ovpn 复制到 /home/111/ 目录

    chown 修改文件拥有者为用户 111,确保你能读写

    ———————————————————–

    sudo cp /root/client.ovpn /home/ubuntu/

    sudo chown ubuntu:ubuntu /home/ubuntu/client.ovpn

    ————————————————————-

    第二步:从本地电脑下载 .ovpn 文件

    在你本地电脑终端中执行以下命令(以 scp 为例):

    scp 111@your-server-ip:/home/111/client1.ovpn ~/Downloads/

    说明:

    your-server-ip 替换成你服务器的公网 IP

    ~/Downloads/ 是保存位置,可以改成你喜欢的路径

    ✅ 示例完整流程:

    登录服务器:ssh 111@123.123.123.123

    然后在服务器上执行:sudo cp /root/client1.ovpn /home/111/

                                        sudo chown 111:111 /home/111/client1.ovpn

    本地电脑执行下载:scp 111@123.123.123.123:/home/111/client1.ovpn ~/Downloads/

    这就是最安全、最常见的下载 OpenVPN 配置文件的方式。

  • Linux系统中 一键安装VPN 命令

    在Linux系统中,有一些脚本可以实现一键安装VPN的功能。以下是两种常用的脚本:

    Pritunl

    Pritunl是一种开源的VPN解决方案,可以提供安全的远程访问和跨平台的VPN连接。Pritunl的一键安装脚本可以在Ubuntu、Debian和CentOS等Linux系统上安装Pritunl服务,并自动配置和启动OpenVPN服务。

    要使用Pritunl的一键安装脚本,请运行以下命令:

    sudo sh -c “$(curl -fsSL https://raw.githubusercontent.com/pritunl/pritunl/master/hacks/install_or_upgrade.sh)”

    OpenVPN-Install

    OpenVPN-Install是一种自动化安装OpenVPN服务器的脚本,可以在Ubuntu、Debian和CentOS等Linux系统上安装OpenVPN服务,并自动配置和启动OpenVPN服务。

    要使用OpenVPN-Install的一键安装脚本,请运行以下命令:

    wget https://git.io/vpn -O openvpn-install.sh && sudo bash openvpn-install.sh

    这些脚本可以帮助你快速安装和配置VPN服务,让你的Linux系统更加安全和便利。

    ———————————————————————————————————————————————————— 

    安装OpenVPN服务

    在Linux系统上,可以使用apt-get或yum等包管理器安装OpenVPN服务。例如,在Ubuntu系统上,可以使用以下命令安装:

    sudo apt-get install openvpn

    启动OpenVPN服务

    启动OpenVPN服务可以使用以下命令:

    sudo systemctl start openvpn

    设置开机启动OpenVPN服务

    要设置OpenVPN服务在系统启动时自动启动,可以使用以下命令:

    sudo systemctl enable openvpn

    这样,每次系统启动时,OpenVPN服务都会自动启动。

    要查询OpenVPN服务是否已经启动,可以使用以下命令:sudo systemctl status openvpn 如果OpenVPN服务已经启动,命令的输出会显示服务的状态、运行时间、进程ID等信息。如果OpenVPN服务没有启动,命令的输出会显示服务状态为“inactive”或“dead”。

    以下是Linux系统中使用OpenVPN时常用的命令:

    1. 启动OpenVPN服务

    sudo systemctl start openvpn

    1. 停止OpenVPN服务

    sudo systemctl stop openvpn

    1. 重启OpenVPN服务

    sudo systemctl restart openvpn

    1. 查询OpenVPN服务状态

    sudo systemctl status openvpn

    1. 生成OpenVPN客户端配置文件

    sudo openvpn --config /path/to/client.ovpn

    1. 生成OpenVPN服务器配置文件

    sudo openvpn --genkey --secret /path/to/secret.key

    1. 导入OpenVPN客户端配置文件

    sudo openvpn --config /path/to/client.ovpn

    1. 启动OpenVPN客户端

    sudo openvpn --config /path/to/client.ovpn

    1. 启动OpenVPN服务器

    sudo openvpn --config /path/to/server.conf 这些命令可以帮助你启动、停止、重启和查询OpenVPN服务的状态,以及生成和导入OpenVPN客户端和服务器配置文件。
    ———————————————————————————————————————————————————————

    在Linux系统中,有一些脚本可以实现一键安装VPN的功能。以下是两种常用的脚本:

    1. Pritunl

    Pritunl是一种开源的VPN解决方案,可以提供安全的远程访问和跨平台的VPN连接。Pritunl的一键安装脚本可以在Ubuntu、Debian和CentOS等Linux系统上安装Pritunl服务,并自动配置和启动OpenVPN服务。

    要使用Pritunl的一键安装脚本,请运行以下命令:sudo sh -c "$(curl -fsSL https://raw.githubusercontent.com/pritunl/pritunl/master/hacks/install_or_upgrade.sh)"

    1. OpenVPN-Install

    OpenVPN-Install是一种自动化安装OpenVPN服务器的脚本,可以在Ubuntu、Debian和CentOS等Linux系统上安装OpenVPN服务,并自动配置和启动OpenVPN服务。

    要使用OpenVPN-Install的一键安装脚本,请运行以下命令:wget https://git.io/vpn -O openvpn-install.sh && sudo bash openvpn-install.sh 

    这些脚本可以帮助你快速安装和配置VPN服务,让你的Linux系统更加安全和便利。