Ju Zi's blog

Back

连接Linux服务器#

步骤#

  1. 进入用户目录:cdcd /home/xxx
  2. 创建.ssh文件夹:mkdir .ssh
  3. 修改.ssh文件夹权限为700chmod 700 .ssh
  4. 进入.ssh文件夹:cd .ssh
  5. 创建或编辑authorized_keys文件:vi authorized_keys,将公钥添加到文件末尾。
  6. 修改authorized_keys权限为600chmod 600 authorized_keys
  7. 修改sshd服务配置文件,允许公钥登陆:sudo vi /etc/ssh/sshd_config
# 允许私钥登陆
PubkeyAuthentication yes
# 指定私钥文件
AuthorizedKeysFile .ssh/authorized_keys
plaintext
  1. 重启sshd服务:systemctl restart sshd.service

若进行了以上操作仍然提示失败,则可使用命令ssh -Tv $server_ip进行调试。

如果是CentOS6.x的系统,还需要关闭SeLinux才能正常登录。

sshd_config配置说明#

https://www.freebsd.org/cgi/man.cgi?sshd_config(5)

服务器host key变化导致连接失败#

若服务器重装了系统,或者有硬件变化,则可能会导致host key变化,此时客户端通过ssh连接时会出现如下报错:

解决方法:去.ssh/known_hosts下删除服务器对应的host key或者执行如下命令: ssh-keygen -R [xxx.com]:57522

连接GitHub#

  1. 登录GitHub
  2. 点右上角的头像,选择Settings
  3. 点左侧Access栏里的SSH and GPG keys
  4. 点右侧New SSH key
  5. Title填写该密钥的名字(通过该名字来区分密钥,因为添加后是看不到公钥内容的)。
  6. Key type保持默认的Authentication Key就好。
  7. Key填写公钥的内容,即xxx.pub里面的。
  8. 最后点Add SSH key即可。

参考:https://docs.github.com/zh/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account

连接GitLab#

  1. 登录GitLab。
  2. 点右上角的头像,选择编辑个人资料
  3. 点左侧SSH密钥
  4. 密钥填写公钥的内容,即xxx.pub里面的。
  5. 标题填写该密钥的名字(通过该名字来区分密钥,因为添加后是看不到公钥内容的)。
  6. 到期时间如果不选,则会一直有效。
  7. 最后点添加密钥即可。

参考:https://docs.gitlab.com/ee/user/ssh.html#add-an-ssh-key-to-your-gitlab-account

SSH密钥登陆Linux服务器
https://astro-pure.js.org/blog/os/linux/ssh-key-login-server
Author Ju Zi
Published at May 28, 2020
Comment seems to stuck. Try to refresh?✨