Secure Shell (SSH) 是一个网络协议,它主要被用来加密客户端和服务端之间的连接。 在客户端和服务端的每一次交互都被加密。 这个教程解释了如何在 Ubuntu 机器上启用 SSH。 启用 SSH 将会允许你远程连接到你的系统,并且执行管理员任务。你将能够通过 scp和sftp安全传输文件。 一、 在 Ubuntu 上启用 SSH默认情况下,当 Ubuntu 最初被安装的时候,通过 SSH 进行远程访问是不被允许的。在 Ubuntu 上启用 SSH 非常的简单直接。 以 root 或者其他 sudo 用户身份执行下面的步骤,在你的 Ubuntu 系统上安装并且启用 SSH。 01.使用Ctrl+Alt+T打开终端,并且安装openssh-server软件包:
9 w, T$ [ A- B. _
. q- h$ D3 n: `2 d: f7 Jsudo apt update" g! _# A) E( y8 q' d3 K- \9 F, u
7 s) C( ]% U3 s
- ! N# {4 q' H7 X) N
" m7 C i# r+ f7 U3 e% M: @; l
sudo apt install openssh-server" x8 T" A& ~% z
: A/ y" P- }4 e. a; g
6 Q3 o3 G) }1 b% q7 w4 G
当被提示时,输入你的密码并且按 Enter,继续安装。 
02.一旦安装完成,SSH 服务将会被自动启动。你可以验证 SSH 是否正在运行,输入: sudo systemctl status ssh输出将会告诉你服务正在运行,并且启用开机启动: - ; L s. N1 U/ H; _5 L+ e( Z: W
! L+ i2 W: S9 \* f' O
● ssh.service - OpenBSD Secure Shell server
" e0 M% Q& R5 h2 Q2 y9 ~5 K% ^; P3 V' i; {* Z4 K4 z
2 S/ L5 \6 q: H% P- {6 K+ L/ L* h5 v$ S* v! C
Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)* F6 g: ]& Z6 u1 X
( c+ b( x1 B; k6 Q
# y2 n! ^7 I1 B% f6 K0 ?
O$ b! C2 q5 e3 v* c Active: active (running) since Mon 2020-06-01 12:34:00 CEST; 9h ago% m1 v% G! ?' d/ v% B( Z3 ^% |
" U- ^9 b/ p9 O- W- t8 f
- & D: l; F! t& X \! g# q% O
3 [# [$ f2 i! R# W. c, L...8 l3 V8 N. K; U6 E
5 Y, c. }! I3 `) ]3 Z- j8 K l8 ]$ A7 u2 J; _: d5 A. ?
按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当你第一次连接时,你将看到下面的信息:
$ s9 f9 n; F# q: n C- h6 z8 e; }3 @- U
The authenticity of host '10.0.2.15 (10.0.2.15)' can't be established.
; o G3 p6 e @3 h$ k- o; j' R9 b) }5 W8 @" O/ g
- % T/ s+ @ V* S! M
+ k( a9 A3 h" R1 V' y# pECDSA key fingerprint is SHA256:Vybt22mVXuNuB5unE++yowF7lgA/9/2bLSiO3qmYWBY.
`) _% Y/ P0 k7 p6 P, n0 Z' A$ q& ~
+ E0 y( p5 _% S- x3 \2 A7 |% S% z
3 V2 x' P6 ?8 s1 q r1 v0 K( A$ u0 J) C# V/ \/ C% B% {2 E+ G
Are you sure you want to continue connecting (yes/no)?6 O" H b; {# ]8 }
8 D2 Q$ n4 e2 F1 P! J, m. u+ B
, k5 ?# X- t3 M
输入yes并且你将会被提示输入你的密码:
( o& a9 n0 }8 j; K" S
5 @' W' F' G% D% s% [Warning: Permanently added '10.0.2.15' (ECDSA) to the list of known hosts./ P- {1 g5 z+ ?: z) \( \
9 X( L' E& b' h
- ) M1 l6 t% W" x( {0 P( C9 ?9 j
$ Q- M1 R; k3 S9 y# [linuxize@10.0.2.15's password:
* v: i; g6 j/ k# R/ w+ g
- J0 E' b6 ~2 m" P- y) V4 _- _, w
T( \$ s9 D' y
一旦你输入密码,你将会看到默认的 Ubuntu 消息: - 1 A U# a0 C) r [5 t
( y D0 X/ y( f- `6 N9 x' B4 e' K
Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-26-generic x86_64)3 H: R) D& }6 C" U) `
* B8 d8 y/ _8 f! B5 q% N, M
- m4 W# r |7 Q4 q# e6 l) b4 F; |" o6 l! h
" O: J% X# B( x6 i0 D6 v6 Y( e" A) K' d
3 {6 P7 q0 m- N3 C0 P! l6 [/ [' x
$ v2 o. R- @! i& ?) N
3 t6 w! l% W7 ^& U. h4 I * Documentation: https://help.ubuntu.com/ J/ M' _6 U# d) T1 a1 U: n2 O+ p
* W8 M2 g7 d& @/ s) H( Z, b
+ r/ T* V8 Y: p* J3 [; E6 V# l- |8 B$ v. {" }/ ?' ^. h0 V
* Management: https://landscape.canonical.com, @+ N3 v) [2 P+ i* a/ v
1 U: U, D' P% x9 Y- 0 { ~# g0 R! z. x2 {# n
# H6 g4 v H6 J4 z9 T& S* J5 ~3 p * Support: https://ubuntu.com/advantage
. a3 G* b/ m6 ~' V' P: |% `% c
4 Q. R2 _( x7 ~. W& M) _ - 2 W0 _+ h$ n* Y( k
# ^& Y2 a0 a. C8 i4 `# l; T0 s
..." K4 Y: a& F6 v5 C4 _6 x
# S; _; D& j2 U+ _3 l
/ D. j* ?) L. `, G% i, [
现在你可以登录到你的 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 手册。 |