|
Secure Shell (SSH) 是一个网络协议,它主要被用来加密客户端和服务端之间的连接。 在客户端和服务端的每一次交互都被加密。 这个教程解释了如何在 Ubuntu 机器上启用 SSH。 启用 SSH 将会允许你远程连接到你的系统,并且执行管理员任务。你将能够通过 scp和sftp安全传输文件。 一、 在 Ubuntu 上启用 SSH默认情况下,当 Ubuntu 最初被安装的时候,通过 SSH 进行远程访问是不被允许的。在 Ubuntu 上启用 SSH 非常的简单直接。 以 root 或者其他 sudo 用户身份执行下面的步骤,在你的 Ubuntu 系统上安装并且启用 SSH。 01.使用Ctrl+Alt+T打开终端,并且安装openssh-server软件包: - * A$ g, M. A8 [* B8 g+ a6 F
% L7 ]' ?% L7 \. _) Y! \
sudo apt update: a( ]- J% G2 U# q: O; x
& Q- ^/ C# ~: @4 H
2 }, j* H! y, \* t, U8 j+ y
/ P; v) R& P* i6 e" @" X, |8 @; isudo apt install openssh-server
- o! n6 |2 Q$ A- t. C/ ]$ ? W+ q3 v& E, B7 ?
8 H& X7 ^, \9 J2 @
当被提示时,输入你的密码并且按 Enter,继续安装。 
02.一旦安装完成,SSH 服务将会被自动启动。你可以验证 SSH 是否正在运行,输入: sudo systemctl status ssh输出将会告诉你服务正在运行,并且启用开机启动:
+ e9 o* L: e3 T4 g3 ?
) S" _. q0 w- Z+ f/ b0 X● ssh.service - OpenBSD Secure Shell server
" m" @7 l1 O' p8 h3 b* D0 B4 I/ _+ M2 ? c+ ~* n% g
- 8 M) l' ]/ U+ o* d, g' \
2 w' t$ s& a( s5 F5 \0 _
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)9 U0 y) b1 V: _. x5 D: e8 D: n; K
, h8 C; |# f% ?/ d
- # w% C; U0 {) C% V9 `) j' w2 i
) P" C; D5 E8 K; ]8 C
Active: active (running) since Mon 2020-06-01 12:34:00 CEST; 9h ago
4 C- O1 o9 t6 B
9 C+ y% D5 |# B) y. @
& O c$ D7 g& I' V2 g b U1 q
, W/ U z" x; g1 \# Q; e...
! ?" c3 `6 j$ c% e% I9 O
C" U# M$ n, w* h4 Q4 B$ a* q
( |" P+ ?4 u+ A( C. f9 l) {
按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当你第一次连接时,你将看到下面的信息:
' I& `) c5 o& C
( B& F2 |7 W/ V) z) gThe authenticity of host '10.0.2.15 (10.0.2.15)' can't be established.
% ^" }" g6 r; ?. n" u! L: R
' `6 s. D6 Z# \* e, K! P
, \ u, H/ P: d: ]6 P4 n% A+ u
6 N$ [0 M( b8 R" V F& WECDSA key fingerprint is SHA256:Vybt22mVXuNuB5unE++yowF7lgA/9/2bLSiO3qmYWBY.
3 Q0 [$ Q) v" t& j2 l, W
' W% D6 e! P, B3 V2 ]( E6 A% E- / _/ e' _4 y" ~( @
; Q: C7 d- b6 r- s& p8 H( z6 X7 dAre you sure you want to continue connecting (yes/no)?# ]) f; g, \* b, e3 {4 ?# s4 T( Z' q
3 F q* N7 |" [. b
1 S' A$ X# G" z* N' c
输入yes并且你将会被提示输入你的密码: - * H. |0 G) T3 z' M: l. c
% a/ ^ l$ L+ {Warning: Permanently added '10.0.2.15' (ECDSA) to the list of known hosts.: W# q- g3 D/ \6 Y+ Y; l1 z
7 j$ o0 X( @# C: c - 8 t: B( G# @6 v. W
% u+ n G6 g. O( l. J: k8 \linuxize@10.0.2.15's password:
3 S/ O5 j k- g4 s( i) e1 \3 k6 }# h8 N) ?6 n
% x- f: ?2 P& y9 N1 a
一旦你输入密码,你将会看到默认的 Ubuntu 消息: - E: |! T: ^2 z7 X. H0 H' U: ~9 N" U
" w8 E: d0 n: v" B+ uWelcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-26-generic x86_64)% a$ v2 \% j- f) @0 ?
. H S! J: c; g& h/ S: w0 t/ \
7 f! M j+ J5 c$ z* C5 T
J7 j1 ^* p) b \0 u
, [+ E9 @5 e; Q- u6 b1 s d2 c' r2 }# j- v+ Y. J- {' b/ G
- " G% y4 L3 P$ L' b" h
4 I8 `$ W! Y# h * Documentation: https://help.ubuntu.com
) ]6 j. K8 G4 G* ?
2 F3 z- T7 @& z& ~- u# o; p1 s- E8 D5 F - ) Y; S& i8 ], j, R% v
, c" v% F- M4 G+ g. ~' f * Management: https://landscape.canonical.com
0 j) F, M8 x5 G! \. l0 {4 B8 d
5 j- T2 F1 H5 L
2 N5 q @% d& W$ \# C. n( F8 s+ A* @/ ?9 t" X3 v3 s
* Support: https://ubuntu.com/advantage' y5 P7 q8 r/ l+ t. `
7 |6 h& d+ @# K. d
6 }/ F; K# v8 [" U! Y! Y1 R1 h! E$ ^# t Q) l
...
4 o1 w) P" T, c1 i$ p
, x3 j' {$ S" ]% f5 N, U6 i* [0 @# A0 K/ F; {4 j" @5 c k6 z
现在你可以登录到你的 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 手册。 |