Linux SSH配置详解:端口变更与密钥设置

需积分: 9 1 下载量 195 浏览量 更新于2024-09-20 收藏 423KB DOCX 举报
"这篇文档详细介绍了在Linux系统中配置SSH(Secure Shell)的过程,包括更改SSH端口和设置密钥对以实现加密连接。" 在Linux环境下,SSH(Secure Shell)是一种广泛使用的协议,用于安全地远程登录和管理服务器。SSH提供了一种加密的网络服务,确保数据传输的安全性。本配置说明主要涉及两个关键方面:SSH端口更改和密钥对设置。 **一、SSH端口更改** 默认情况下,SSH服务监听在22端口。为了提高安全性,通常建议更改默认端口以避免被自动化扫描工具发现。以下是更改步骤: 1. **禁用ping响应**:首先,通过编辑`/etc/sysconfig/iptables`文件来禁止ping命令。在文件末尾添加`-A RH-Firewall-1-INPUT -p icmp -j DROP`,这会阻止ICMP回显请求(即ping请求)。 2. **修改SSH配置**:接下来,需要修改SSH服务的配置文件。有两个文件需要编辑:`/etc/ssh/ssh_config`(客户端配置)和`/etc/ssh/sshd_config`(服务器端配置)。在`sshd_config`文件中,找到`#Port 22`行,取消注释并将其更改为`Port 18400`。 3. **重启服务**:保存修改后,重启SSH服务以应用新的端口设置。执行命令`/etc/init.d/sshd restart`。 4. **开放防火墙端口**:最后,编辑`/etc/sysconfig/iptables`,打开18400端口,并重启防火墙服务。运行`/etc/init.d/iptables restart`以应用更改。 **二、SSH密钥设置** SSH密钥对的使用可以提供无密码登录,增强安全性。这里采用DSA(Digital Signature Algorithm)加密算法: 1. **生成密钥对**:在客户端,例如使用SecureCRT,通过`Tools` > `Create Public Key`生成密钥对。选择DSA算法,设定密钥长度(如1024位),并指定存储位置。 2. **转换密钥格式**:由于SecureCRT生成的密钥格式可能不兼容OpenSSH(服务器端通常使用OpenSSH),所以需要将密钥转换。在SecureCRT中,选择`Tools` > `Convert Private Key to OpenSSH Format`,输入原始密钥的密码,然后保存转换后的密钥。 3. **密钥部署**:客户端保留私钥(例如`Identity`),而服务器端放置公钥(例如`liu.pub`)。在服务器端的`~/.ssh/authorized_keys`文件中添加客户端的公钥,以便客户端可以通过私钥进行身份验证。 通过以上配置,Linux系统中的SSH服务不仅运行在非标准端口,而且采用了密钥对认证,极大地提高了系统的安全性和访问控制。请注意,修改系统配置后,应确保所有相关服务都能正常启动和运行,同时定期检查并更新SSH的安全策略,以应对潜在的安全威胁。