我们只需要在自己的Linux系统A上生成一对SSH Key:SSH密钥和SSH公钥.密钥保存在自己的Linux系统上,公钥上传到Linux服务器B.之后我们就能无密码SSH登录了.SSH密钥就好比是你的身份证明.
在自己的Linux系统A上生成SSH密钥和公钥:
$cd ~/.ssh
$ssh-keygen -t rsa
RSA也是默认的加密类型.所以你也可以只输入ssh-keygen.默认的RSA长度是2048位.如果你非常注重安全,那么可以指定4096位的长度.如:ssh-keygen -b 4096 -t rsa
生成SSH Key的过程中会要求你指定一个文件来保存密钥,按Enter键使用默认的文件就行了.然后需要输入一个密码来加密你的SSH Key.密码至少要20位长度.SSH密钥会保存在home目录下的.ssh/id_rsa文件中.SSH公钥保存在.ssh/id_rsa.pub文件中.
$cp id_rsa.pub authorized_keys
$scp authorized_keys webyang@10.10.10.15:/root/.ssh
把刚刚产生的authorized_keys文件拷一份到主机B上.重命名防止覆盖B的公钥.注意目录
$chmod 600 authorized_keys
另外如果远程 ssh执行命令的时候, 可以加 -tt 参数,
-t Force pseudo-tty allocation. This can be used to execute arbitrary screen-based programs on a remote machine, which can be very useful, e.g., when implementing menu services. Multiple -t options force tty allocation, even if ssh has no local tty.
强制分派伪终端,对于基于屏幕的操作会很有帮助。
已有0条评论