测试环境:Ubuntu 20.04
更新系统
sudo apt update && sudo apt upgrade -y
启用防火墙
安装 UFW 防火墙
sudo apt install ufw
# 安装ufw防火墙
sudo ufw default deny incoming
sudo ufw default allow outgoing
# 载入拒绝传入和允许传出的默认策略
sudo ufw enable
# 启用防火墙
添加/删除规则
sudo ufw allow 22
# 开放22端口
sudo ufw status
# 查看规则
sudo ufw status numbered
# 查看规则及规则id
sudo ufw delete 1
# 删除id为1的规则
添加非Root用户
创建非Root用户
要在ubuntu系统中添加一个新用户,你可以按照以下步骤进行操作:
打开终端并以root用户身份执行以下命令来创建新用户:
sudo adduser ubuntu
将ubuntu
替换为你想要的用户名。
系统将提示你设置密码和其他用户信息。按照提示进行操作,设置密码和其他相关信息。
完成后,新用户将被创建并分配一个主目录。默认情况下,主目录将位于
/home
目录下,以用户名命名。
现在,你可以使用新创建的用户登录到ubuntu系统。
免密sudo
可以通过配置sudo
来实现免输入密码的功能。以下是实现此功能的步骤:
打开终端并以root用户身份执行以下命令来编辑sudoers文件:
sudo visudo
在打开的文件中,找到以下行:
%sudo ALL=(ALL:ALL) ALL
在该行下方添加以下内容:
<username> ALL=(ALL) NOPASSWD:ALL
将<username>
替换为你的用户名。
- 保存并关闭文件。请注意,使用
visudo
命令编辑sudoers文件可以确保语法正确性,避免出现错误。
现在,当你使用sudo
命令时,将不再需要输入密码。请注意,这会降低系统的安全性,因为任何拥有你的用户账户访问权限的人都可以以管理员身份执行命令。因此,建议仅在你信任的环境中使用此功能。
自动安全更新
在Linux系统中,你可以选择只更新重要的安全更新和修复,而不是进行全面的系统升级。这样做可以减少潜在的系统稳定性问题,并且可以更快地应用关键的安全补丁。我们使用unattended-upgrades
来自动化这项操作。
首先,安装
unattended-upgrades
包(如果尚未安装):sudo apt-get update sudo apt-get install unattended-upgrades
配置
unattended-upgrades
来只安装安全更新。编辑配置文件/etc/apt/apt.conf.d/50unattended-upgrades
:sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
确保只有安全更新仓库是启用的:
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
};
启用自动更新:
sudo dpkg-reconfigure -plow unattended-upgrades
选择“Yes”来启用自动更新。
使用私钥登陆
生成登录密钥
sudo su ubuntu
# 切换到ubuntu用户
ssh-keygen -t ed25519 -f ~/.ssh/hostkeys
# 生成ssh密钥,三次回车
cd ~/.ssh/
cat hostkeys
# 复制私钥,在本地电脑新建host.ppk文件,粘贴私钥,保存
mv hostkeys.pub authorized_keys
# 修改公钥名
SSH配置文件
sudo vim /etc/ssh/sshd_config
# 编辑sshd_config文件
# 在vim编辑器模式下查找:/要查找的内容
# 查找下一个:n
# ----------------------------
# 修改以下内容,如果不存在则添加
# ----------------------------
Port 8621
# ssh登陆端口
PermitRootLogin no
# 禁止使用root用户登陆
RSAAuthentication no
# 禁用SSHv1密钥登陆
PubkeyAuthentication yes
# 允许SSHv2密钥登陆
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
# 公钥存储路径,多个公钥用空格分隔
PasswordAuthentication no
# 禁用密码登陆
ChallengeResponseAuthentication no
# 禁用质询-响应身份验证方案
UsePAM no
# 禁用插入式验证模块(Pluggable Authentication Module,PAM)
sudo ufw allow 8621
# 开放ssh端口
sudo service ssh restart
# 重启ssh服务
使用PuTTY登陆
转换密钥格式
使用PuTTY登陆需要使用PuTTYgen
工具转换密钥格式,此工具在安装PuTTY的时候默认一起安装
打开PuTTYgen
,点击File
,Load Private Key
,选中密钥文件,单击Sava private key
覆盖密钥文件
登陆
- 输入服务器ip地址与ssh端口
- 给服务器命名
- 点击
Data
,在Auto-login username
输入登陆用户名 - 依次点击
SSH
,Auth
,找到Private key file for authentication:
,点击Browse
,选中密钥文件 - 单击
Session
,点击Sava
,点击Open
即可连接到服务器