Mac无账号密码连接服务器(ssh, git)

本机.ssh目录配置

.
├── config
├── git_id_rsa
├── git_id_rsa.pub
├── id_rsa
├── id_rsa.pub
└── known_hosts

git_id_rsa.pub,id_rsa.pub 文件写入服务器(这两个是不通用的,git的生成需要邮箱账号)

config配置

Host aaa
  HostName 192.168.1.102 
  Port 22
  User root           
  PreferredAuthentications publickey 
  IdentityFile ~/.ssh/id_rsa   

Host bbb
  HostName 192.168.1.101
  Port 2345
  User root           
  PreferredAuthentications publickey 
  IdentityFile ~/.ssh/id_rsa


Host github.com
    HostName github.com
    User git
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/git_id_rsa

Host gitee.com
    HostName gitee.com
    User git
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/git_id_rsa

Host git.coding.net
    HostName git.coding.net
    User git
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/git_id_rsa

(aaa,bbb)可以是阿里云服务器,也可以是内网的服务器。连接方式 ssh aaa,ssh bbb.

  • git免密登录要使用git协议。不能使用https。

  • Xcode与GitHub集成的非常好。创建项目之后可以在Xcode创建远程仓库。

  • 其他的要再在网页上创建远程库,然后与本地库关联(可以用命令行,也可以用Tower)。

  • .gitignore文件可以放在项目根目录。项目比较庞大可以在子目录单独配置。

配置过程:

  1. 在本地终端生成密钥对。
ssh-keygen // 加密方式默认使用RSA,可以通过 “ssh-keygen -t 加密方式” 指定加密方式

生成过程中会询问设置密钥对的保存位置和打开密码。按enter键使用默认设置即可。此时会在"~/.ssh"目录下生成名为id_rsa和id_rsa.pub的私钥文件和公钥文件。

  1. 使用密码登录到服务器端,将公钥字符串copy到"~/.ssh/authorized_keys"文件内。
vi ~/.ssh/authorized_keys
// copy 公钥字符串
  1. 如果.ssh目录尚未建立,需要先创建并且修改权限:
mkdir ~/.ssh
chmod 700 ~/.ssh
  1. 如果authorized_keys文件是新创建的,需修改文件权限
chmod 600 ~/.ssh/authorized_keys
  1. 验证是否设置成功
ssh username@server-ip

参考:
https://www.jianshu.com/p/03effb53705c

你可能感兴趣的:(Mac无账号密码连接服务器(ssh, git))