如何快速掌握SSH基础命令?

SSH命令用于远程安全登录服务器,基本格式:ssh 用户名@主机地址,首次连接需确认主机密钥;使用密钥认证更安全:ssh -i 私钥文件 用户@主机,传输文件用scp命令,退出会话输入exit

标准连接语法

ssh [用户名]@[服务器IP或域名] -p [端口号]
  • 示例
    ssh admin@203.0.113.25 -p 22
    • admin:远程服务器的用户名
    • 0.113.25:服务器IP地址(可替换为域名如 example.com
    • -p 22:指定SSH端口(默认22,若未修改可省略此参数)

关键参数详解

参数 作用 使用场景示例
-p 指定端口 ssh user@host -p 2222(非默认端口时)
-i 指定私钥文件 ssh -i ~/.ssh/id_rsa user@host(密钥登录)
-v 显示调试信息 ssh -v user@host(排查连接问题)
-C 启用压缩传输 ssh -C user@host(加速大文件传输)

密钥认证登录(推荐安全方式)

步骤

  1. 生成密钥对(本地操作):

    ssh-keygen -t ed25519  # 推荐算法,或使用 -t rsa

    默认保存到 ~/.ssh/id_ed25519(私钥)和 ~/.ssh/id_ed25519.pub(公钥)

  2. 上传公钥到服务器

    ssh-copy-id -i ~/.ssh/id_ed25519.pub user@host

    或手动复制公钥内容到服务器 ~/.ssh/authorized_keys 文件中

  3. 使用私钥连接

    ssh -i ~/.ssh/id_ed25519 user@host

常见问题排查

  1. 连接超时

    • 检查网络是否通畅:ping host
    • 确认防火墙放行SSH端口(默认22)
    • 服务器SSH服务状态:sudo systemctl status sshd
  2. 权限拒绝(Permission Denied)

    • 检查用户名/密码是否正确
    • 确认公钥已正确添加到服务器的 authorized_keys
    • 检查服务器文件权限:
      chmod 700 ~/.ssh
      chmod 600 ~/.ssh/authorized_keys
  3. Host Key验证错误
    若服务器重装系统导致密钥变更,删除本地旧记录:

    ssh-keygen -R [服务器IP]  # 更新known_hosts

安全最佳实践

  1. 禁用密码登录(密钥登录后):
    编辑服务器 /etc/ssh/sshd_config

    PasswordAuthentication no
    ChallengeResponseAuthentication no

    重启服务:sudo systemctl restart sshd

  2. 修改默认端口(减少暴力破解):

    Port 2222  # 在sshd_config中修改
  3. 使用Fail2ban
    自动封禁多次登录失败的IP地址


进阶技巧

  • 远程执行命令(不进入交互终端):

    ssh user@host "ls -l /var/log"
  • SSH隧道端口转发

    ssh -L 8080:localhost:80 user@host  # 本地8080映射到服务器的80端口
  • 配置文件简化~/.ssh/config):

    Host myserver
        HostName 203.0.113.25
        User admin
        Port 2222
        IdentityFile ~/.ssh/id_ed25519

    连接时只需:ssh myserver


引用说明基于OpenSSH 8.9官方文档、Linux man-pages及NIST安全配置指南(SP 800-123),密钥算法推荐参考NSA CNSA 2.0标准,端口安全实践依据CIS基准指南。


通过遵循上述步骤,您可安全高效地使用SSH管理远程服务器,建议定期更新OpenSSH版本并审计服务器配置以保障安全。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7740.html

(0)
酷番叔酷番叔
上一篇 2025年7月17日 20:23
下一篇 2025年7月17日 20:42

相关推荐

  • git命令里怎么复制

    Git中复制可通过git clone [仓库地址]命令将远程仓库复制到本地,也可

    2025年8月19日
    1700
  • 数据库中如何用命令设置外键的操作步骤?

    在数据库管理中,外键(Foreign Key)是用于建立两个表之间关联的重要约束,它能确保表间数据的引用完整性,避免出现“孤立数据”,通过命令设置外键需要明确被引用表的主键或唯一键,以及当前表中外键列的规则,具体操作因数据库类型略有差异,但核心逻辑一致,以下以MySQL为例,详细说明外键的设置步骤和语法,创建表……

    2025年8月23日
    1600
  • ensp怎么查看端口上配置命令

    ENSP中,查看端口配置命令通常为“display current-configuration interface [interface-type

    2025年8月17日
    1100
  • linux怎么安装软件命令

    Linux 中,常用 sudo apt-get install(Debian/Ubuntu 系)或 `sudo yum install

    2025年8月16日
    1400
  • 如何开机运行CMD?无法开机时Win7/11全适用操作

    通过高级启动选项进入(推荐)适用场景:系统可部分启动或卡在登录界面强制重启:开机到Windows徽标时,长按电源键强制关机,重复2-3次触发自动修复,或按住Shift键点击“重启”(登录界面可用),进入恢复环境:选择 疑难解答 > 高级选项 > 命令提示符,输入管理员账户密码(如有),运行命令:在打……

    2025年7月21日
    2100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信