iOS 逆向工程(六)之客户端免密登录服务端
SSH的客户端认证方式
a.基于密码的客户端认证:使用账号和密码认证
b.基于密钥的客户端认证:免密码认证
SSH-2协议原理:默认优先尝试“密钥认证”,密钥认证失败才尝试“密码认证”
客户端【Mac】准备:公钥(~/.ssh/id_rsa.pub)、私钥(~/.ssh/id_rsa)
服务端【iPhone】准备:授权文件(~/.ssh/authorized_keys)
方式一:
将客户端公钥内容追加到服务端授权文件的尾部:
1.在客户端 .ssh 目录下 输入 ls -l 回车;
2.输入 ssh-copy-id root@192.168.1.8 (服务器端IP地址)回车;
3.yes 回车;
服务器端授权文件:
客户端公钥文件:
方式二:
将客户端公钥文件拷贝到服务器端目标位置,再将公钥文件的内容追加到服务器端授权文件里的尾部:
1.在客户端 .ssh 目录下 输入 ls -l 回车;
2.输入 scp ~/.ssh/id_rsa.pub root@192.168.1.8:~/.ssh 回车;
3.输入登录密码回车;
4.输入 ssh root@192.168.1.8 回车;
5.入登录密码回车;
6.输入 cd .ssh 回车;
7.输入查看命令 ls -l 回车;
8.将id_rsa.pub 文件 追加到authorized_keys 中:cat id_rsa.pub >> authorized_keys 回车;
9.删除id_rsa.pub文件:rm id_rsa.pub 回车
10.退出服务器端,输入exit 回车;
11.重新进入服务器端:ssh root@192.168.1.8 回车
Tip:删除授权文件,取消免密登录
1.终端输入 ssh root@192.168.1.8 回车;
2.输入 cd .ssh 回车;
3.查看文件 输入 ls -l 回车;
4.输入 rm authorized_keys 回车