下面是关于“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
这样,只有bob
和alice
用户可以使用SSH登录服务器。
六、示例2:允许使用指定的密钥登录
使用AuthorizedKeysFile
配置项,可以指定允许使用的公钥文件路径。
例如:
# 在/etc/ssh/sshd_config文件中添加如下配置
AuthorizedKeysFile /etc/ssh/authorized_keys/%u
这样,只有在/etc/ssh/authorized_keys
目录中存在用户名为%u的文件,并且其中包含了有效的公钥,才可以登录服务器。
以上就是关于“Linux ssh服务器配置代码实例”的完整攻略了,希望能对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux ssh服务器配置代码实例 - Python技术站