Secure Shell (SSH) 是一个网络协议,它主要被用来加密客户端和服务端之间的连接。 在客户端和服务端的每一次交互都被加密。 这个教程解释了如何在 Ubuntu 机器上启用 SSH。 启用 SSH 将会允许你远程连接到你的系统,并且执行管理员任务。你将能够通过 scp和sftp安全传输文件。 一、 在 Ubuntu 上启用 SSH默认情况下,当 Ubuntu 最初被安装的时候,通过 SSH 进行远程访问是不被允许的。在 Ubuntu 上启用 SSH 非常的简单直接。 以 root 或者其他 sudo 用户身份执行下面的步骤,在你的 Ubuntu 系统上安装并且启用 SSH。 01.使用Ctrl+Alt+T打开终端,并且安装openssh-server软件包:
' U. x) j! i8 g8 n2 W' k
/ F4 i& n: v$ ]& tsudo apt update
# ^) q; W$ X( A! r. B5 b
/ G) [+ a3 K# _/ ?) [& Y6 ]
: r2 E. }/ o4 z+ z! m
5 i4 h( d4 @; {& Zsudo apt install openssh-server' G* V' T2 a# j5 m6 K. s" S
" ?- D: q1 U! V9 g5 J& n, Z4 N9 J! {9 H4 |
当被提示时,输入你的密码并且按 Enter,继续安装。 
02.一旦安装完成,SSH 服务将会被自动启动。你可以验证 SSH 是否正在运行,输入: sudo systemctl status ssh输出将会告诉你服务正在运行,并且启用开机启动:
: x0 R; T J; o1 G' V
! x, J& l. Y. j! a● ssh.service - OpenBSD Secure Shell server# V" @7 a R1 d' w3 Z8 e" x
8 U5 b, i7 `+ o. B; h$ r, u
- ; V/ H* s/ B8 I/ w
# D, z/ v& w* m" c
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
. s0 r# d9 o7 ]4 y- R' k" p0 d' V. @4 G# D4 L# c% w' i9 f
- # @, O6 {2 E$ a" r6 e
2 _5 ~: M4 s, p& G% ? Active: active (running) since Mon 2020-06-01 12:34:00 CEST; 9h ago9 v9 O& f$ |) |* A! T
$ S. d3 _% G- a
$ u$ ^* `( h% o
4 k% v/ F6 r# h1 w...
F' |. h* ^2 P( t2 D# m
2 D; P# u" H i5 x5 p z
6 O% z" E+ T/ i7 l+ S
按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当你第一次连接时,你将看到下面的信息: - $ b& J6 V2 S7 \" W
6 _5 s4 D `, J* r: V# |The authenticity of host '10.0.2.15 (10.0.2.15)' can't be established.
! O/ n+ Y+ F$ z2 A; D3 e
3 J/ e$ G A) M! o3 q
; y6 D( u5 c* x3 B- R7 ~1 [& M7 c/ J% Q' e
ECDSA key fingerprint is SHA256:Vybt22mVXuNuB5unE++yowF7lgA/9/2bLSiO3qmYWBY.
: r( W' t4 [7 r) n
! P& m$ O& n' E# N- # n; |4 l1 h2 w7 d. t
9 P( G4 o% W; P; ?
Are you sure you want to continue connecting (yes/no)?
% L# ]2 `" W _) c9 c" [8 f2 e' I0 f3 |( [
6 ]" \4 m2 t4 s9 r, ?; R. P* T8 i
输入yes并且你将会被提示输入你的密码:
7 A' C2 T3 Z+ k/ @9 R
+ k! V) m9 R# G% _8 p ?# |Warning: Permanently added '10.0.2.15' (ECDSA) to the list of known hosts.1 J/ u) k0 ^3 j* _' t. o- p
' X8 p p3 y) l* ^3 w, H7 {, D' Z- * G0 `; r6 W/ Z D. U2 W; V# d
4 ?' E. `# t4 b2 i! |
linuxize@10.0.2.15's password:/ M/ X( r" ~* N f3 X o
% {! w4 F* U. y+ O4 T
' S0 R0 L, U. K5 g
一旦你输入密码,你将会看到默认的 Ubuntu 消息: - 2 @/ t. X" r9 W( T& H' ~
* \/ G3 E M( e; B# oWelcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-26-generic x86_64)
& \, c0 ^7 j( l. s) R
0 k" m5 u0 ]- m! H$ j& V( m% M
8 o7 R" d3 x+ S6 ?4 q
3 s, g( K3 b' ]3 p5 B$ f5 D* e( ]+ i$ N- Q+ ?
; U8 M6 a* i9 f& T: }$ N4 m" S
- o$ _: P' k* i5 R
1 H( M0 Q' e' K* |5 ^# [0 Y4 k) Z# d
* Documentation: https://help.ubuntu.com+ i# B8 z; f# F9 @' Z. ]
$ @7 \7 u& U# f3 ]/ U; |
- o& V; {* T3 h4 ~- M1 [- c
/ @" W( c0 y0 E) f6 N; R7 ^! K * Management: https://landscape.canonical.com7 K+ ]( `6 L- |! S" U8 s% s. Z
5 C; @; V5 l; L/ L1 \6 t1 G
# ~3 I: @2 G( W& r6 [) H. L r3 a! p( r. z5 H3 |
* Support: https://ubuntu.com/advantage& M' Z2 d4 C0 l; Q
6 L/ i7 n$ b: w, R
6 A1 z {! M' \# y2 Y1 ~7 s/ a+ m. Y. G2 c
...1 v. k _$ t# l. ]8 r
- u; a* A& d( ? N! _' \# Y' p
% L: Q- ^$ O! \7 T
现在你可以登录到你的 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 手册。 |