SSH相关的设置

在Ubuntu主机上安装SSH服务器

1
$ sudo apt-get install openssh-server

公钥认证

参见What is SSH Public Key Authentication?

ssh目录

1
2
3
4
5
6
7
8
9
10
11
# Windows
## system
C:\ProgramData\ssh\
## user
C:\Users\Foo\.ssh\

# Linux
## system
/etc/ssh/
## user
/home/foo/.ssh/

key文件

1
2
3
4
# private key
id_rsa
# public key
id_rsa.pub

ssh-keygen生成client的key pair

对public key授权

可以在client端执行ssh-copy-id命令;也可以在server端直接编辑~/.ssh/authorized_keys文件,加入client的public key。

WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

以前连接过的server端的key文件更新了,或者IP变化了,会出现这种情况。

  1. 可以用ssh-keygen -Rknown_hosts移除server的fingerprint。
  2. 然后用ssh-keyscan将新的fingerprint加入。
  3. 也可以直接修改known_hosts