SSH(Secure Shell)是一种网络协议,用于在不安全的网络上安全地执行命令和传输数据,SSH服务器是运行SSH服务的计算机,它允许用户通过SSH客户端连接到服务器并执行远程命令,在本教程中,我们将介绍如何设置SSH服务器。
1. 安装SSH服务器软件
我们需要在服务器上安装SSH服务器软件,对于基于Debian的系统(如Ubuntu),可以使用以下命令安装:
sudo apt-get update sudo apt-get install openssh-server
对于基于RPM的系统(如CentOS、Fedora),可以使用以下命令安装:
sudo yum install openssh-server
2. 配置SSH服务器
安装完成后,我们需要对SSH服务器进行基本配置,主要配置文件位于/etc/ssh/sshd_config
,使用文本编辑器打开该文件:
sudo nano /etc/ssh/sshd_config
以下是一些常用的配置选项:
Port
:设置SSH服务器监听的端口号,默认为22,为了提高安全性,建议更改为其他非标准端口。
PermitRootLogin
:设置是否允许root用户通过SSH登录,建议设置为no
。
PasswordAuthentication
:设置是否允许密码认证,建议设置为no
,改为使用密钥认证。
PubkeyAuthentication
:设置是否允许公钥认证,建议设置为yes
。
AllowUsers
:设置允许登录的用户列表,多个用户名用空格分隔。
我们可以将端口号更改为2222,禁止root用户登录,启用公钥认证:
Port 2222 PermitRootLogin no PasswordAuthentication no PubkeyAuthentication yes AllowUsers user1 user2 user3
保存并退出编辑器。
3. 生成SSH密钥对
为了实现公钥认证,我们需要在客户端和服务器上生成SSH密钥对,在服务器上执行以下命令生成密钥对:
sudo ssh-keygen -t rsa -b 4096 -f /etc/ssh/ssh_host_rsa_key -N "" -C "your_email@example.com"
按照提示操作,密钥对将生成在/etc/ssh/ssh_host_rsa_key
文件中,会生成一个私钥文件/etc/ssh/ssh_host_rsa_key.pub
和一个注释文件/etc/ssh/ssh_host_rsa_key.pub.comment
,请妥善保管私钥文件,不要泄露给他人。
4. 将公钥添加到授权列表
将服务器上的公钥添加到客户端的授权列表中,将公钥内容复制到客户端的~/.ssh/authorized_keys
文件中:
cat /etc/ssh/ssh_host_rsa_key.pub | pbcopy MacOS / Linux cat /etc/ssh/ssh_host_rsa_key.pub | xclip Linux / Windows(需要先安装xclip)
修改客户端的~/.ssh/config
文件,添加以下内容:
Host your_server_ip your_server_domain your_server_alias *.your_server_domain *:your_server_port your_server_ip:your_server_port your_server_ip:your_server_port22 your_server_ip:your_server_port2222 your_server_ip:your_server_port2223 your_server_ip:your_server_port2224 your_server_ip:your_server_port2225 your_server_ip:your_server_port2226 your_server_ip:your_server_port2227 your_server_ip:your_server_port2228 your_server_ip:your_server_port2229 your_server_ip:your_server_port2230 your_server_ip:your_server_port2231 your_server_ip:your_server_port2232 your_server_ip:your_server_port2233 your_server_ip:your_server_port2234 your_server_ip:your_server_port2235 your_server_ip:your_server_port2236 your_server_ip:your_server_port2237 your_server_ip:your
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/358426.html