shell中到根目录下.ssh文件夹
cd ~/.ssh/
生成密钥(已经生成过的跳过这一步,gitlab等都需要的)
ssh-keygen
创建配置文件
vim config
写入以下命令到config文件
Host myServer # 设置ssh host缩写
Hostname 47.***.***.10 # 服务器ip
User root # 服务器用户名
Port 22 # 服务器端口
IdentityFile ~/.ssh/id_rsa # 密钥
# 注意:可以添加多个服务器
文件复制到服务器根目录下的home文件夹内
scp -r 文件目录 root@47.***.***.10:/home/
跳转到服务器
ssh myServer
# 本次是需要输入密码的
把上传过来的文件写入到当前服务器下
cat /home/id_rsa.pub >> .ssh/authorized_keys
测试
关闭shell
ssh myServer
# 不再需要输入密码
如果成功跳转到.10服务器,那么配置已成功
windows配置ssh免密登录linux
客户端(windows)要做的事情
-
查看本地是否有ssh公钥文件夹,若没有,则创建文件夹,若存在,直接跳到第
mkdir ~/.ssh //创建文件夹
-
生成公钥 邮箱最好为你github注册邮箱,因为github会用到这个公钥
ssh-keygen -t rsa -C "email@email.com"
-
提醒你输入key的名称,输入如id_rsa
- 在C:\Documents and Settings\Administrator\下产生两个文件:id_rsa和id_rsa.pub
-
把第四步中生成的公钥文件copy至~.ssh\ 目 录下。
至此,win下的公钥文件已经创建成功
服务器配置
- 将客户端的公钥文件发送至服务器,输入服务器密码
-
查看服务器是否存在这个文件夹以及这个文件(~/.ssh/authorized_keys ),没有就创建。
mddir ~/.ssh vim ~/.ssh/authorized_keys
保存退出文件
-
追加刚才客户端上传的公钥文件至authorized_keys
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys //追加 rm ~/id_rsa.pub //删除公钥
-
重启ssh服务
service sshd restart //重启ssh服务
- 退出服务器重新登陆就可以免密登录啦