1. 系统要求
在安装SSH服务之前,请确保您的系统满足以下要求:
Linux操作系统:本文以Linux系统为例,不同Linux发行版可能稍有不同,但大致思路相同。
系统管理员权限:您需要具有root或sudo权限,以便安装和配置SSH服务。
2. 安装OpenSSH服务器
OpenSSH是Linux系统上一种流行的SSH实现,我们可以通过以下步骤来安装它:
2.1. 更新软件源
在开始安装之前,我们先更新一下软件源,以确保安装的软件包是最新的。
sudo apt update
apt update命令将更新软件包列表,并获取可用的更新。
2.2. 安装OpenSSH服务器
要安装OpenSSH服务器,请运行以下命令:
sudo apt install openssh-server
此命令将安装OpenSSH服务器软件包。
2.3. 启动SSH服务
安装完成后,SSH服务将自动启动。如果没有启动,您可以手动启动它:
sudo systemctl start ssh
您还可以设置SSH服务在系统启动时自动启动:
sudo systemctl enable ssh
3. 配置SSH服务器
SSH服务器的默认配置文件位于/etc/ssh/sshd_config。
3.1. 修改SSH端口
默认情况下,SSH服务器监听端口22。为了增强安全性,我们可以将端口改为一个非标准端口。打开配置文件:
sudo nano /etc/ssh/sshd_config
找到以下行:
#Port 22
去掉行前的#并将端口改为您想要的端口号,例如:
Port 2222
注意:确保您选择的端口号未被其他服务使用,且不要选择过于常见的端口号。
保存并关闭文件后,重启SSH服务以使新配置生效:
sudo systemctl restart ssh
3.2. 禁用密码登录
为了增加安全性,建议禁用SSH密码登录,并启用密钥登录。
打开配置文件:
sudo nano /etc/ssh/sshd_config
找到以下行:
#PasswordAuthentication yes
将行改为:
PasswordAuthentication no
找到以下行:
#PubkeyAuthentication yes
确保行不被注释,如有需要,取消注释。如果该行不存在,请添加该行。
保存并关闭文件后,重启SSH服务以使新配置生效:
sudo systemctl restart ssh
4. 配置防火墙
如果您的系统运行了防火墙,您需要允许SSH流量通过防火墙。
4.1. 查看防火墙状态
如果您不确定是否运行了防火墙,并且使用的是UFW防火墙,您可以通过以下命令查看防火墙状态:
sudo ufw status
4.2. 允许SSH流量
如果防火墙未启用,您可以使用以下命令允许SSH流量:
sudo ufw allow 2222
这将允许端口2222上的SSH流量。
如果防火墙已启用,您可以使用以下命令添加一个规则允许SSH流量:
sudo ufw allow 2222
这将允许端口2222上的SSH流量。
最后,您可以通过以下命令启用防火墙:
sudo ufw enable
防火墙启用后,只有允许的流量能够通过。
5. 连接到SSH服务器
现在,您可以使用SSH客户端连接到您的SSH服务器了。
5.1. 使用用户名和密码连接
如果您禁用了密钥登录,您可以使用用户名和密码进行连接:
ssh username@server_ip -p 2222
其中,username是您的用户名,server_ip是SSH服务器的IP地址。
5.2. 使用密钥连接
如果您启用了密钥登录,您需要在连接之前先将公钥复制到SSH服务器上。
首先,在本地计算机上生成SSH密钥对:
ssh-keygen -t rsa
按照提示,选择密钥存储位置和密码。
接下来,在SSH服务器上创建一个.ssh目录(如果不存在):
mkdir ~/.ssh
然后将本地计算机上生成的公钥复制到SSH服务器上:
ssh-copy-id username@server_ip -p 2222
其中,username是您的用户名,server_ip是SSH服务器的IP地址。
完成后,您可以使用以下命令连接到SSH服务器:
ssh username@server_ip -p 2222
至此,您已成功安装并配置了SSH服务器。