您的位置:首页 > 其它

ssh 使用Tips

2016-01-21 13:27 495 查看

基本格式

最简单

ssh username@hostname
## 比如以root用户登录局域网的某台机器 , 机器IP是 192.168.1.3
ssh root@192.168.1.3
# 会要我输入root的密码


登录指定的端口

ssh username@address  -p port
## 比如以root用户登录局域网的某台机器 , 机器IP是 192.168.1.3 端口是 1024
ssh root@192.168.1.3 -p 1024
# 会要我输入root的密码


使用rsa

在上面的命令中, 我必须要输入用户的密码才行。 由于工作需要,我经常的登入登出各个服务器, 每次输入密码显然很麻烦, 当然也可以多多打开终端,登入每个服务器就不登出。 但是这样又带来了切换终端的痛苦, 所以还是换个办法 : 试用rsa 密钥配对的方式登入。

生成 ras 密钥对文件

#命令 :
ssh-keygen -t  rsa
#输出 :
Generating public/private rsa key pair.
# 输入你打算存放私钥的文件名, 公钥自动存放在相同文件夹下在私钥的基础上加上 .pub
Enter file in which to save the key (/home/lguo/.ssh/id_rsa): ./Templates/id_rsa
#下面需要输入密码 , 这里直接Enter就好. ( 除非你的系统有其他人也在使用,而你不打算让其他人使用这个私钥)。
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in ./Templates/id_rsa.
Your public key has been saved in ./Templates/id_rsa.pub.
The key fingerprint is:
bc:69:b9:4f:a8:55:5f:05:91:47:b2:a7:ae:f2:6b:b3 [MD5] lguo@linux-xmq3
The key's randomart image is:
+--[ RSA 2048]----+
|              ++.|
|              .+.|
|              ..o|
|       .       + |
|        S .   o  |
|         * . o   |
|        B . . .  |
|       + o. o.   |
|      . ...+E+   |
+--[MD5]----------+


使用公钥和私钥配置两台机器的ssh

配置被登录的机器

将公钥拷贝到被登录的机器。

scp ./Templates/id_rsa.pub root@192.168.1.3:~/
# 会要我输入root的密码


将公钥加入被登录机器的公钥文件

ssh root@192.168.1.3
# 会要我输入root的密码
cat id_rsa.pub >> .ssh/authorized_keys # 注意这里使用追加, 不要覆盖别人的公钥。


确保被登录机器的ssh服务器支持使用rsa密钥登录

# 我已经在被登录的服务器了。

vim /etc/ssh/sshd_config
RSAAuthentication yes # 找到着一个 确保不是no 。 改了这个文件需要重启sshd ( 通过service命令或者 /etc/init.d/sshd )


配置登录的机器

保存私钥

# 由于这是登录内网 192.168.1.3 的私钥,他的名字带着_3 只是个人习惯。
mv ./Templates/id_rsa ~/.ssh/id_rsas/id_rsa_3


确保自己的ssh客户端支持rsa登录。

exit  #登出192.168.1.3 回到自己的登录服务器
vim /etc/ssh/ssh_config
RSAAuthentication yes # 找到着一个 确保不是no 。
IdentityFile ~/.ssh/id_rsas/id_rsa_3 # 指定私钥文件, 多个私钥就多几行这个配置。


使用rsa密钥登录

ssh root@192.168.1.3
# 这里会直接登录上, 不会在问我要root的密码。


使用服务器别名

虽然上面不再需要用户的密码,但是每次登录我都要手动输入用户名和地址。尤其是地址是IP的时候, 很容易打错或者混淆。

配置一个ssh服务器

vim .ssh/config
## 多个服务器就多个这样的配置, 追加在这个文件里面
Host local_3
HostName 192.168.1.3
Port 1024
User root

#    HostName 指定登录的主机名或IP地址
#    Port 指定登录的端口号
#    User 登录用户名
#    IdentityFile 登录的公钥文件
#    IdentitiesOnly 只接受SSH key 登录
#    PubkeyAuthentication


别名登录

ssh local_3
# 直接登录服务器。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: