远程登录Linux服务器,免密方式
以及Mac iTerm2免密登录方式
方式一:账号密码登录
tips:最简单的登录方式 ssh -p port username@remoteIp
在Terminal终端环境下输入
#ssh登录 端口 账号@服务器IP
ssh -p 22 [email protected]
# ssh链接成功提示输入密码
[email protected]'s password:
#输入密码成功后,显示成功登录信息,如:
Last failed login: Thu Jun 9 14:17:35 CST 2022 from 46.19.137.50 on ssh:notty
There were 1115 failed login attempts since the last successful login.
Last login: Wed May 25 12:13:51 2022 from 221.223.98.123
Welcome to CSDN Cloud Elastic Compute Service
方式2: 记住账号密码登录(item2)
通过shell脚本,把登录信息保存在收藏夹中,不用每次记住账号密码
创建脚本文件 item2login.sh,写入以下内容
#!/usr/bin/expect
set timeout 30
spawn ssh -p [lindex $argv 0] [lindex $argv 1]@[lindex $argv 2]
expect {
"(yes/no)?"
{
send "yes\n";exp_continue}
"password:"
{
send "[lindex $argv 3]\n"}
}
interact
item2 中配置,如下图
方式三:SSH账号密码登录
更高级的方式,本地秘钥登录
1.生成本地公钥文件
2.拷贝公钥文件到服务器上
3.免密登录
复用本地已生成的公钥,和git使用的公钥为同一个公钥,默认在~/.ssh/id_rsa.pub (如果未生成自行生成公钥)
使用 ssh-copy-id root@服务端IP 命令将拷贝本地生成的公钥文件,到远端服务器
#复制以下命令,替换服务器IP
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
#如果端口不是22 指定端口,如:
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected] -p 1234