首页 常识文章正文

如何在Ubuntu上安装和配置SSH

常识 2024年10月18日 15:21 88 筠巧

在现代的IT环境中,远程管理服务器是必不可少的一项技能,对于使用Linux系统的用户来说,SSH(Secure Shell)是一种安全的远程登录协议,允许用户通过网络连接到远程计算机并执行命令,本文将详细介绍如何在Ubuntu系统上安装、配置和使用SSH服务。

安装SSH

1、更新软件包列表

在开始安装之前,建议先更新系统的软件包列表,打开终端(可以通过快捷键Ctrl + Alt + T 打开),然后输入以下命令:

```bash

sudo apt update

```

2、安装OpenSSH服务器

Ubuntu默认没有安装OpenSSH服务器,要安装它,可以使用以下命令:

```bash

sudo apt install openssh-server

```

系统会提示你输入密码以确认安装操作,安装过程可能需要几分钟时间。

3、验证安装

安装完成后,可以通过以下命令检查SSH服务是否正在运行:

```bash

sudo systemctl status ssh

```

如果看到类似于以下输出,说明SSH服务已经成功启动:

```

● ssh.service - OpenBSD Secure Shell server

Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)

Active: active (running) since ...

```

配置SSH

1、编辑SSH配置文件

SSH的配置文件位于/etc/ssh/sshd_config,使用文本编辑器(如nanovim)打开该文件:

```bash

sudo nano /etc/ssh/sshd_config

```

2、常用配置选项

端口号:默认情况下,SSH使用22端口,为了增加安全性,可以更改默认端口号,找到#Port 22 行,取消注释并修改为其他端口号,例如2222

```bash

Port 2222

```

如何在Ubuntu上安装和配置SSH

禁止root登录:为了提高安全性,建议禁止root用户直接登录,找到#PermitRootLogin prohibit-password 行,修改为:

```bash

PermitRootLogin no

```

允许特定用户登录:如果希望只允许某些用户通过SSH登录,可以在配置文件中指定,允许用户johnalice 登录:

```bash

AllowUsers john alice

```

密钥认证:使用密钥认证可以进一步提高安全性,确保PubkeyAuthentication 被设置为yes

```bash

PubkeyAuthentication yes

```

3、保存并退出

使用Ctrl + O 保存文件,然后按Ctrl + X 退出编辑器。

4、重启SSH服务

修改配置文件后,需要重启SSH服务以使更改生效:

```bash

sudo systemctl restart ssh

```

生成和使用SSH密钥

1、生成密钥对

在客户端机器上生成SSH密钥对,打开终端,输入以下命令:

```bash

ssh-keygen

如何在Ubuntu上安装和配置SSH

```

按回车键接受默认文件位置和空密码,这将生成两个文件:~/.ssh/id_rsa(私钥)和~/.ssh/id_rsa.pub(公钥)。

2、将公钥复制到服务器

使用ssh-copy-id 命令将公钥复制到服务器:

```bash

ssh-copy-id -i ~/.ssh/id_rsa.pub user@server_ip

```

其中user 是你的用户名,server_ip 是服务器的IP地址。

3、测试连接

现在尝试通过SSH连接到服务器:

```bash

ssh user@server_ip -p 2222

```

如果一切正常,你应该能够无需密码直接登录到服务器。

防火墙配置

1、查看当前防火墙规则

使用ufw(Uncomplicated Firewall)查看当前的防火墙规则:

```bash

sudo ufw status

```

2、允许SSH端口

如果你在配置文件中更改了SSH端口,需要在防火墙中允许该端口,允许2222端口:

```bash

sudo ufw allow 2222/tcp

如何在Ubuntu上安装和配置SSH

```

3、启用防火墙

如果防火墙尚未启用,可以使用以下命令启用:

```bash

sudo ufw enable

```

常见问题及解决方法

1、无法连接到SSH服务器

- 确保SSH服务正在运行:sudo systemctl status ssh

- 检查防火墙规则:sudo ufw status

- 确认服务器的IP地址和端口号是否正确

2、权限问题

- 确保SSH配置文件的权限正确:sudo chmod 600 /etc/ssh/sshd_config

- 确保用户家目录和.ssh 目录的权限正确:

```bash

chmod 700 ~/.ssh

chmod 600 ~/.ssh/authorized_keys

```

3、密钥认证失败

- 确保公钥已正确添加到~/.ssh/authorized_keys 文件中

- 确保~/.ssh 目录和~/.ssh/authorized_keys 文件的权限正确

通过本文,你已经学会了如何在Ubuntu上安装和配置SSH服务,SSH不仅提供了安全的远程登录方式,还可以用于文件传输、端口转发等多种用途,希望这些步骤对你有所帮助,如果你有任何问题或建议,欢迎在评论区留言交流。

中盟盛世科技网 网站地图 免责声明:本网站部分内容由用户自行上传,若侵犯了您的权益,请联系我们处理,联系QQ:2760375052 版权所有:中盟盛世科技网:沪ICP备2023024865号-1