在Linux系统中,SSH(Secure Shell)是一个非常重要的服务,可以进行远程登录、执行远程命令等操作。CentOS 7是目前广泛使用的Linux发行版之一,下面我们就来介绍一下如何在CentOS 7中配置SSH服务。

在CentOS 7中,默认情况下是没有安装SSH服务的,因此需要先安装OpenSSH。我们可以使用以下命令来安装:

yum install openssh-server

安装完成后,使用以下命令可以启动SSH服务:

systemctl start sshd

如果想要在系统启动时自动启动SSH服务,则可以使用以下命令:

systemctl enable sshd

默认情况下,SSH服务已经可以正常使用,但是为了安全起见,我们需要进行一些配置。

更改SSH默认端口

为了增强系统安全性,在使用SSH服务时,建议更改SSH默认端口。可以编辑SSH配置文件/etc/ssh/sshd_config,在其中修改Port指令的值即可。例如,将SSH端口改为2222:

Port 22

Port 2222

修改完成后,需要重启SSH服务:

systemctl restart sshd

禁止SSH Root登录

为了增加系统安全性,SSH登录时禁用root用户登录。可以设置PermitRootLogin属性为no,方法同样是在/etc/ssh/sshd_config文件中修改:

PermitRootLogin yes

PermitRootLogin no

禁止SSH密码登录

SSH密码登录存在一定的安全风险,因此在生产环境中建议使用SSH密钥登录。可以设置PasswordAuthentication属性为no来禁止密码登录,同样在/etc/ssh/sshd_config文件中修改:

PasswordAuthentication yes

PasswordAuthentication no

修改完成后,需要重启SSH服务:

systemctl restart sshd

在禁用SSH密码登录之后,需要为用户生成SSH密钥。可以使用以下命令来为用户生成SSH密钥:

ssh-keygen

会提示输入密钥文件的保存路径,默认即可。然后可以选择设置密码,也可以直接回车跳过。密钥生成完成后,会在用户主目录下生成.ssh目录,其中包含密钥文件。

使用SSH密钥登录需要在客户端将公钥添加到服务器的授权文件中。可以使用以下命令将公钥添加到服务器的授权文件中:

ssh-copy-id user@server

其中user是需要登录的目标用户,server是目标服务器的IP地址或域名。

添加公钥完成后,使用以下命令即可通过SSH密钥登录:

ssh user@server -p port -i ~/.ssh/id_rsa

其中,端口号和密钥文件路径需要根据实际情况进行修改。

在CentOS 7中配置SSH服务需要安装OpenSSH,同时进行相关的配置,如更改SSH默认端口、禁用SSH Root登录、禁用SSH密码登录。为了增加系统安全性,生产环境中建议使用SSH密钥登录。

最后修改:2023 年 06 月 10 日
喜欢就用赞赏来鞭打我吧~