1、什么SSH
SSH 协议基于客户端-服务器(server-client)(CS)架构。“服务器(Server)”允许“客户端(Client)”通过通信通道进行连接。该信道是经过加密的,信息交换通过 SSH 公私钥进行管理。
OpenSSH 是在 Linux、BSD 和 Windows 系统上提供 SSH 功能的最流行的开源工具之一。
2、Ubuntu配置SSH
前提
- 一个在服务器端拥有 sudo 权限的用户
- 可以下载所需包的互联网连接
- 在你的网络中至少有另一个系统。可以是局域网中的另一台电脑,远程服务器或者计算机中托管的虚拟机。
2.1 安装所需包
注意,在安装新的包或者软件前,要 更新你的 Ubuntu 系统,以确保运行的是最新版本的程序。
sudo apt update && sudo apt upgrade
你要运行 SSH 服务器的包由 OpensSSH 的 openssh-server 组件提供:
sudo apt install openssh-server
2.2 检查服务器状态
当你下载并安装完包后,SSH 服务器应该已经运行了,但是为了确保万无一失我们需要检查一下:
service ssh status
你还可以使用 systemctl 命令:
sudo systemctl status ssh
你应该会看到这样的结果,其中 active 是高亮的。输入 q 退出该页面
如果你的结果中 SSH 服务没有运行,使用这个命令运行它:
sudo systemctl enable --now ssh
2.3 允许 SSH 通过防火墙
Ubuntu 带有名为 UFW(简单的防火墙(Uncomplicated Firewall))的防火墙,这是管理网络规则的 iptables 的一个接口。如果启动了防火墙,它可能会阻止你连接服务器。
想要配置 UFW 允许你的接入,你需要运行如下命令:
sudo ufw allow ssh
连接远程服务器
你本地的 Linux 系统已经安装了 SSH 客户端。如果没有,你可以在 Ubuntu 中使用如下命令安装:
sudo apt install openssh-client
要连接你的 Ubuntu 系统,你需要知道它的 IP 地址,然后使用 ssh 命令,就像这样:
ssh username@address
将 用户名(username)改为你的系统上的实际用户名,并将 地址(address)改为你服务器的 IP 地址。
如果你 不知道 IP 地址,可以在服务器的终端输入 ifconfig查看结果。应该会看到这样的结果:
可以看到我的 IP 地址是 192.168.10.166。让我们使用 username@address 格式进行连接。
ssh book@192.168.10.166
这是你第一次连接到该 SSH 服务器,它会请求添加主机。输入 yes 并回车即可。
SSH 会立即告诉你该主机已经被永久添加了,并要求你输入指定用户的密码,输入密码并再次按回车即可。
关闭 SSH 连接
你只需要输入 exit 即可关闭连接,它会立马关闭不需要确认。
在 Ubuntu 中关闭并禁止 SSH
如果你想要停止 SSH 服务,需要运行该命令:
sudo systemctl stop ssh
该命令会关闭 SSH 服务,直到重启它或者系统重启。想要重启它,输入:
sudo systemctl start ssh
现在,如果你想要禁止 SSH 跟随系统启动,使用该命令:
sudo systemctl disable ssh
该命令不会停止当前的 SSH 会话,只会在启动的时候生效。如果你想要它跟随系统启动,输入:
sudo systemctl enable ssh
参考文章
https://zhuanlan.zhihu.com/p/577082732