SSH 配置详解

时间:2022-04-29
本文章向大家介绍SSH 配置详解,主要内容包括无密码登录、Ubuntu、配置、解决自动断开、相关链接、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

本文详细介绍了 SSH 的配置。

无密码登录

# 产生公钥与私钥对

$ ssh-keygen

# 按三次回车键
# 将本机的公钥 id_rsa.pub 复制到远程机器的 ~/.ssh/authorized_keys 文件中

$ ssh-copy-id user@ip

Ubuntu

SSH 分客户端 openssh-client 和服务端 openssh-server 如果你只是想登陆别的机器只需要安装客户端

$ sudo apt install openssh-client

如果要使本机开放 SSH 服务就需要安装服务端

$ sudo apt install openssh-server

然后确认 SSH 服务端是否启动了:

$ ps -e |grep ssh

如果看到 sshd 那说明 SSH 服务端已经启动了,如果没有则可以这样启动:

$ sudo /usr/sbin/sshd

配置

ssh-server 配置文件位于 /etc/ssh/sshd_config 在这里可以定义 SSH 的服务端口,默认端口是 22,你可以自己定义成其他端口号。

不允许密码登录,只允许公钥登录

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication no
#PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no

配置文件中上诉两项改为 no,之后重启 sshd 服务。现在我们在一台不带信任 key 的机器尝试登录,那么会提示如下信息:

⋊> ~ ssh ubuntu@123.206.62.18
Permission denied (publickey).

解决自动断开

服务端设置环境变量 TMOUT=0,在客户端 ~/.ssh/config 文件中进行如下配置:

Host *
     ServerAliveInterval 60

相关链接