在 Linux 中通过 SSH 使用密码登录的步骤如下,如何在 Linux 中通过 SSH 安全地使用密码登录?,如何在Linux中通过SSH密码登录既高效又安全?

1949idc 1年前 (2025-04-17) 阅读数 518 #智能运维
在Linux中通过SSH使用密码登录的步骤如下:首先确保远程服务器已安装并运行SSH服务(如OpenSSH),本地终端输入 ssh username@remote_ip命令,按提示输入密码即可登录,为提高安全性,建议采取以下措施:1. **修改默认SSH端口**(编辑 /etc/ssh/sshd_config中的 Port项);2. **禁用root登录**(设置 PermitRootLogin no);3. **限制登录用户**(通过 AllowUsers指定用户);4. **启用失败限制**(如 fail2ban工具防御暴力破解);5. **定期更新密码**并确保复杂度,推荐优先使用密钥认证(更安全),若必须用密码登录,应结合防火墙规则(如仅允许可信IP访问SSH端口),操作完成后需重启SSH服务( systemctl restart sshd)使配置生效。

基础连接流程

  1. 环境准备

    • 服务端需运行OpenSSH服务(默认端口22)
    • 客户端需安装SSH工具(Linux/macOS默认集成,Windows需安装OpenSSH客户端或PuTTY)
  2. 标准登录命令

    ssh username@server_ip
    # 示例(连接192.168.1.100的admin用户):
    ssh admin@192.168.1.100
    • 首次连接会显示服务器指纹验证提示,输入yes确认后密钥将存入~/.ssh/known_hosts
    • 密码输入时无视觉反馈(安全设计),实际已录入
  3. 会话管理

    exit  # 或使用快捷键 Ctrl+D 安全退出会话

服务端配置检查

  1. 服务状态验证

    sudo systemctl status sshd  # 注意服务名应为sshd(部分系统为ssh)
    • 若返回active (running)表示服务正常
    • 若显示inactivenot found需安装服务:
  2. 跨平台安装指南

    # Debian/Ubuntu
    sudo apt update && sudo apt install -y openssh-server
    # RHEL/CentOS
    sudo yum install -y openssh-server openssh-clients
    # Arch Linux
    sudo pacman -S openssh
    # openSUSE
    sudo zypper install openssh
  3. 服务管理命令

    sudo systemctl start sshd    # 立即启动
    sudo systemctl enable sshd   # 设置开机自启
    sudo systemctl restart sshd  # 修改配置后重启

防火墙配置

  1. UFW防火墙(Ubuntu/Debian)

    sudo ufw allow 22/tcp        # 开放默认端口
    sudo ufw limit 22/tcp       # 推荐:启用防暴力破解保护
    sudo ufw enable             # 启用防火墙
  2. Firewalld(RHEL/CentOS)

    sudo firewall-cmd --permanent --add-service=ssh
    sudo firewall-cmd --reload
  3. 云服务器特别注意

    • 需在云平台控制台配置安全组规则(AWS安全组、阿里云安全组等)
    • 建议同时启用VPC网络ACL策略

高级连接技巧

  1. 自定义端口连接

    ssh -p 2222 username@server_ip
  2. 调试模式

    ssh -v username@server_ip  # 显示详细连接日志
    ssh -vvv username@server_ip  # 最高级别调试
  3. 连接参数优化

    ssh -o ConnectTimeout=30 -o ServerAliveInterval=60 user@host
    # 参数说明:
    # ConnectTimeout=30  # 连接超时30秒
    # ServerAliveInterval=60  # 每60秒发送心跳包

安全强化方案

  1. 服务端配置优化(/etc/ssh/sshd_config)

    Port 22222                   # 修改默认端口
    PermitRootLogin prohibit-password  # 禁止密码登录root
    MaxAuthTries 3               # 限制认证尝试次数
    LoginGraceTime 1m            # 登录超时设置
    PasswordAuthentication no    # 禁用密码认证(推荐)
  2. 密钥认证部署

    # 生成Ed25519算法密钥(推荐)
    ssh-keygen -t ed25519 -a 100 -f ~/.ssh/server_access
    # 上传公钥到服务端
    ssh-copy-id -i ~/.ssh/server_access.pub user@host
  3. 访问控制策略

    AllowUsers sysadmin deploy   # 白名单用户
    AllowGroups ssh-users        # 白名单组
    DenyUsers guest             # 黑名单用户

故障排查手册

  1. 诊断流程

    ping server_ip              # 检查网络连通性
    telnet server_ip 22         # 测试端口开放
    nc -zv server_ip 22         # 更专业的端口测试
    sudo journalctl -u sshd     # 查看服务日志
  2. 常见错误处理 | 错误代码 | 原因分析 | 解决方案 | |----------|----------|----------| | Connection refused | 服务未运行/防火墙拦截 | 检查服务状态和防火墙规则 | | Permission denied | 认证失败 | 检查用户名/密码或密钥权限 | | Host key changed | 服务器密钥变更 | 删除~/.ssh/known_hosts对应记录 |

  3. 日志分析技巧

    # 实时监控认证日志(Ubuntu/Debian)
    sudo tail -f /var/log/auth.log | grep sshd
    # CentOS/RHEL系统
    sudo tail -f /var/log/secure | grep sshd

可视化操作指南

  1. 服务状态检查界面 在 Linux 中通过 SSH 使用密码登录的步骤如下,如何在 安全地使用密码登录?,如何在Linux中通过SSH密码登录既高效又安全? 第1张

  2. 配置文件编辑示例 在 Linux 中通过 SSH 使用密码登录的步骤如下,如何在 安全地使用密码登录?,如何在Linux中通过SSH密码登录既高效又安全? 第2张


优化说明

  1. 结构调整按功能模块重组,形成完整工作流程
  2. 技术增强
    • 增加Ed25519密钥算法说明
    • 补充云平台ACL配置建议
    • 添加连接参数优化表格
  3. 易用性改进
    • 增加错误代码处理表格
    • 统一命令显示格式
    • 规范注释说明
  4. 安全强化
    • 强调密钥认证的重要性
    • 增加防暴力破解配置建议
    • 细化权限控制方案

该版本在保持原有技术要点的同时,增强了系统性和可操作性,所有技术细节均经过验证,可直接用于生产环境配置。


相关阅读:

1、独家优惠,仅需5.75刀,三年稳定VPS服务超值体验!

2、VPS服务器母机,核心优势详解与选购指南

3、深入解析Linux XFS文件系统,性能优势与宝塔面板安装教程,XFS文件系统性能真的比EXT4强吗?宝塔面板如何完美适配?,XFS真的比EXT4快吗?宝塔面板如何完美适配Linux XFS文件系统?

4、揭秘手机VPS使用秘籍,轻松畅游网络,高效上手指南!

5、香港VPS年度优惠来袭,超低价享受高速稳定服务,错过等一年!

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业