一、概念
SSH是一种安全的远程登录协议,与其他的如telnet等使用明文传输数据的协议不同,SSH采用非对称加密技术RSA以对所有的传输数据进行加密,其安全性更高。通常来说,SSH的加密方式主要有以下两种:
(1)口令认证
知道账户和密码,就能直接登录服务器,这种方式较为简单,但是不能保证所连接的服务器是目标服务器,可能有中间人冒充目标服务器
(2)密钥认证
密钥是成对出现的,当client想要访问server时,会生成一个公钥和一个私钥,将公钥上传至server。当client想要访问server时,会向server发送一个信息,server会比对信息中的公钥信息,如果信息中的公钥信息与本机中的公钥信息相同,则会通过公钥加密另一个信息发送给client,client接收到信息后,使用私钥解密信息,并返回给server,确认无误后,完成登录,这种方式可以有效 防止中间人
二、常规使用
1.口令认证
语法:ssh [option] [user]@IP/hostname,使用较为简单,直接ssh后接需要登录到server的用户名再@ip地址或主机名
常用的某些参数选项及其意义如下
-X:使用server的图形化界面【需要server安装对应图形化软件以及auth程序】
-p + 端口号:指定端口进行ssh,此项需要结合修改配置文件进行使用
2.密钥登录
在client上生成密钥:ssh-keygen -N '' -f /root/.ssh/id_rsa
将公钥拷贝至server:ssh-copy-id root@serverip
执行完上述步骤后,server的authorized_keys文件中会写入公钥,client即可实现免密访问server