ssh服务的定义
SSH协议: 是目前较可靠的,专为远程登录会话和其他网络服务提供一个安全的协议。
在linux 中SSH 是非常常用的工具,通过ssh客户端,我们可以连接到运行了SSH服务器的远程机器上(服务器、电脑)。
利用SSH协议,不仅可以有效的防治远程管理过程中信息泄露,而且传输数据是可以进行压缩的,传输速度快。
Ssh命令可以用来执行远程登录
使用客户端ping 服务端,查看是否能ping 通。
ping 远端IP
查看家目录下是否有.ssh文件夹(第一次登录没有)
ls -al
Ssh的基础操作
远程登录服务端格式:
ssh 远程机器上的用户名 @远程机器的地址ip
提示是否授权,输入yes。 (授权后,就会在客户端,服务器的.ssh文件下生成 known_host 文件,下次远程登录时,就不会再次提示授权)。
密码免登陆(秘钥登录)
非对称加密算法:
使用公钥加密的数据,需要使用私钥解密。
使用私钥加密的数据,需要使用公钥解密。
秘钥登录
首先,在本地通过算法生成公钥,然后将公钥发送给要登录的远程主机。在登录的时候, 本地使用私钥登录,忽略密码进行登录。
- 生成密钥
ssh-keygen -t rsa
2. 查看有没有生成.ssh
目录
- 查看
id_rsa
私钥、id_rsa.pub
公钥、know_host
表名单
cat id_rsa
cat id_rsa.pub
cat know_hosts
- 复制一份公钥,发给服务器到
.ssh
目录下
cp id_rsa.pub authorized_key
scp /root/.ssh/authored_keys root@10.10.42.18:/root/.ssh
然后登陆是就不用输入密码
scp 命令 通过ssh机制进行文件的拷贝
复制文件(本地>>远程):scp 本地文件 用户名@IP:/root/.ssh
复制文件(远程>>远程):scp root@10.21.156.6:/cloud/data/test.txt /cloud/data/
复制目录(本地>>远程):scp -r /cloud/data root@10.21.156.6:/cloud/data/
复制目录(远程>>本地):scp -r root@10.21.156.6:/cloud/data/ /cloud/data/
例如:将 aa.txt
复制到远程服务器的桌面上
scp aa.txt root@10.10.42.18:Desktop
Sftp是ssh文件传输协议
Put 本地 远端
Get 远端 本地