Linux/Windows 配置config 使用ssh连接

Linux

  • 产看本地是否有ssh 公私钥
1 cd ~/.ssh
2 ls -a

有的话继续(没有 ssh-keygen 生成)

将公钥内容复制到要连接的服务器用户下

方法一

ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.100.10
#     |                   |            |        |
#   ssh命令           本机公钥的地址  服务器用户  服务器IP地址

方法二

登录到服务器,直接将本机的公钥复制到root下authorized_keys(我这里用的是root用户)

服务器重点

给.ssh 文件夹设置权限

chmod 700 .ssh

给authorized_keys 文件设置权限

chmod 600 authorized_keys

在Linux下写配置文件config

touch config  # 创建config文件
vi config     # 编写config

config具体内容

host "roc"                   # ssh连接的别名
HostName 123.56.240.37       # 服务器IP
User root                    # 登陆的用户
Port 22

保存退出后

ssh链接

ssh roc

输入密码后就可以了

windows

跟Linux一样在C盘用户目录下有个.SSH文件夹(先选择文件查看隐藏的文件,否则你是查看不到的)

没有的话去生成

之后在.ssh文件中创建一个config文件

Host rot                # 可用 "rot"  'rot' 不可
HostName 123.57.240.37
User root
Port 22

同样的操作把生成的公钥复制到服务器需要登录用户的authorized_keys文件下(注意权限)

链接服务器

# 第一种
ssh rot
# 第二种
ssh root@rot   # rot--> 对应Host 
     |    
# 需要登陆的用户对应User 
# 俩种方法都可以

免密登录

如果你觉的输入密码麻烦的话 在config文件中加入下面两横 ,就可以实现免密登录

PreferredAuthentications publickey
IdentityFile C:\Users\Jack-Roc\.ssh\jack_rsa    # 私钥的具体地址

同样如果Linux 也想免密登陆的话也要加入这两横。

解决问题

问题一

root@123.57.240.37: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

出现这个问题,使用ssh 私钥链接

ssh root@rot -i ./testrsa(私钥地址)     # 失败的话,检查一下你的公私钥是否一致 服务器公钥是否正确
                                       # 检查一下文件权限

问题二

ssh: Could not resolve hostname rot: \262\273\326\252\265\300\325\342\321\371\265\304\326\367\273\372\241\243

说明你本地config文件有错误

Linux/Windows 配置config 使用ssh连接

上一篇:webapi和webservice的本质区别


下一篇:C#语法基础----变量