mirror of
https://github.com/Dichgrem/Blog.git
synced 2025-02-23 05:58:36 -05:00
447 lines
22 KiB
HTML
447 lines
22 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
|
||
<head>
|
||
<title>Dich'blog</title>
|
||
|
||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
|
||
<meta name="robots" content="noodp"/>
|
||
|
||
<link rel="stylesheet" href="https://blog.dich.bid/style.css">
|
||
<link rel="stylesheet" href="https://blog.dich.bid/color/blue.css">
|
||
|
||
<link rel="stylesheet" href="https://blog.dich.bid/color/background_dark.css">
|
||
|
||
<link rel="stylesheet" href="https://blog.dich.bid/font-hack-subset.css">
|
||
|
||
<meta name="description" content="">
|
||
|
||
<meta property="og:description" content="">
|
||
<meta property="og:title" content="Dich'blog">
|
||
<meta property="og:type" content="article">
|
||
<meta property="og:url" content="https://blog.dich.bid/about-server-set/">
|
||
|
||
<meta name="twitter:card" content="summary_large_image">
|
||
<meta name="twitter:description" content="">
|
||
<meta name="twitter:title" content="Dich'blog">
|
||
<meta property="twitter:domain" content="blog.dich.bid">
|
||
<meta property="twitter:url" content="https://blog.dich.bid/about-server-set/">
|
||
|
||
<link rel="alternate" type="application/atom+xml" title="Dich'blog Atom Feed" href="https://blog.dich.bid/atom.xml" />
|
||
|
||
|
||
<link rel="icon" type="image/png" href=/dich.webp />
|
||
|
||
</head>
|
||
|
||
<body class="">
|
||
<div class="container">
|
||
|
||
<header class="header">
|
||
<div class="header__inner">
|
||
<div class="header__logo">
|
||
|
||
<a href="https://blog.dich.bid" style="text-decoration: none;">
|
||
<div class="logo">
|
||
|
||
Dich'blog
|
||
|
||
</div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<nav class="menu">
|
||
<ul class="menu__inner">
|
||
<li><a href="https://blog.dich.bid">blog</a></li>
|
||
|
||
<li><a href="https://blog.dich.bid/tags">tags</a></li>
|
||
|
||
<li><a href="https://blog.dich.bid/archive">archive</a></li>
|
||
|
||
<li class="active"><a href="https://blog.dich.bid/about">about me</a></li>
|
||
|
||
<li><a href="https://blog.dich.bid/links">links</a></li>
|
||
|
||
<li><a href="https://blog.dich.bid/search">search</a></li>
|
||
|
||
<li><a href="https://blog.dich.bid/weekly">weekly</a></li>
|
||
|
||
<li><a href="https://github.com/Dichgrem" target="_blank" rel="noopener noreferrer">github</a></li>
|
||
</ul>
|
||
</nav>
|
||
|
||
|
||
|
||
</header>
|
||
|
||
|
||
<div class="content">
|
||
|
||
<div class="post">
|
||
|
||
<h1 class="post-title"><a href="https://blog.dich.bid/about-server-set/">乱七八糟:服务器初始化与安全设置</a></h1>
|
||
<div class="post-meta-inline">
|
||
|
||
<span class="post-date">
|
||
2024-06-12
|
||
</span>
|
||
|
||
</div>
|
||
|
||
|
||
<span class="post-tags-inline">
|
||
:: tags:
|
||
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
|
||
|
||
|
||
<div class="post-content">
|
||
<p>前言 本文记录服务器常用操作步骤。</p>
|
||
<span id="continue-reading"></span><h2 id="doamin">Doamin</h2>
|
||
<p>建站不一定需要服务器、域名和备案。尤其不要买腾讯云,不要买CN域名;备案过程要填很多个人信息,且一周没有解析网站,备案就会自动注销。</p>
|
||
<ul>
|
||
<li>
|
||
<p><strong>cn 域名没有隐私保护(whois protection)</strong>。国内域名注册商说的隐私保护根本是自欺欺人,在它们隐私保护就是在自己的查询服务隐藏注册人信息。但在别的地方是能查到的,在<a href="https://whois.cnnic.cn/">中国互联网络信息中心</a>可以查到每个 cn 域名注册人的姓名和邮箱。</p>
|
||
</li>
|
||
<li>
|
||
<p><strong>注册 cn 域名必须使用真实身份信息</strong>。要是你想用假信息注册来保护隐私,那就太天真了。审核的时候不会通过的。真的不想用自己的信息注册的话,要么以公司名义注册,但公司的法定代表人还是能查到的。要么叫别人注册域名之后给你用,可谁愿意冒这种风险呢。</p>
|
||
</li>
|
||
<li>
|
||
<p><strong>cn 域名无法删除</strong>。如果你觉得 cn 域名暴露了你的隐私,那对不起,这是不能注销的<a href="https://cyrusyip.org/zh-cn/post/2021/05/25/damn-cn-domain/#fn:3">3</a>。你只能修改邮箱地址,然后等到它过期。或者转让给别人,不过感觉把别人推到火坑里不太好啊。</p>
|
||
</li>
|
||
<li>
|
||
<p><strong>cn 域名有被停用的风险</strong>。2008 年,有人以跳水奥运冠军吴敏霞拼音注册了 wuminxia.cn,<a href="https://www.cnbeta.com/articles/tech/62209.htm">结果被中国互联网络信息中心(CNNIC)回收了域名</a>,并转交给国家体育总局。此域名在 2021 年 2 月 28 日被优视科技<a href="https://whois.cnnic.cn/WhoisServlet?queryType=Domain&domain=wuminxia.cn">注册</a>,呵呵。2009 年,牛博网被域名注册商万网停止解析。</p>
|
||
</li>
|
||
</ul>
|
||
<h2 id="vps">VPS</h2>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>apt install curl vim sudo
|
||
</span><span>apt update && apt upgrade -y
|
||
</span><span>apt-get install --fix-missing
|
||
</span></code></pre>
|
||
<h2 id="bbr">BBR</h2>
|
||
<p>查询系统所支持的拥塞控制算法。</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>$ sysctl net.ipv4.tcp_available_congestion_control
|
||
</span><span>net.ipv4.tcp_congestion_control = bbr cubic reno
|
||
</span></code></pre>
|
||
<p>查询正在使用中的拥塞控制算法(Linux 绝大部分系统默认为 Cubic 算法)。</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>$ sysctl net.ipv4.tcp_congestion_control
|
||
</span><span>net.ipv4.tcp_congestion_control = cubic
|
||
</span></code></pre>
|
||
<p>指定拥塞控制算法为 bbr。</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>$ echo net.ipv4.tcp_congestion_control=bbr >> /etc/sysctl.conf && sysctl -p
|
||
</span></code></pre>
|
||
<h2 id="safe">Safe</h2>
|
||
<h3 id="geng-huan-sshduan-kou">更换SSH端口</h3>
|
||
<p>使用root账户或已经有sudo权限的用户登录到系统。</p>
|
||
<p>打开SSH配置文件<code>sshd_config</code>,可以使用文本编辑器如nano或vi。以下是使用nano编辑器的示例:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo vim /etc/ssh/sshd_config
|
||
</span></code></pre>
|
||
<p>在配置文件中找到以下行:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>Port 22
|
||
</span></code></pre>
|
||
<p>这是SSH默认的端口号,你可以将其更改为你想要的任何未被占用的端口号。例如,将端口更改为2222:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>Port 2222
|
||
</span></code></pre>
|
||
<p>保存并关闭文本编辑器。重新启动SSH服务,以应用更改:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo service ssh restart
|
||
</span></code></pre>
|
||
<p>或者,如果你的系统使用systemd,可以使用以下命令:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo systemctl restart ssh
|
||
</span></code></pre>
|
||
<h3 id="an-zhuang-ufw">安装 UFW</h3>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt install ufw
|
||
</span></code></pre>
|
||
<p><strong>如果你在远程位置连接你的服务器,在启用 UFW 防火墙之前,你必须显式允许进来的 SSH 连接。否则,你将永远都无法连接到机器上。</strong></p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo ufw allow 22/tcp
|
||
</span></code></pre>
|
||
<blockquote>
|
||
<p>如果 SSH 运行在非标准端口,你需要将上述命令中的 22 端口替换为对应的 SSH 端口。</p>
|
||
</blockquote>
|
||
<p><strong>放开 1Panel 系统端口。</strong></p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo ufw allow 8090/tcp
|
||
</span></code></pre>
|
||
<blockquote>
|
||
<p>上述命令中的 8090 端口需要替换为安装 1Panel 系统时自定义的端口。</p>
|
||
</blockquote>
|
||
<p><strong>启动 UFW</strong></p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo ufw enable
|
||
</span></code></pre>
|
||
<h3 id="an-zhuang-fail2ban">安装 Fail2ban</h3>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt-get install fail2ban
|
||
</span></code></pre>
|
||
<p><strong>2、Debian 12 及以上的版本需要手动安装 rsyslog</strong></p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt-get install rsyslog
|
||
</span></code></pre>
|
||
<p><strong>3、启动 Fail2ban 服务</strong></p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo systemctl start fail2ban
|
||
</span></code></pre>
|
||
<p><strong>4、开机自启动</strong></p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo systemctl enable fail2ban
|
||
</span></code></pre>
|
||
<p><strong>5、查看 Fail2ban 服务状态。</strong></p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo systemctl status fail2ban
|
||
</span></code></pre>
|
||
<h3 id="ban-ipv6">Ban IPv6</h3>
|
||
<p>手动 禁用 VPS 的 IPv6 命令:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sysctl -w net.ipv6.conf.all.disable_ipv6=1
|
||
</span><span>sysctl -w net.ipv6.conf.default.disable_ipv6=1
|
||
</span></code></pre>
|
||
<p>如果想重启系统也生效, 执行:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>echo 'net.ipv6.conf.all.disable_ipv6=1' >> /etc/sysctl.conf
|
||
</span><span>echo 'net.ipv6.conf.default.disable_ipv6=1' >> /etc/sysctl.conf
|
||
</span></code></pre>
|
||
<p>手动 启用 VPS 的 IPv6 命令:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sysctl -w net.ipv6.conf.all.disable_ipv6=0
|
||
</span><span>sysctl -w net.ipv6.conf.default.disable_ipv6=0
|
||
</span></code></pre>
|
||
<p>重新载入 sysctl 配置</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sysctl --system # reload sysctl
|
||
</span></code></pre>
|
||
<p>如果重载, 还无效果, 可能要 reboot 重启下.
|
||
查看 VPS 的 IPv6 信息</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>ip -6 addr show scope global
|
||
</span><span>
|
||
</span><span>或者 curl ipv6.ip.sb
|
||
</span></code></pre>
|
||
<h3 id="gai-wei-mi-yao-deng-lu">改为密钥登录</h3>
|
||
<ul>
|
||
<li>在本地执行以下命令生成.pub后缀的公钥和无后缀的密钥:</li>
|
||
</ul>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>ssh-keygen
|
||
</span></code></pre>
|
||
<p>注意不同密钥对名称不能相同;同时可以为这两个文件用密码加密;</p>
|
||
<ul>
|
||
<li>
|
||
<p>随后将.pub后缀的公钥中的内容写入服务器的<code>~/.ssh/authorized_keys</code>中;</p>
|
||
</li>
|
||
<li>
|
||
<p>使用以下命令编译服务器的SSH配置:</p>
|
||
</li>
|
||
</ul>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>vim /etc/ssh/sshd_config
|
||
</span></code></pre>
|
||
<p>将其中的该行改为<code>PasswordAuthentication no</code>,保存退出;随后使用</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo systemctl restart sshd
|
||
</span></code></pre>
|
||
<p>重启SSH即可禁用密码登录;</p>
|
||
<ul>
|
||
<li>
|
||
<p>将<strong>PermitRootLogin prohibit-password</strong>改为<strong>prohibit-password</strong>,即可实现仅root用户密钥登录;</p>
|
||
</li>
|
||
<li>
|
||
<p>使用以下命令查看输出,</p>
|
||
</li>
|
||
</ul>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo cat /etc/ssh/sshd_config | grep -E 'PasswordAuthentication|PubkeyAuthentication'
|
||
</span></code></pre>
|
||
<p>如有<strong>PasswordAuthentication no → 禁用密码登录</strong>以及<strong>PubkeyAuthentication yes → 允许密钥登录</strong>则成功。</p>
|
||
<ul>
|
||
<li>
|
||
<p>注意<strong>authorized_keys</strong>的权限为600,如果不是则需要改正:<code>chmod 600 ~/.ssh/authorized_keys</code></p>
|
||
</li>
|
||
<li>
|
||
<p>随后可以在本地尝试登录,命令为<code>ssh -i ~/.ssh/id_xxx -p 端口 用户名@服务器IP</code>,第一次登录会提示服务器公钥的哈希值,需要选Yes。</p>
|
||
</li>
|
||
</ul>
|
||
<h2 id="docker">Docker</h2>
|
||
<ol>
|
||
<li>安装基础工具</li>
|
||
</ol>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt-get update
|
||
</span><span> sudo apt-get install \
|
||
</span><span> apt-transport-https \
|
||
</span><span> ca-certificates \
|
||
</span><span> curl \
|
||
</span><span> gnupg \
|
||
</span><span> lsb-release
|
||
</span></code></pre>
|
||
<ol start="2">
|
||
<li>安装docker的gpg key:</li>
|
||
</ol>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
|
||
</span></code></pre>
|
||
<ol start="3">
|
||
<li>安装docker源</li>
|
||
</ol>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||
</span></code></pre>
|
||
<p>上面命令中的<code>lsb_release -cs</code>返回<code>bullseye</code>,也就是debian11的代号。</p>
|
||
<ol start="4">
|
||
<li>安装docker</li>
|
||
</ol>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>apt-get update
|
||
</span><span>sudo apt-get install docker-ce docker-ce-cli containerd.io
|
||
</span><span>sudo systemctl enable docker
|
||
</span><span>sudo systemctl start docker
|
||
</span></code></pre>
|
||
<p>至此安装完成。</p>
|
||
<p>在debian系的Linux发行版上,docker会开机启动启动。</p>
|
||
<p>如果平时使用非root账户,又不想每次执行docker命令之前都加上sudo,参考docker的<a href="https://link.zhihu.com/?target=https%253A//docs.docker.com/engine/install/linux-postinstall/%2523manage-docker-as-a-non-root-user">文档</a>,可以添加<code>docker</code>组,并将非root账户加入到该组中。下面的命令创建<code>docker</code>组并将当前用户加入<code>docker</code>组,执行完成之后重新登陆生效:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo groupadd docker
|
||
</span><span>sudo usermod -aG docker $USER
|
||
</span></code></pre>
|
||
<h3 id="shi-yong-docker-cun-chu-ku-an-zhuang">使用 Docker 存储库安装</h3>
|
||
<p>我建议使用此方法的主要原因是您可以轻松升级,因为存储库可以轻松更新!</p>
|
||
<p>首先,使用以下命令安装此方法的先决条件:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt update && sudo apt install ca-certificates curl gnupg
|
||
</span></code></pre>
|
||
<p>现在,让我们使用以下命令创建一个目录来存储密钥环:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo install -m 0755 -d /etc/apt/keyrings
|
||
</span></code></pre>
|
||
<p>接下来,使用给定的命令下载 GPG 密钥并将其存储在 <code>/etc/apt/keyrings/etc/apt/keyrings</code> 目录中:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
||
</span></code></pre>
|
||
<p>完成后,使用 chmod 命令更改 docker.gpg 文件的权限:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo chmod a+r /etc/apt/keyrings/docker.gpg
|
||
</span></code></pre>
|
||
<p>最后,使用以下命令为 Docker 设置存储库:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>echo \
|
||
</span><span> "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
|
||
</span><span> "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
|
||
</span><span> sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||
</span></code></pre>
|
||
<p>上述命令中每行末尾的额外 <code>\</code> 只是添加新行的一种方式,以便您可以轻松查看整个命令。就是这样!</p>
|
||
<p>现在,您可以使用以下命令更新存储库索引并安装 Docker:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt update && sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||
</span></code></pre>
|
||
<p>要验证 Docker 安装,您可以安装 hello-world 映像:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo docker run hello-world
|
||
</span></code></pre>
|
||
<p>hello-world docker 镜像很小,仅用于检查 Docker 是否运行正常。</p>
|
||
<h3 id="shi-yong-docker-er-bu-shi-yong-sudo">使用 Docker 而不使用 sudo</h3>
|
||
<p>如果您注意到,在运行 hello-world 映像时,我使用了 sudo。</p>
|
||
<p>这可能不太方便。那么如何将其配置为不必使用 sudo 呢?</p>
|
||
<p>为此,首先使用 groupadd 命令创建一个 docker 组:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo groupadd docker
|
||
</span></code></pre>
|
||
<p>现在,将用户添加到组(docker):</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo usermod -aG docker $USER
|
||
</span></code></pre>
|
||
<p>现在从终端注销并重新登录以使更改生效。</p>
|
||
<blockquote>
|
||
<p>如果您在虚拟机中安装 Docker,需要重新启动才能使您所做的更改生效。</p>
|
||
</blockquote>
|
||
<p>让我们通过运行 hello-world 图像来测试它:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>docker run hello-world
|
||
</span></code></pre>
|
||
<p>正如您所看到的,我无需使用 sudo 即可获得相同的结果。</p>
|
||
<h3 id="xie-zai-docker">卸载 Docker</h3>
|
||
<p>首先,使用以下命令停止 docker 服务:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo systemctl stop docker
|
||
</span></code></pre>
|
||
<p>然后按以下方式使用 apt purge 命令从系统中删除 Docker:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||
</span></code></pre>
|
||
<p>如果您打算进行全新安装或者不想拥有任何以前的数据,那么您可以使用 rm 命令删除 Docker 文件:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo rm -rf /var/lib/docker
|
||
</span></code></pre>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo rm -rf /var/lib/containerd
|
||
</span></code></pre>
|
||
<p>就是这样! Docker 已成功删除。</p>
|
||
<h2 id="zai-arch-linuxshang-an-zhuang-docker">在Arch Linux上安装Docker</h2>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo pacman -S docker
|
||
</span></code></pre>
|
||
<p>安装完成后,需要启动Docker服务,并设置为开机自启:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo systemctl start docker
|
||
</span><span>sudo systemctl enable docker
|
||
</span></code></pre>
|
||
<p>运行以下命令来验证Docker是否正常工作:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo docker run hello-world
|
||
</span></code></pre>
|
||
<p>默认情况下,只有root用户才能运行Docker命令。为了避免每次运行Docker命令时都需要使用sudo,可以将当前用户添加到docker组:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo usermod -aG docker $USER
|
||
</span></code></pre>
|
||
<p>之后,需要注销并重新登录,或者重启系统以使更改生效。</p>
|
||
<p>安装Docker Compose:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>sudo pacman -S docker-compose
|
||
</span></code></pre>
|
||
<h2 id="1panel">1panel</h2>
|
||
<p>执行如下命令一键安装 1Panel:</p>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh
|
||
</span></code></pre>
|
||
<h2 id="ipzheng-shu-shen-qing-bu-shu">IP证书申请部署</h2>
|
||
<ul>
|
||
<li>
|
||
<p>在 <a href="https://zerossl.com/">ZeroSSL</a> 中申请一个90天的证书;</p>
|
||
</li>
|
||
<li>
|
||
<p>然后在VPS上输入以下命令:</p>
|
||
</li>
|
||
</ul>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>mkdir -p ./.well-known/pki-validation
|
||
</span></code></pre>
|
||
<ul>
|
||
<li>
|
||
<p>随后在ZeroSSL中将所给出的类似<strong>B992F08CB46748D02E4C553A4038BC.txt</strong>复制;</p>
|
||
</li>
|
||
<li>
|
||
<p>将从ZeroSSL下载得到的文件打开,复制里面的东西形成以下的格式,然后将这些命令在VPS上面运行;</p>
|
||
</li>
|
||
</ul>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>cat << EOF | sudo tee ./.well-known/pki-validation/B992F08CB46748D02E4C553A4038BC.txt
|
||
</span><span>254563C20918258D661E7D43D6A43A2A258857E191977DD5F740FBB9ABD25279
|
||
</span><span>comodoca.com
|
||
</span><span>ca5792984e3f0a1
|
||
</span><span>EOF
|
||
</span></code></pre>
|
||
<ul>
|
||
<li>开启一个临时HTTP服务器:</li>
|
||
</ul>
|
||
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>python3 -m http.server 80
|
||
</span></code></pre>
|
||
<ul>
|
||
<li>随后即可在ZeroSSL中验证证书并开启SSL。</li>
|
||
</ul>
|
||
|
||
</div>
|
||
|
||
|
||
<div class="pagination">
|
||
<div class="pagination__title">
|
||
<span class="pagination__title-h">Thanks for reading! Read other posts?</span>
|
||
<hr />
|
||
</div>
|
||
<div class="pagination__buttons">
|
||
<span class="button previous">
|
||
<a href="https://blog.dich.bid/about-runer-2/">
|
||
<span class="button__icon">←</span>
|
||
<span class="button__text">乱七八糟:跑步笔记(二)</span>
|
||
</a>
|
||
</span>
|
||
|
||
|
||
<span class="button next">
|
||
<a href="https://blog.dich.bid/awesome-360t7/">
|
||
<span class="button__text">综合工程:360T7刷ImmortalWrt</span>
|
||
<span class="button__icon">→</span>
|
||
</a>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
<footer class="footer">
|
||
<div class="footer__inner">
|
||
<div class="copyright">
|
||
<span>©
|
||
2025
|
||
Dichgrem</span>
|
||
<span class="copyright-theme">
|
||
<span class="copyright-theme-sep">:: </span>
|
||
Theme: <a href="https://github.com/pawroman/zola-theme-terminimal/">Terminimal</a> by pawroman
|
||
</span>
|
||
</div>
|
||
</div>
|
||
</footer>
|
||
|
||
|
||
</div>
|
||
</body>
|
||
|
||
</html> |