Linux SSH命令如何快速掌握?

SSH基础连接命令

语法格式

ssh [选项] 用户名@主机地址

常用参数

  • -p 端口号:指定SSH端口(默认22)
  • -i 密钥文件:使用私钥认证(如 -i ~/.ssh/id_rsa
  • -v:显示详细连接过程(调试用)

示例

ssh admin@192.168.1.100          # 默认端口登录
ssh -p 2222 user@example.com     # 指定端口登录

密钥认证:更安全的登录方式

步骤1:生成密钥对

ssh-keygen -t rsa -b 4096   # 生成4096位RSA密钥
  • 默认保存位置:~/.ssh/id_rsa(私钥)和 ~/.ssh/id_rsa.pub(公钥)

步骤2:上传公钥到服务器

ssh-copy-id -i ~/.ssh/id_rsa.pub user@host  # 自动上传

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

步骤3:密钥登录验证

ssh -i ~/.ssh/my_key user@host  # 使用指定私钥登录

高级应用场景

  1. 执行远程命令
    无需登录直接操作:

    ssh user@host "ls -l /var/log"  # 查看远程服务器日志
  2. 文件传输(SCP/SFTP)

    • SCP命令
      scp file.txt user@host:/remote/path   # 上传
      scp user@host:/remote/file.txt ./     # 下载
    • SFTP交互模式
      sftp user@host   # 启动SFTP会话
      sftp> put local_file  # 上传文件
      sftp> get remote_file # 下载文件
  3. 端口转发

    • 本地端口转发(访问远程服务):
      ssh -L 8080:localhost:80 user@host  # 本地8080映射到远程80端口
    • 远程端口转发(暴露本地服务):
      ssh -R 9000:localhost:3000 user@host  # 远程9000映射到本地3000端口

安全加固实践

  1. 禁用密码登录(修改服务器配置)
    编辑 /etc/ssh/sshd_config

    PasswordAuthentication no   # 关闭密码认证
    PermitRootLogin no          # 禁止root直接登录
    Port 8822                   # 更改默认端口

    重启服务:sudo systemctl restart sshd

  2. 使用Fail2ban防御暴力破解

    sudo apt install fail2ban  # Debian/Ubuntu
    sudo systemctl enable fail2ban
  3. 密钥文件权限检查
    确保私钥权限为600:

    chmod 600 ~/.ssh/id_rsa

常见问题解决

  • 连接超时
    检查防火墙:sudo ufw allow 22(或自定义端口)
    确认SSH服务状态:systemctl status sshd

  • 密钥登录失败
    验证服务器 authorized_keys 文件权限:

    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
  • “Host key verification failed”错误
    清除旧指纹:

    ssh-keygen -R hostname  # 更新已知主机记录

SSH是Linux系统管理的基石,掌握密钥认证、端口转发和安全配置能显著提升工作效率与系统安全性,建议:

  1. 始终使用密钥替代密码
  2. 定期更新SSH服务版本
  3. 通过ssh -v输出诊断复杂问题

引用说明

  • OpenSSH官方文档:https://www.openssh.com/manual.html
  • Linux man pages(man ssh
  • NIST安全配置指南:SP 800-123 基于Linux 5.x+内核及OpenSSH 8.9+版本验证*

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

(0)
酷番叔酷番叔
上一篇 2025年7月31日 06:17
下一篇 2025年7月31日 06:40

相关推荐

  • CAD命令S怎么用?详细操作步骤与方法解析?

    在CAD绘图过程中,STRETCH(快捷键S)命令是一个非常实用的工具,主要用于拉伸对象的一部分,从而改变对象的形状或尺寸,同时保留对象与其他几何元素的连接关系,与MOVE命令移动整个对象不同,STRETCH命令可以灵活调整对象的局部特征,比如延长直线、调整矩形宽度、修改多段线拐角等,尤其在修改设计方案细节时效……

    2025年8月27日
    31500
  • 如何获取安全产品托管服务折扣?

    当前企业数字化转型加速,网络攻击手段不断升级,勒索软件、数据泄露等安全事件频发,许多中小企业因缺乏专业安全团队和资源,难以构建有效的防护体系,安全产品托管服务应运而生,由第三方专业团队提供全天候安全监控、漏洞管理、应急响应等全流程服务,帮助企业降低安全风险,为吸引更多企业采用,服务商纷纷推出多样化折扣政策,让企……

    2025年10月26日
    18800
  • ie命令栏的主页怎么修改

    IE浏览器中,可通过“工具”-“Internet选项”,在“常规”选项卡的

    2025年8月10日
    22700
  • 国内云计算究竟指的是什么概念?

    国内云计算是指在中国境内提供计算资源,由本土企业运营并符合国家法规的服务模式。

    2026年2月7日
    12500
  • cmd命令如何接收输入并判断奇偶?

    在Windows命令提示符(CMD)环境中,通过批处理脚本(.bat或.cmd文件)可以实现接收用户输入的数字并判断其奇偶性,这一过程涉及变量赋值、输入验证、算术运算及条件判断等基础操作,下面将分步骤详细说明实现方法,并附关键命令解析及常见问题解答,创建批处理脚本的基本框架需要创建一个批处理文件来实现功能,使用……

    2025年8月31日
    21100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信