简介 | 1.Ssh 是一种安全通道协议,主要用来实现字符界面的远程登录,远程复制等功能。 2.OpenSSH 是实现SSH软件的开源软件项目 | |
结构 | C/S结构:客户机和服务器结构,是软件体系结构。 B/S结构:浏览器和服务器结构,是WEB兴起后的一种网络结构模式, | |
环境 | 检查是否有ssh,scp命令,如果没有,安装openssh-clients安装包 | |
普通连接 | 使用ssh,加上要登陆的账号@要登陆的主机IP地址,然后输入密码进行登录。 输入exit退出远程登录 如果是第一次连接,会提示用户,输入yes或no,作用是建立连接。会在连接双方的用户的家目录中的.ssh目录中,创建一个known_hosts文件,里面记录的对方的信息。 如果不写登录账号,默认使用root账号登录。 | |
密钥对连接 | ||
验证过程 |
| |
创建 密钥 | [root@server ~]# ssh-keygen //创建密钥对,一直按回车即可 id rsa :私钥配置文件 id rsa.pub:公钥配置文件 | |
方法一 | ||
分发 密钥 | [root@server ~]# cd .ssh/ //进入.ssh配置文件,查看密钥对 [root@server .ssh]# scp ~/.ssh/id_rsa.pub 192.168.200.5:/root/ //通过scp命令,将公钥拷贝到服务器的root目录下,输入对方的root密码 | |
公钥 操作 (1) | 查看另一台机器的root目录是否有.ssh目录,如果没有,那么创建.ssh目录,并将该目录的权限设置为700。 [root@client ~]# mv id_rsa.pub .ssh/ //将公钥移动到.ssh目录中 [root@client .ssh]# mv id_rsa.pub authorized_keys //更改公钥名称 [root@client .ssh]# vim /etc/ssh/sshd_config //如果记不住这个文件的名称,可以在公钥进程中查看 | |
测试 | 当再次使用ssh进行远程连接时,不需要再输入密码,直接就可以登录。 | |
Ps | 如果连接的是普通用户,那么就要在普通用户的家目录中导入公钥,并且其家目录中要有.ssh文件且权限为700。然后将公钥导入该目录即可。 | |
方法二 | ||
[root@client ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.200.4 -i:指定公钥位置 //将公钥发给192.168.200.4主机,没写用户,默认为超户 | ||
测试 | ||
Ps | 如果要是发给客户机上其他用户,则必须指定该用户 | |
脚本编写步骤分析 | ||
1 | 一步创建密钥对 [root@client .ssh]# ssh-keygen -t dsa -P "" -f ~/.ssh/id_dsa | |
2 | 跳过第一次连接用户输入yes/no [root@client ~]# ssh-copy-id -i ~/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no 192.168.200.4" //不提示用户输入yes/no 或 进入/etc/ssh/ssh_config配置文件,修改StrictHostKeyChecking ask 将ask的值改为no,然后使用service sshd rstart重启服务,此时,就算是普通连接,第一次也不会出现yes/no。(需要修改服务器配置) | |
3. | 跳过密码(免密推送公钥) 安装sshpass [root@client yum.repos.d]# yum -y install sshpass (云yum:wget http://files.tttidc.com/centos6/epel-6.repo) [root@client ~]# sshpass -p "abc123," ssh-copy-id -i ~/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no 192.168.200.4" sshpass -p :指定远程登录的密码 | |
4. | 检测主机IP是否可以Ping通,如果可以Ping通,那么存活,那么就分发密钥对,如果不存活,则不发送 | |
脚本 举例 |
| |
2021-1-7 | ||
Linux基础——SSH远程连接
最新推荐文章于 2024-08-16 10:28:07 发布
本文详细介绍了SSH协议及其开源实现OpenSSH,讲解了SSH的C/S架构和B/S结构。重点阐述了SSH的环境配置、普通连接和密钥对连接的过程,包括如何创建、分发和验证密钥对。此外,还分享了通过脚本自动化分发密钥以实现免密登录的方法,确保了远程连接的安全性和便捷性。
摘要由CSDN通过智能技术生成