关键词

Linux ssh服务器配置代码实例

下面是关于“Linux ssh服务器配置代码实例”的完整攻略。

一、准备工作

在开始配置Linux ssh服务器之前,需要确保你的系统中已经安装了ssh服务。你可以通过如下命令查看是否安装:

$ which sshd

如果返回结果为/usr/sbin/sshd,则说明已经安装了sshd服务。

如果没有安装,则可以通过如下命令安装:

$ sudo apt-get install openssh-server

二、修改配置文件

在安装好ssh服务之后,我们需要对ssh服务器进行配置。配置文件位于/etc/ssh/sshd_config

默认情况下,该文件的权限为600,我们需要使用root用户身份打开该文件进行编辑:

$ sudo vim /etc/ssh/sshd_config

下面是一些可供参考的配置项:

# 设置SSH端口号
Port 22

# 禁止root用户使用SSH登录
PermitRootLogin no

# 允许身份验证方式
# 可选值:password/publickey/keyboard-interactive
# 可以选择多个方式,中间用空格分隔
# 推荐只选择publickey方式,提高安全性
AuthenticationMethods publickey

# 允许使用的加密算法
KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256

# 允许使用的mac算法
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512,umac-128-etm@openssh.com,umac-256-etm@openssh.com,umac-128@openssh.com

注意:以上内容仅供参考,具体的配置项根据自己的需求和实际情况而定。

三、重启ssh服务

完成修改操作之后,我们需要重启ssh服务,使得新的配置生效:

$ sudo systemctl restart ssh

四、防火墙开放ssh服务端口

如果你的系统中启用了防火墙,你需要开放ssh服务所使用的端口(默认为22)。

以iptables为例(如果你使用的是ufw或者firewalld等其他防火墙软件,请自行搜索相关命令):

$ sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

完成以上步骤之后,就可以通过ssh协议连接到Linux服务器了。

例如,在另一台机器上可以通过如下命令连接到Linux服务器:

$ ssh username@server_ip

其中,username为登录用户名,server_ip为Linux服务器的IP地址或者域名。

五、示例1:允许指定用户使用SSH登录

使用AllowUsers配置项,可以允许指定用户使用SSH登录。

例如:

# 在/etc/ssh/sshd_config文件中添加如下配置
AllowUsers bob alice

这样,只有bobalice用户可以使用SSH登录服务器。

六、示例2:允许使用指定的密钥登录

使用AuthorizedKeysFile配置项,可以指定允许使用的公钥文件路径。

例如:

# 在/etc/ssh/sshd_config文件中添加如下配置
AuthorizedKeysFile      /etc/ssh/authorized_keys/%u

这样,只有在/etc/ssh/authorized_keys目录中存在用户名为%u的文件,并且其中包含了有效的公钥,才可以登录服务器。

以上就是关于“Linux ssh服务器配置代码实例”的完整攻略了,希望能对你有所帮助。

本文链接:http://task.lmcjl.com/news/3404.html

展开阅读全文