HCRM博客

如何在CentOS 7上配置SSH服务?

CentOS 7的SSH配置是一个常见的系统管理任务,用于确保服务器可以通过安全外壳协议(SSH)进行远程访问和管理,以下是关于如何在CentOS 7上安装、配置和启动SSH服务的详细步骤:

查看SSH是否已安装

1、检查SSH包:使用命令rpm qa | grep ssh来检查系统中是否已经安装了SSH相关的软件包,如果显示结果中有opensshserver、opensshclients等软件包,则说明SSH服务已安装,如果没有,则需要继续下一步安装。

如何在CentOS 7上配置SSH服务?-图1
(图片来源网络,侵权删除)

2、安装SSH服务:若未安装SSH服务,可以使用命令yum install opensshserver来安装,在安装过程中,根据提示选择“y”以确认安装。

配置OpenSSH服务

1、编辑sshd_config文件:使用文本编辑器(如vi或vim)打开/etc/ssh/sshd_config文件,这是SSH服务的主配置文件,其中包含了各种参数设置。

2、常见配置选项

Port: 设置SSH的端口号,默认为22。

Protocol: 启用SSH版本2协议,提高安全性。

ListenAddress: 设置服务监听的地址,0.0.0.0表示监听所有地址。

如何在CentOS 7上配置SSH服务?-图2
(图片来源网络,侵权删除)

PermitRootLogin: 设置是否允许Root用户登录,出于安全考虑,建议设置为no。

PasswordAuthentication: 设置是否允许密码验证,可以根据需要启用或禁用。

RSAAuthenticationPubkeyAuthentication: 设置是否允许使用密钥对进行身份验证。

3、保存并退出编辑器:完成配置后,保存更改并退出编辑器。

重启SSH服务

使用命令service sshd restartsystemctl restart sshd来重启SSH服务,使新配置生效。

防火墙设置

如果系统启用了防火墙,需要确保防火墙允许SSH服务的通信,可以使用以下命令开放22端口(SSH默认端口):

如何在CentOS 7上配置SSH服务?-图3
(图片来源网络,侵权删除)
firewallcmd zone=public addport=22/tcp permanent
firewallcmd reload

测试远程连接

在客户端机器上,使用SSH命令连接到服务器,格式如下:

ssh username@server_ip_address

将username替换为实际用户名,server_ip_address替换为服务器的实际IP地址,输入正确的用户名和密码后,应能成功连接到服务器。

FAQs

1、问题一:如何修改SSH的默认端口?

回答:要修改SSH的默认端口(例如从22改为8112),请按照以下步骤操作:

编辑/etc/ssh/sshd_config文件。

找到Port一行,将其值更改为所需的新端口号(例如8112)。

保存更改并退出编辑器。

重启SSH服务以使新配置生效。

如果更改了端口号,还需要在防火墙中开放相应的新端口。

2、问题二:如何限制只有特定用户可以远程登录?

回答:要限制只有特定用户可以远程登录,请按照以下步骤操作:

编辑/etc/ssh/sshd_config文件。

找到AllowUsers一行,将其值更改为允许登录的用户名列表(用空格分隔),允许用户xiaoli和xiaozhang登录,可以设置为AllowUsers xiaoli xiaozhang

如果需要进一步限制用户的登录源IP地址,可以使用AllowUsers后跟用户名和IP地址的组合,仅允许用户xiaozhang从IP地址192.168.1.2登录,可以设置为AllowUsers xiaoli xiaozhang@192.168.1.2

保存更改并退出编辑器。

重启SSH服务以使新配置生效。

分享:
扫描分享到社交APP
上一篇
下一篇