一、远程服务
1、ip address show查看IP地址
- IP a( ip:网络管理工具 address:地址(IP 地址) * show:显示)
2、sudo systemctl status ssh 查看ssh服务是否开启
- sudo以管理员权限运行(必须加,不然看不了系统服务)。
- systemctl 管理系统服务的工具(启动、停止、看状态都用它)。
- status 查看状态。
- ssh 就是 SSH 远程登录服务
3、sudo systemctl stop ssh 停止 SSH 服务(断开所有现有连接)
- start 启动
- stop 停止
- restart 重启
- status 看状态
- reload 重载配置(不断连接,更温和)
4、sudo systemctl restart ssh 重启 SSH 服务(先停再启,配置修改后常用)
restart ssh先停掉 SSH,再重新启动→ 正在连接的人会断开
5、sudo systemctl reload ssh 重载配置(不中断连接,比 restart 更友好)
reload ssh只重新读配置文件,不重启、不断开连接→ 修改了 sshd_config 后,用它最安全
- ssh student@IP地址 在windows中连接 #student远程主机用户名
注意
1、第一次连接会提示确认主机密钥,输入 yes
2、然后输入虚拟机用户密码
二、通过 Ubuntu 生成非对称密钥对
1、在ubuntu 中通过ssh生成非对称密钥
ssh-keygen -t rsa -b 4096 -C “ubuntu-1的密钥”
ssh-keygen -t rsa -b 4096 -C”注释”
生成ssh连接虚拟机密钥,不用每次登录输入密码
t rsa
-t=type 指定加密算法类型
rsa=经典/通用/兼容性最强的算法
b 4096
-b=bits,指点密钥长度
4096=4096位,比默认2048位更安全
** c
-c=comment,给密钥加注释 后面必须跟一个字符串(注:C 必须大写)
Enter passphrase (empty for no passphrase):
Enter same passphrase again(设置密码,相当于二级密码)
empty for no passphrase(留空相当于不设密码)
ssh -keygen 是生成ssh密钥对的工具(公钥+私钥)
2、上传公钥到客服端,私钥自己保存,不能泄密
远程登陆时,⾸先本机该⽤⼾的私钥会⾃动去对接被登录的远程⽤⼾的公钥,存在就会实现远程免密登录………
本机私钥 + 远程⽤⼾公钥 = 签名验证 → 成功建⽴免密
客服端:echo “粘贴你的公钥内容” >> ~/.ssh/authorized_keys
chmod 400 ~/.ssh/authorized_keys
三、SSH连接
1、测试免密登录
ssh 对方用户名@对方IP地址
2、重启 SSH 服务
sudo systemctl restart ssh
- – sudo:用管理员权限
- – systemctl:虚拟机管服务的工具
- – restart:重启
- – ssh:SSH 远程连接服务
3、ssh查询
ssh luoll@172.16.13.99
注意事项
#SSH服务器的配置文件 /etc/ssh/sshd_config 可能没有正确配置。可能同时启用了密码认证和密钥认证,并且服务器优先使用密码认证,会导致登陆时既进行了密钥验证还需要手动输入密码。 PubkeyAuthentication yes # 确保启用公钥认证 PasswordAuthentication no # 禁用密码认证
评论(0)
暂无评论