腾讯云和阿里云的云服务器产品的默认系统镜像一般都内置有服务器监控程序,前者叫『云镜』后者叫『云骑士』,官方声称它们在服务器被黑客入侵、挂马、异常访问时能及时告警用户

实际上他们的作用嘛……大家懂的都懂🤐,本文以腾讯云服务器为例 (购买服务器时选择的 Debian 9 GNU/Linux),简单记录下 DD 脚本一键重装纯净系统,通过 SSH 登录你的服务器/VPS,下面开始操作吧😋

# 切换到root用户(一键DD需要root用户权限,sudo提权方式不可用)
$ sudo su
# 先更新一下软件源
$ sudo apt update
# 检查是否安装 wget
$ wget
# 如果有类似下面的输出代表系统默认安装了wget
root@VM-4-5-debian:~# wget
wget: missing URL
Usage: wget [OPTION]... [URL]...

Try `wget --help' for more options.
# 如果wget提示没找到命令,安装wget软件包
$ sudo apt install wget
# 执行一键DD脚本(必须使用root用户)
$ wget --no-check-certificate -O AutoReinstall.sh https://cdn.jsdelivr.net/gh/DejavuMoe/Shell@master/AutoReinstall.sh && bash AutoReinstall.sh

没问题的话,会有下面的输出,使用 Y/N 选择 是/否 使用 DHCP 自动配置网络

########################################################
#                                                      #
#  Auto Reinstall Script                               #
#  Modified by DejavuMoe                               #
#  Origin: hiCasper                                    #
#  Blog: https://blog.hicasper.com/post/135.html       #
#  Repo: https://github.com/DejavuMoe/Shell            #
#  Last Modified: 2021-05-22                           #
#                                                      #
#          Supported by MoeClub                        #
#                                                      #
########################################################


Using DHCP to configure network automatically? [Y/n]:

输入 Y 继续,会出现选择系统的提示,输入数字选择,比如我想使用 Debian 10,输入 5 回车即可

########################################################
#                                                      #
#  Auto Reinstall Script                               #
#  Modified by DejavuMoe                               #
#  Origin: hiCasper                                    #
#  Blog: https://blog.hicasper.com/post/135.html       #
#  Repo: https://github.com/DejavuMoe/Shell            #
#  Last Modified: 2021-05-22                           #
#                                                      #
#          Supported by MoeClub                        #
#                                                      #
########################################################


Using DHCP mode.
Using domestic mode.

Please select an OS:
  1) CentOS 7.9 (DD Image)
  2) CentOS 7.6 (DD Image, ServerSpeeder Avaliable)
  3) CentOS 6
  4) Debian 9
  5) Debian 10
  6) Ubuntu 16.04
  7) Ubuntu 18.04
  8) Ubuntu 20.04
  9) Custom image
  0) Exit

Your option: 5

Password: Pwd@Linux

Press any key to continue...

Pwd@Linux 是默认 SSH 登录密码,记录下,后面重装好了,第一次 SSH 连接要用,回车继续会开始下载所需文件

# Install

Auto Mode install [Debian] [buster] [amd64]. 

[Debian] [buster] [amd64] Downloading...

接下来就可以看到啰嗦的跑条了,完成后 SSH 会自动断开进入自动重装系统,一般情况服务器/VPS 会失联几分钟到十几分钟,根据机子的性能/网络情况有所差异

感觉差不多时间后就可以通过 SSH 连接服务器了/VPS 了,默认 用户名 root,密码 是上一步记录的, SSH 端口 是 22,记得服务器安全组放行一下

修改 root 密码:

# 修改root密码
$ passwd root 

使用密钥登录:

# SSH登陆服务器后,生成新的密钥对
$ ssh-keygen -t rsa
# 后面有提示如果你什么也不了解无脑回车就行了……
# 生成的密钥对默认路径:/root/.ssh/
# 进入.ssh目录
$ cd /.ssh
# 查看文件列表
$ ls 
# 有一对密钥 ,id-rsa—私钥|id-rsa.pub—公钥
# 把公钥写到 authorized_keys 里
$ cat id_rsa.pub >> authorized_keys
# 给予权限
$ chmod 600 authorized_keys
$ chmod 700 ~/.ssh
# 查看私钥内容并将内容复制到本地可靠的文件里
$ cat id_rsa
# 修改SSH配置(如果没有vim编辑器可以手动安装下 apt install vim)
$ vim /etc/ssh/sshd_config
# 取消 PubkeyAuthentication yes 和 AuthorizedKeysFile .ssh/authorized_keys 的注释
# 重启SSH服务
$ service sshd restart
# 以后就可以用密钥登陆服务器了

SSH 基本加固:

# 首先禁止 ICMP ping 服务器
# SSH 基础加固
# 编辑SSH配置文件
$ vim /etc/ssh/sshd_config
# 修改SSH端口为非22的其他端口
# 取消 Port 22 前面的注释,将22改为其他的端口,如:(举例随便输的)
Port 123321
# 取消MaxAuthTries注释符号#, 设置最大密码尝试失败次数3-6,比如:
MaxAuthTries 4
# SSHD 强制使用V2安全协议
Protocol 2
# 将ClientAliveInterval设置为300到900秒,将ClientAliveCountMax设置为0-3
ClientAliveInterval 600  
ClientAliveCountMax 2
# 将SSH日志记录等级设置为INFO
LogLevel INFO
# 禁止空密码登陆
PermitEmptyPasswords no
# 禁止密码登陆
PasswordAuthentication no
# 重启SSH服务
$ systemctl restart sshd

积分: