这里我学习使用的是 Ubuntu Server 20.04.3 LTS
二、安装镜像,并启动服务器。
这里我使用的是VMware虚拟机安装。
1. 打开VMware工具
2. 新建虚拟机,选择“典型(推荐)(T)”
3. 选择“稍后安装操作系统(S)”
4. 选择操作系统为“Linux”,版本为“Ubuntu 64位”
5. 给虚拟机启个名字,示例:“YanEr_Ubuntu_x64”;选择一个虚拟机存放的路径
6. 根据使用情况设置自己的磁盘大小及存储方式,这里作为学习使用默认分配的“20GB”,为了磁盘性能选择的“将虚拟磁盘存储为单个文件”
7. 点击“自定义硬件”,选择“处理器”,勾选上所有的虚拟化引擎(PS:为了提升性能,至于为什么请自行百度,而且不是所有电脑都可以开启)
8. 选择“新CD/DVD(SATA)” - 使用ISO映像文件 - 指定为刚才下载的Ubuntu server 镜像保存路径
9. 选择“网络适配器”,将网络连接修改为“桥接模式(B):直接连接物理网络”,这样局域网内的用户均可访问这台服务器哟!
10. 运行创建的虚拟机,直至到语言选择的界面,选择“English”
11. 如果提示有新的安装程序,请视个人情况而选择,我这里选择的时“继续但不更新”
12. 提示你选择键盘布局,请视个人情况而选择,我这边就使用默认的了
13. 提示确认自动识别的服务器IP地址,通常不需要修改
14. 提示代理配置,请视个人情况而配置,我这边没有做任何配置
15. 配置磁盘分区,请根据个人情况进行配置,我这里使用的是默认配置,选择到“Done”,翻页继续下一步,依然选择“Done”
16. 提示“选择下面的“继续”将开始安装,并将格式化选定的磁盘,磁盘上的数据将会丢失,且一旦开始安装,您将无法返回到此屏幕或上一屏幕,是否确实要继续?”
17. 请选择“继续”以开始安装你的虚拟机,然后按照提示,完善的服务器信息
18. 询问你是否需要安装SSH,请按空格键选择需要,如图所示,然后选择“Done”
19. 让你选择需要安装的软件,这里因为是学习,所以我什么都没有选择,可视你的情况需要而选择
20. 安装完成后,选择“Cancel update and reboot”,取消更新并重启
三、本地连接服务器
1. 打开本地 cmd或 Git Bash
2. 输入命令 ssh remote_username@server_ip_address
示例:ssh yaner@192.168.111.1
❗ 补充信息知识了解:
🔆 Linux vim编辑器常用命令:
- : 切换到底线命令模式,以在最底一行输入命令
- :w 保存
- :q 退出
- :q! 或 ZQ 不保存退出
- :wq! 或 ZZ 保存并退出
- :h 帮助
- :new 新建文件
- dd 删除本行
- x 删除当前光标所在处的字符
- i 切换到输入模式,以输入字符
🔆 Linux vim编辑器输入模式下命令:
> 按 i 进入输入模式即编辑模式
- 输入字符:字符按键以及 Shift 组合
- 换行命令: ENTER -回车键
- 删除光标前一个字符: BACK SPACE -退格键
- 删除光标后一个字符: DEL -删除键
- 在文本中移动光标:方向键
- 移动光标到行首/行尾: HOME/END
- 上/下翻页: Page Up/Page Down
- 切换光标为输入/替换模式: Insert (光标将变成竖线/下划线)
- 退出输入模式,切换到命令模式: ESC
四、开启root用户登录
- 以管理员身份运行修改root密码: sudo passwd root
- 以管理员身份运行修改sshd_config配置: sudo vim /etc/ssh/sshd_config
- 按 i 进入编辑模式
- 使用上下方向键,找到: #PermitRootLogin prohibit-password
- 使用Enter回车键在该行下方,键入: PermitRootLogin yes
- 按 esc 退出编辑模式
- 输入 :wq 保存并退出
- 重启sshd服务: sudo systemctl restart sshd
- 按 exit 退出当前命令
- 测试使用root账户登录: ssh root@server_ip_address
示例:ssh root@192.168.111.1
这样登录后默认就是管理员了,以管理员身份运行命令就不需要再输入 sudo 了
五、开启SSH密钥认证并关闭密码认证
1. 检查本机是否已生成SSH密钥,以下两种方式均可
ls -l ~/.ssh/id_*.pub (Linux或Git Bash适用),返回No such file or directory或的信息no matches found,则为没有
C:\Users\登录用户名\.ssh (Windows适用),看到有id_rsa及id_rsa.pub等文件,则为有,否则为无
2. 如果没有使用如下命令生成你的SSH密钥,并根据提示设置密钥存储路径及私钥密码(这里我并没有设置,全部使用的默认)
ssh-keygen -t rsa -b 4096
3. 验证是否生成了新的SSH密钥对,同上 1
4. 将公钥复制到远程服务器,推荐使用 ssh-copy-id 工具,命令如下:
ssh-copy-id remote_username@server_ip_address
示例: ssh-copy-id root@192.168.100.1
5. 测试使用SSH密钥登录到服务器,命令如下:
ssh remote_username@server_ip_address
示例: ssh root@192.168.100.1
如果你未设置过私钥密码,将立即登录,否则将提示输入密码。
6. 最后,禁用SSH密码认证(禁用密码身份验证会为服务器增加一层安全保护),命令如下:
vim /etc/ssh/sshd_config
找到以下配置项并修改为 no
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no
7. 同之前的开启root用户登录修改配置一样,保存并退出,重启sshd服务即可
注意:这里重启,直接使用: systemctl restart sshd 即可