我们在创建甲骨文实例时,甲骨文为我们生成了密钥 但是我还是习惯了密码登陆

因为我没办法随时随地在多终端上保留密钥,虽然密钥很安全,但是那很操蛋的

所以我会在创建实例的时候直接开启root登陆 无视密钥,如果你需要这样做 那么往下看
开启root登陆
在创建实例的时候,留意下方的高级设置

点开之后,可以看到启动脚本,我们将配置好的脚本粘贴进去,在机器创建时会配置root登陆

#!/bin/bash
echo root:密码 |sudo chpasswd root
sudo sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config;
sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication yes/g' /etc/ssh/sshd_config;
sudo service sshd restart

修改脚本中的 密码 为你想要设置的

机器创建之后,首次连接会有一次断开

这预示着可以愉快的玩耍了
https://xidcn.com/127.html

使用ssh-keygen生成密钥对
ssh-keygen
注意:当它要求您输入passphrase按下enter键,不要给任何密码。

使用ssh-copy-id将公钥拷贝至远程主机
使用ssh-copy-id命令将公钥拷贝至远程主机

ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.100
注:执行以上操作时会要求你输入远程主机帐户和密码,然后就会自动将公钥拷贝至远程目录。

无需密码连接ssh
现在,你可以不需要密码通过ssh连接到远程主机

ssh [email protected]
https://blog.haogeboke.org/archives/technology/ssh_key

获取 acme.sh
acme.shshell 脚本可自动颁发和续订来自 Let's Encrypt 的免费证书。您可以通过直接从 Web 下载脚本或克隆其 git 项目来获取 acme.sh 脚本。
从网络下载 acme.sh
运行以下两个命令中的任何一个以下载并执行 acme.sh 脚本。
curl https://get.acme.sh | sh -s [email protected]
wget -O - https://get.acme.sh | sh -s [email protected]
安装出现错误,安装crontab与socat
apt install cron socat -y
一旦看到“安装成功!”消息,您都可以关闭终端窗口并再次打开它以验证安装。
若要查看 acme.sh 使用情况信息,请运行下一个命令。
acme.sh -h
您也可以运行以下命令来检查 acme.sh 版本。
acme.sh --version
生成证书
要为单个域生成单个证书,请运行以下命令。

yourdomain.com替换为您注册的域。此外,根据需要将/home/www/yourdomain.com替换为您域的网站根文件夹。
acme.sh --issue -d yourdomain.com -w /var/www/yourdomain.com
对于共享同一网站根文件夹的多个域/子域,您可以运行下一个命令来颁发证书。
acme.sh --issue -d yourdomain.com -d www.yourdomain.com -d subdomain.yourdomain.com -w /var/www/yourdomain.com
生成的证书将存储在 ~/.acme.sh/yourdomain.com 中

使用 acme 在 NGINX 上安装证书

通过 acme.sh 脚本生成证书后,下一步是将其安装在NGINX上。首先,创建一个文件夹,将生成的证书复制到该文件夹。
sudo mkdir -p /etc/nginx/certs/yourdomain.com
运行下一个命令以安装证书。不要忘记将yourdomain.com替换为您注册的域。
acme.sh --install-cert -d yourdomain.com --key-file /etc/nginx/certs/yourdomain.com/key.pem --fullchain-file /etc/nginx/certs/yourdomain.com/cert.pem --reloadcmd "service nginx force-reload"
更新 NGINX 服务器块文件
最后一步是更新域的服务器块文件以包含与 SSL 相关的指令。
运行以下命令以编辑服务器块文件。
sudo nano /etc/nginx/sites-available/yourdomain.com
接下来,添加以下行。

listen [::]:443 ssl ipv6only=on;
listen 443 ssl;
ssl_certificate /etc/nginx/certs/cloudindevs.com/cert.pem;
ssl_certificate_key /etc/nginx/certs/cloudindevs.com/key.pem;

保存更改并关闭文件。
更新 NGINX 服务器块文件以使用 SSL
使用以下命令重新启动 NGINX:

sudo systemctl restart nginx
在浏览器中访问您的网站,以确认现在已启用安全通信。

证书续订
Let's Encrypt颁发的证书将每60天自动续订一次。

但是,如果您愿意,也可以手动续订证书。运行以下命令。

acme.sh --renew -d yourdomain.com --force
若要停止证书续订,请运行以下命令。

acme.sh --remove -d yourdomain.com
升级 acme.sh
建议始终使用最新版本的 acme.sh。运行以下命令以确保自动更新 acme.sh。

acme.sh --upgrade --auto-upgrade
若要禁用 acme.sh 的自动升级,请运行下一个命令。

acme.sh --upgrade --auto-upgrade 0
如果您不希望 acme.sh 自动升级,请使用以下命令手动更新它。

acme.sh --upgrade
结论
在本指南中,我们描述了使用 Ubuntu 上的 acme.sh shell 脚本从 Let's Encrypt 获取和续订免费 SSL/TLS 证书的步骤。此方法是使用 Certbot 工具的替代方法。我们想听听您使用这些工具的经验。

Typecho的评论默认使用的是Gravata头像,每次页面打开总是卡在gravatar.com的链接
修改代码来替换Gravatar头像地址方法

修改方法
具体方式为在config.inc.php最后面加入

define('__TYPECHO_GRAVATAR_PREFIX__', 'https://gravatar.loli.net/avatar/');

目前可用Gravatar国内镜像


Loli源:https://gravatar.loli.net/avatar/
极客族:https://sdn.geekzu.org/avatar/

强列推荐? Cravatar

集合三种头像模式
Cravatar--Gravatar--QQ
将以下代码加到站点根目录的 config.inc.php 中即可:

/**
 * 替换Gravatar头像为Cravatar头像
 *
 * Cravatar是Gravatar在中国的完美替代方案,你可以在https://cravatar.cn更新你的头像
 */
define('__TYPECHO_GRAVATAR_PREFIX__', 'https://cravatar.cn/avatar/');

新买的vps服务器,有一部分商家会提前预装apache2,要用nginx的,把它卸载掉。

apt-get --purge remove apache2
apt-get --purge remove apache2.2-common
apt-get --purge remove apache2-doc
apt-get --purge remove apache2-utils
apt-get autoremove