Mac开发工具 - SHH登录

Mac Terminal是自带SSH的,通过终端SSH远程连接Centos服务器非常方便,在端口为默认的22情况下,只需要在终端下输入:

1
ssh -l root hostNameOrAddress

就可以连接了,如果改变了端口,使用如下命令即可登录:

1
ssh -p portNumber -l root hostNameOrAddress

如果是Ubuntu主机,也可以这个命令进行连接:

1
2
ssh -X userName@hostNameOrAddress
ssh userName@hostNameOrAddress -p portNumber

例如:ssh ubuntu@192.168.100.100

其中ubuntu是要登录的主机的用户名,192.168.100.100是要登录的主机的IP地址。

错误排除

如果SSH无法连接,可以先用whereis来看看:

1
$ whereis ssh

以下表示现有进程中找不到ssh对应的进程:

1
2
$ ps aux | grep ssh
apple 25927 0.0 0.0 2432784 616 s000 R+ 3:14下午 0:00.00 grep ssh

直接用SSH命令连接本地主机或远程主机时会遇到下列错误提示:

1
ssh: connect to host localhost port 22: Connection refused

在于系统设置中没有打开远程登录,参见传送门

输入ssh localhost来测试一下,如果提示输入密码来认证就没问题了。

此时再grep一下进程可以看到SSH进程在运行了:

1
2
3
$ ps aux | grep ssh
apple 4656 0.0 0.0 2525056 1540 ?? S 三02下午 0:00.19 /usr/bin/ssh-agent -l
apple 26009 0.0 0.0 2432784 612 s000 R+ 3:19下午 0:00.00 grep ssh

如果提示以下错误:

1
2
Host key verification failed. ssh
Host key verification failed.

尝试以下的解决方法:

1
vi ~/.ssh/known_hosts

删除此目录下hostNameOrAddress的相关rsa的信息,或者直接删除这个文件:

1
2
3
cd ~/.ssh/
rm known_hosts