凌峰创科服务平台

SSH如何登录Linux服务器?

SSH(Secure Shell)是一种加密的网络传输协议,用于在不安全的网络中为网络服务提供安全的传输环境,通过SSH登录Linux服务器,用户可以远程执行命令、传输文件,并进行系统管理,其安全性高、操作便捷,是运维人员和开发者的常用工具,以下是SSH登录Linux服务器的详细步骤、配置优化及注意事项。

SSH如何登录Linux服务器?-图1
(图片来源网络,侵删)

SSH登录的基本步骤

  1. 获取服务器信息
    需要准备Linux服务器的IP地址(或域名)、端口号(默认为22)、用户名(如root或普通用户)以及密码或SSH密钥。

  2. 使用SSH客户端登录

    • Windows系统:可使用PuTTY、Xshell等工具,在连接界面输入服务器IP、端口、用户名,选择“SSH”协议,点击连接后输入密码。
    • Linux/macOS系统:打开终端,使用命令ssh username@ip_address,例如ssh root@192.168.1.100,首次连接会提示确认主机指纹(输入yes),然后输入密码即可登录。
  3. 密钥登录(更安全)
    为避免密码泄露风险,推荐使用SSH密钥对登录。

    • 生成密钥:本地执行ssh-keygen -t rsa -b 4096,按提示生成公钥和私钥(默认存于~/.ssh/目录)。
    • 上传公钥:将公钥内容(id_rsa.pub)通过ssh-copy-id username@ip_address命令上传到服务器的~/.ssh/authorized_keys文件中。
    • 登录:之后无需密码,直接执行ssh username@ip_address即可登录。

SSH服务器的配置优化

为提升安全性和便利性,可修改SSH服务配置文件(/etc/ssh/sshd_config),以下是常用优化项:

SSH如何登录Linux服务器?-图2
(图片来源网络,侵删)
配置项 默认值 推荐值/修改说明
Port 22 修改为非默认端口(如2222),降低被扫描风险
PermitRootLogin yes 禁止直接root登录,设为no,改用普通用户 sudo提权
PasswordAuthentication yes 禁止密码登录,设为no,强制使用密钥对
MaxAuthTries 6 降低为3,防止暴力破解
UseDNS yes 设为no,加快连接速度
AllowUsers 限制允许登录的用户(如AllowUsers user1 user2

修改后保存文件,执行systemctl restart sshd重启服务。

常见问题及注意事项

  • 连接超时:检查服务器防火墙是否开放SSH端口(如iptables -I INPUT -p tcp --dport 22 -j ACCEPT),或确认网络连通性。
  • 权限错误:确保.ssh目录权限为700,authorized_keys文件权限为600,否则密钥登录可能失败。
  • 安全加固:定期更新SSH软件包(yum update openssh-serverapt update && apt upgrade openssh-server),禁用不必要的用户登录。

相关问答FAQs

Q1: 忘记SSH密码怎么办?
A1: 若使用密码登录且忘记密码,可通过控制台(如VNC)或物理登录服务器重置用户密码,若仅忘记SSH密码但记得root密码,可登录后修改目标用户密码;若为密钥登录且丢失私钥,需重新生成密钥对并更新服务器公钥。

Q2: SSH登录时提示“Permission denied (publickey,password)”如何解决?
A2: 此错误通常由权限问题或认证配置错误导致,检查步骤:1. 确认服务器/etc/ssh/sshd_configPasswordAuthentication是否为yes(若需密码登录);2. 检查本地私钥路径是否正确(默认~/.ssh/id_rsa);3. 验证服务器~/.ssh/authorized_keys文件是否包含正确的公钥,且权限设置正确(600)。

SSH如何登录Linux服务器?-图3
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇