hexo发布

docker exec -it hexo /bin/bash 

git config --global user.email "[email protected]"
git config --global user.name "xxxx"

# 生成 和 发布
hexo clean && hexo d github

# # 生成 
# hexo g    # hexo generate
#
# # 发布
# hexo d   # hexo deploy

本文抄自:https://github.com/nkypy/blog/issues/17

正文前先对比一下:

3072的RSA的安全性=256的ECC(包括ECDSA和25519(EdDSA))

25519相对于传统NIST P-256曲线的ECDSA效率与速度更快且为确定性签名。

一、本地配置

1.1 在Windows PowerShell中运行命令

ssh-keygen -t ed25519 -C "oracledubai" # 随便起个名称,本例以oracleduba

Enter passphrase (empty for no passphrase):

对密钥加个私人密码,输入密码或回车留空。

Enter same passphrase again:# 确认密码或回车。

显示

Generating public/private ed25519 key pair.Enter file in which to save the key (/home/lenovo/.ssh/id_ed25519): #文件保存位置,一般默认即可。

显示

Enter passphrase (empty for no passphrase): #对密钥加个私人密码,输入密码或回车留空。
Enter same passphrase again:# 确认密码或回车。

显示

Your identification has been saved in /home/lenovo/.ssh/id_ed25519 #生成的私钥
Your public key has been saved in /home/lenovo/.ssh/id_ed25519.pub #生成的公钥
The key fingerprint is:
SHA256:PdwszW0JXELbXMuQXDGN+xfKfCMd6YQWEB4 oracledubai #指纹
The key's randomart image is:
+--[ED25519 256]--+
|  Eo.+ . .o ..ooo|
| . .= = .  + . +=|
| ..= = o  o o . o|
|o = o o  o B = . |
|o+ +    S = B +  |
|oo+        o .   |
|=  o             |
|..o              |
|..               |
+----[SHA256]-----+

 

  1. id_ed25519是私钥,id_ed25519.pub是公钥。
  2. 保存在C:\Users\lenovo.ssh路径中。lenovo为计算机名,不知道是啥的看上面路径home后面的名称。

二、VPS端操作

2.1 以root登录vps

mkdir /root/.ssh/

2.2 上传公钥

将id_ed25519.pub上传到/root/.ssh/路径下,并运行

cat /root/.ssh/id_ed25519.pub >> /root/.ssh/authorized_keys

2.3 修改密钥项

vim /etc/ssh/sshd_config

将下列两行的井号去掉

#PubkeyAuthentication yes #允许密钥认证

#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2 #默认公钥位置

service sshd restart #重启sshd

2.4 以密钥方式重新登录

注意:以密钥方式重新登录

2.5 关闭密码登录

运行的前提是:能够密钥登录VPS

vim /etc/ssh/sshd_config

将后面的PasswordAuthentication yes

修改为:PasswordAuthentication no

service sshd restart #重启sshd

三、常见的几种密钥生成方式对比

DSA: 它是不安全的,甚至从OpenSSH第7版开始就不再支持,你需要升级它!

RSA: 这取决于密钥大小。如果它有3072或4096位的长度,那么你就很好。低于这个长度,你可能要升级它。1024位的长度甚至被认为是不安全的。

ECDSA:这取决于你的机器能产生一个随机数的程度,这个随机数将被用来创建签名。在ECDSA使用的NIST曲线上也有一个可信度问题。

 

Ed25519: 这是目前最值得推荐的公钥算法!

转:https://winamp.top/230.html

https://gitee.com/SuperManito/LinuxMirrors

https://github.com/SuperManito/LinuxMirrors

bash <(curl -sSL https://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh)

如果提示 Command 'curl' not found 则说明当前未安装 curl 软件包

sudo yum install -y curl || sudo apt-get install -y curl
如果提示 Command 'wget' not found 则说明当前未安装 wget 软件包

sudo yum install -y wget || sudo apt-get install -y wget
如果提示 bash: /proc/self/fd/11: No such file or directory,请切换至 Root 用户执行

Getting Started with Linux --- mjj版的linux入门教程

本文的首要目的是给予Linux初学者一个简单、易学的教程,以便在看完本文后对Linux系统有一个基础的认识(而非系统级的深入),可以对常见的软件和功能进行配置,甚至可以自己写一写一键脚本。

时间和精力有限,有些内容没有写,其中也肯定有不少错误的地方。如果需要什么内容或提出补充和纠错,可以直接在GitHub上或者我的网站(https://pa.ci/157.html)中发言,如果有时间会添加进去,也欢迎PR来增加内容。

本教程写于2021年下半年,采用的系统为Debian GNU/Linux 11 (bullseye)。

GitHub地址:https://github.com/uselibrary/Getting-Started-with-Linux/

正文内容如下,点击以进行浏览

https://github.com/uselibrary/Getting-Started-with-Linux/blob/main/tutorial.md

目前的大纲如下

0 前言吐槽

1 环境搭建

1.1 系统选择与安装

1.2 常见的命令

1.3 基础文本编辑器nano、vim

1.4 更新系统

2 SSH链接和基础配置

2.1 连接SSH的软件和相关操作

2.2 SSH配置文件介绍和修改

2.3 使用密钥登陆SSH

3 Linux文件系统

3.1 文件系统格式

3.2 文件树、文件夹功能和权限

3.3 示例:挂载U盘

4 Shell/Dash入门

5 Crontab定时任务

6 系统权限

6.1 root和user,以及sudo

6.2 chmod和chown

7.1 开机自启和进程守护

7.2 Timer代替Crontab

8 手动配置系统:

9 网站环境搭建

9.1 宝塔解人忧

9.2 手动搭建

9.2.1 Apache和Nginx

9.2.2 PHP

9.2.3 MySQL和MariaDB

9.2.4 Let's Encrypt, SSL/TLS
来源:https://pa.ci/157.html

安装LNMP稳定版只需要安装nginx

wget http://soft.vpser.net/lnmp/lnmp1.9.tar.gz -cO lnmp1.9.tar.gz && tar zxf lnmp1.9.tar.gz && cd lnmp1.9 && ./install.sh nginx

 

 

添加网站(虚拟主机)

lnmp vhost add

编辑网站nginx配置文件

cd usr/local/nginx/conf/vhost

ls

xxx.com.conf

配置Nginx文件,将下列代码插入nginx文件中,注意端口、路径要保持一致

location /app
{
proxy_redirect off;
proxy_pass http://127.0.0.1:8443;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
}