Secure Shell (SSH) 是一个网络协议,它主要被用来加密客户端和服务端之间的连接。 在客户端和服务端的每一次交互都被加密。 这个教程解释了如何在 Ubuntu 机器上启用 SSH。 启用 SSH 将会允许你远程连接到你的系统,并且执行管理员任务。你将能够通过 scp和sftp安全传输文件。 一、 在 Ubuntu 上启用 SSH默认情况下,当 Ubuntu 最初被安装的时候,通过 SSH 进行远程访问是不被允许的。在 Ubuntu 上启用 SSH 非常的简单直接。 以 root 或者其他 sudo 用户身份执行下面的步骤,在你的 Ubuntu 系统上安装并且启用 SSH。 01.使用Ctrl+Alt+T打开终端,并且安装openssh-server软件包:
) C0 m# m1 h- L% _4 ~ u3 e+ t ~6 A# {* I4 \5 b1 i
sudo apt update! c/ j5 J2 i* w6 a
: Z% s. a/ h) `4 t3 ]5 O
- d& ?1 I% a( |. F
; _0 K7 y- v" [6 B+ ?
sudo apt install openssh-server
& [& ^) K' D: }9 h3 g3 V; x$ X; c
5 U4 B/ w, [8 a0 Z! U7 u j
& ~( l0 f5 q" m
当被提示时,输入你的密码并且按 Enter,继续安装。 
02.一旦安装完成,SSH 服务将会被自动启动。你可以验证 SSH 是否正在运行,输入: sudo systemctl status ssh输出将会告诉你服务正在运行,并且启用开机启动: - 1 V8 ~7 W! K$ x/ {5 f
# o" O& N& J$ d7 @6 ]! i0 Q$ x, h
● ssh.service - OpenBSD Secure Shell server* [& a& ~7 J) g, Y
# ?& w S; d! f U, o k
7 Q3 i' T J( d+ C% S# K9 @
! g* m/ r( }2 J% X% k+ b Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
% {9 Z y X8 f
2 w7 N4 O V u- ( L, F, U* y0 J- d
7 n3 I2 w- Q; H8 u: O8 B
Active: active (running) since Mon 2020-06-01 12:34:00 CEST; 9h ago2 M ?0 B) j; o
2 k& R" z) m9 M" m+ R) [, ~
- ; \* C- s' `4 J) _* b
) c8 q* l3 s7 n/ |' ~! H( D...
2 z, _& A ^* \3 X( A+ v6 E! y
! O( J; L6 h2 L+ |+ r2 m! r- n0 W+ W% d% s1 k
按q返回命令行。 03.Ubuntu 自带一个配置防火墙配置工具,称为 UFW。如果防火墙在你的系统上被启用,请确保打开了 SSH 端口: sudo ufw allow ssh就这些。现在你可以从任何远程机器上通过 SSH 连接到你的 Ubuntu 系统。Linux 和 macOS 系统默认都安装了 SSH 客户端。想要从一个 Window 机器上连接,使用一个 SSH 客户端,例如:PUTTY。 二、连接到 SSH 服务器想要在局域网内连接到你的 Ubuntu 机器,以下面的格式输入 ssh 命令,加上用户名和 IP 地址。 ssh username@ip_address确保你将`username`修改成你自己的用户名,`ip_address`修改成你安装了 SSH 的 Ubuntu 机器的 IP 地址。如果你不知道你的 IP 地址,你可以使用ip命令轻易地找到它: ip a
你可以从输出中看到,系统 IP 地址是10.0.2.15。 一旦你找到 IP 地址,通过运行下面的ssh 命令登录远程机器: ssh linuxize@10.0.2.15当你第一次连接时,你将看到下面的信息:
( C1 S# P$ ^8 F, J5 k6 r
: t `$ o) [7 `5 VThe authenticity of host '10.0.2.15 (10.0.2.15)' can't be established.* V7 M7 k! V1 M& z
v: L8 ?$ B$ b! ^. Y! `
- # \- `5 r3 G7 c7 T u/ Z. G" K X
- H. a5 G4 t6 h+ @( z
ECDSA key fingerprint is SHA256:Vybt22mVXuNuB5unE++yowF7lgA/9/2bLSiO3qmYWBY.6 T2 E. j" }7 f8 d/ f! [# D
& h, S# _5 o4 _6 u
- 0 Q6 n9 u8 d. }( ?9 A+ S3 r
# W! e& u& F% {5 ]# X4 n9 }' `Are you sure you want to continue connecting (yes/no)?
2 ~/ ?: Z# J$ N- r- B9 W9 e! \. B& H C" {1 I( x
, C7 a% _$ K% w1 q# e
输入yes并且你将会被提示输入你的密码:
$ ^. F* Y7 b8 V% M( ~9 ~1 r5 d/ j) X, r9 S5 D. B5 ^( K$ f
Warning: Permanently added '10.0.2.15' (ECDSA) to the list of known hosts.
; j7 M! a$ I8 z1 d
. |$ D, y X) R4 h. ]
9 u( k- t4 h5 l7 ]( j8 Q: s: e3 R# {, |3 F
linuxize@10.0.2.15's password:# A2 J3 T; \1 h
" n: z. i7 q) m1 H4 r3 F8 W( T
( {2 R. e; I3 a J/ z
一旦你输入密码,你将会看到默认的 Ubuntu 消息:
) U5 y) u2 j8 Y1 B, y
; c! q( E; j, o1 ?2 T, _Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-26-generic x86_64)
& W( J4 N: n0 b" P. s. k! x0 [- q) J9 r C7 P' [8 G
- 8 Z& h& {5 R: e
( O/ X/ `/ J! S Z0 F% U4 p
* h+ g- N3 G& l/ ~ _" v, D
$ {* n4 Q; @( k/ P - ) x- a% v, Z9 `, T$ i' i4 u
! j. n5 A; J5 k+ Q( u9 n
* Documentation: https://help.ubuntu.com
5 F0 D, }. O1 M9 a" w% X) L( j- g7 B3 w
- % i# Q. s# N' G: @( F; \+ X
8 W- {/ [. `# {/ s, v1 @ * Management: https://landscape.canonical.com
, z7 [$ L7 b/ V5 m+ A, v( V7 E- k5 H6 e& Q9 b8 A' p8 \
- 2 L, R6 o: D( l5 d o
& n6 _6 C& f4 R# u+ u: d
* Support: https://ubuntu.com/advantage h+ `- Q1 \# f0 V6 H, J+ d
8 m, H, ~2 t* ~* g8 l) H" k
$ j7 K) q7 B& ]
" K; `/ Z' j" f...
' ~/ n4 [8 e, F
2 |: s7 p% \: ^( G3 t- ]
* Q- V- \7 g& P& K
现在你可以登录到你的 Ubuntu 机器上。 三、连接到 NAT 后面的 SSH想要通过互联网连接到你的 Ubuntu 机器,你需要知道你的公网 IP 地址,并且配置你的路由器接收端口22的数据,并且发送它到正在运行 SSH 的 Ubuntu 机器。 想要获取你尝试通过 SSH 连接的机器的公网 IP,在这个机器上访问 URL 地址:https://api.ipify.org。 当设置端口转发时,每一个路由器都有不同的方式来设置端口转发。你应该参考你的路由器文档,关于如何设置端口转发的信息。简单来讲,你应该输入之前设置的 SSH 端口号 22,以及之前服务器的私有 IP 地址。 一旦你找到 IP 地址,配置你的路由器,输入: ssh username@public_ip_address如果你将你的机器暴露在互联网中,你最好采取一些安全措施。最基础的一个措施就是配置你的路由器接受一个非标准端口的 SSH 流量,并且转发到你运行 SSH 服务的机器的端口22。 你也可以设置 SSH 密钥公钥验证方式,之后你就可以不使用密码就可以连接到你的 Ubuntu 机器上了。 四、在 Ubuntu 上禁用 SSH想要在你的 Ubuntu 系统上禁用 SSH 服务器,简单停止 SSH 即可,输入: sudo systemctl disable --now ssh稍后,你可以重新启用,输入: sudo systemctl enable --now ssh五、总结我们已经向你展示如何在你的 Ubuntu 20.04 上安装和启用 SSH。 现在你可以登录你的机器,并且通过命令行执行每天的 sysadmin 任务。 如果你管理多个系统,你可以通过将你的所有连接都定义在 SSH 配置文件中,来简化工作流程。修改默认的 SSH 端口将会使得你的系统更安全,减少自动攻击的风险。 想要获取更多如何配置你的 SSH 服务器 的信息,阅读 Ubuntu SSH 配置指南 和 官方 SSH 手册。 |