在Linux系统中,SSH(Secure Shell)是一种加密的网络传输协议,常被用于远程登录和管理服务器。本文将以Debian 11为例,详细介绍如何安装SSH服务,创建新用户并允许其通过SSH远程登录,以及如何进行SSH的安全登录配置。
一、安装SSH服务
首先,我们需要更新软件包列表并安装SSH服务。打开终端,依次输入以下命令:
sudo apt update
sudo apt install openssh-server
安装完成后,SSH服务将自动启动。你可以使用sudo systemctl status ssh
命令查看服务状态。
二、创建新用户并允许SSH远程登录
为了安全起见,我们通常不会直接使用root用户进行远程登录。接下来,我们将创建一个新用户,并设置其允许通过SSH远程登录。
-
创建新用户:
sudo adduser newuser
(将newuser替换为你想要的用户名) -
设置用户密码:
sudo passwd newuser
-
将用户添加到sudo用户组以获取管理员权限:
sudo usermod -aG sudo newuser
-
确保新用户允许SSH登录。默认情况下,新用户在创建时就已经允许SSH登录。但你可以通过编辑
/etc/ssh/sshd_config
文件来手动确认或修改这一设置。
三、SSH安全登录配置
为了增强SSH的安全性,我们可以进行以下配置:
-
禁用root用户远程登录:编辑
/etc/ssh/sshd_config
文件,找到PermitRootLogin
行,并将其设置为no
。 -
更改SSH默认端口:同样在
/etc/ssh/sshd_config
文件中,找到Port
行,并将其修改为你想要的端口号(例如:2222)。请注意,修改后你需要在远程登录时指定新的端口号。 -
使用公钥认证:为了进一步提高安全性,你可以设置SSH只接受公钥认证,禁用密码登录。这需要通过生成密钥对,并将公钥上传到服务器上特定用户的
~/.ssh/authorized_keys
文件中来实现。
完成上述配置后,重启SSH服务以使更改生效:sudo systemctl restart ssh
现在,你的Debian 11服务器已经配置好了SSH服务,并且进行了基本的安全设置。你可以使用新创建的用户通过SSH远程登录并管理你的服务器了!