一、什么是ssh
ssh是Secure Shell的缩写。它是一个较为可靠,专为远程登录会话和其他网络服务提供安全性的协议。
二、配置ubuntu下的ssh服务器
# 安装ssh-server
sudo apt update
sudo apt install openssh-server
# 安装完成后,ssh服务会被自动启动,可以输入以下命令验证是否正在运行
sudo systemctl status ssh
# 显示active(running)则说明服务在运行,且开机自启动
# 防火墙打开ssh端口
sudo ufw allow ssh
三、客户端如何基于ssh进行远程登录ssh服务器
# 首先得知道ssh服务器的ip地址,可以通过ifconfig命令查看
# 采用如下命令进行远程登录
ssh yourname@yourhost #例 ssh root@192.168.1.10
# 输入此用户名的密码即可顺利进入
四、如何设置每次无密码远程登录ssh服务器
## 客户端上进行如下操作
# step1:生成私钥 公钥,生成位置位于C:\Users\yourname\.ssh
ssh-keygen
# step2:上传公钥至服务器
cd C:\Users\yourname\.ssh
scp-copy-id yourname@yourhost #例 scp-copy-id root@192.168.1.10
# 输入一次密码
# 成功之后就可以进行无密码远程登录了!大功告成!
ssh yourname@yourhost
#如果出现——scp-copy-id : 无法将“scp-copy-id”项识别为 cmdlet、函数、脚本文件或可运行程序的名称——这种报错,先运行以下内容再进行copy:
function ssh-copy-id([string]$userAtMachine, $args){
$publicKey = "$ENV:USERPROFILE" + "/.ssh/id_rsa.pub"
if (!(Test-Path "$publicKey")){
Write-Error "ERROR: failed to open ID file '$publicKey': No such file"
}
else {
& cat "$publicKey" | ssh $args $userAtMachine "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys || exit 1"
}
}
参考网址:
https://linuxize.com/post/how-to-enable-ssh-on-ubuntu-20-04/