在Linux上配置SSH(Secure Shell)服务通常涉及几个步骤,包括安装SSH服务器软件包、配置SSH服务器设置以及可能的网络设置。下面是配置SSH服务的基本指南。

第1步: 安装SSH服务器

需要安装OpenSSH服务器。大多数基于Debian或Red Hat家族发行版都预先装好了SSH服务器。为了确认,你可以执行以下检查命令:

linux配置ssh服务  第1张

对于基于Debian的系统:

bash

sudo aptget update && sudo aptget install opensshserver

linux配置ssh服务  第2张

对于基于RedHat的系统(如CentOS或RHEL),你需要运行:

bash

sudo yum install opensshserver

linux配置ssh服务  第3张

sudo dnf install opensshserver Fedora 30+

第2步: 检查/启动SSH服务

安装完SSH服务器后,可以使用相应的服务管理命令来启动和启用该服务(意味着下次启动时自动开启该服务)。

Debian / Ubuntu 系统可以使用以下命令:

bash

sudo service ssh start 启动SSH服务

linux配置ssh服务  第4张

sudo updaterc.d ssh defaults 启用自启动

或者通过 systemd 来处理:

bash

sudo systemctl enable ssh.service 开启自启动功能

linux配置ssh服务  第5张

sudo systemctl start ssh.service 执行启动

Redhat, CentOS 系统同样也可以切换到systemd:

bash

linux配置ssh服务  第6张

sudo systemctl enable sshd 同上,但服务名称通常是sshd而非ssh。

sudo systemctl start sshd

确保SSH服务已正常运行且处于活跃状态可以通过以下命令查看状态:

linux配置ssh服务  第7张

bash

sudo systemctl status sshd 或使用'ssh'而非'sshd'依赖具体的系统版本和服务名字

第3步: 配置防火墙设置以允许SSH访问

linux配置ssh服务  第8张

确保你的防火墙设置没有阻挡外部通过TCP的22号端口的SSH连接。这取决于你使用的防火墙工具,配置也可能不同。这里是一些基本示例。

如果使用的是ufw(简单而易用的前端工具用于Netfilter,常见的于Ubuntu中):

bash

linux配置ssh服务  第9张

sudo ufw allow ssh 允许通过标准端口号SSH

或者指明22端口的具体命令:

sudo ufw allow 22/tcp

若使用了firewalld(如某些版本的Redhat/CentOS中):

bash

sudo firewallcmd permanent addservice=ssh

sudo firewallcmd reload

linux配置ssh服务  第10张

确保根据实际使用情况进行相应调整,特别是在端口选择上的自定义,因为并非所有服务器都是默认开放22端口的(有时候为了安全性会改到另一非标准的22外数字,但请记得更改对应的配置文件)。

第4步: 配置SSH守护进程

SSH的服务配置文件一般位于`/etc/ssh/sshd_config`. 在编辑此文件以进行自定义设置前,请注意备份现有的配置文件。例如:

bash

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.old

vim /etc/ssh/sshd_config

linux配置ssh服务  第11张

编辑内容...

常见修改包括更改监听端口,禁用密码认证只允许key pair验证等增强安全性的方式。

完成编辑配置文件后,别忘记重新加载或重启服务使新配置生效:

bash

sudo service ssh reload

或使用新的系统管理机制:

linux配置ssh服务  第12张

sudo systemctl restart ssh

(如果服务名为"sshd"):

sudo systemctl restart sshd

这样基本上已经完成基础的SSH配置任务!