如何执行Shell命令?

什么是 Shell 登录?

Shell 是操作系统的命令行接口(如 Bash、Zsh),用户通过输入文本命令与系统交互。”登录 Shell” 指通过身份验证后进入命令行环境的过程,常用于:

  • 本地操作:直接控制当前计算机
  • 远程管理:连接服务器或虚拟机(如云主机)
  • 自动化任务:执行脚本或维护工作

本地登录 Shell 的方法

Windows 系统

  • 方式 1:命令提示符(CMD)
    1. Win + R 输入 cmd → 回车
    2. 直接输入命令(如 dir 查看目录)
  • 方式 2:PowerShell
    1. 搜索栏输入 “PowerShell” → 打开
    2. 支持高级命令(如 Get-Process 查看进程)
  • 方式 3:WSL(Linux子系统)
    1. 安装 WSL:管理员 PowerShell 输入 wsl --install
    2. 启动:wslwsl -d Ubuntu

macOS / Linux 系统

  • 终端(Terminal)
    1. macOS:按 Command + 空格 搜索 “终端”
    2. Linux:按 Ctrl + Alt + T 快捷键
    3. 登录后自动进入用户 Shell(显示 符号)

远程登录 Shell(SSH 方式)

适用场景:连接云服务器、局域网设备或虚拟机
步骤详解

  1. 安装 SSH 客户端

    • Windows:安装 OpenSSH 或使用 PuTTY
    • macOS/Linux:系统已内置,终端直接使用
  2. 生成 SSH 密钥(推荐)

    ssh-keygen -t ed25519  # 生成密钥对
    ssh-copy-id user@host  # 上传公钥到服务器(免密登录)
  3. 登录命令

    ssh username@host_ip  # 基础格式
    • 示例
      ssh root@192.168.1.100       # 用户名+IP
      ssh -p 2222 admin@example.com  # 指定端口(默认22)
  4. 首次登录验证

    • 输入 yes 接受主机指纹
    • 输入密码(若未配置密钥)

安全登录最佳实践

  1. 密钥替代密码
    禁用密码登录,修改服务器配置:

    sudo nano /etc/ssh/sshd_config
    # 修改以下参数:
    PasswordAuthentication no
    PermitRootLogin no

    重启服务:sudo systemctl restart sshd

  2. 使用强密码
    若必须用密码,确保长度 >12 位,含大小写字母、数字、符号。

  3. 防火墙限制
    仅允许信任 IP 访问 SSH 端口:

    sudo ufw allow from 192.168.1.0/24 to any port 22
  4. 会话超时设置
    自动断开闲置连接(单位:秒):

    echo "export TMOUT=600" >> ~/.bashrc  # 10分钟无操作断开

常见问题解决

  • 连接被拒绝(Connection refused)
    检查目标主机 SSH 服务状态:sudo systemctl status ssh
  • 权限错误(Permission denied)
    确认用户名/密码正确,或检查密钥权限:chmod 600 ~/.ssh/id_ed25519
  • 主机密钥变更警告
    清除旧指纹:ssh-keygen -R host_ip
  • 卡在登录界面
    检查网络或尝试 ssh -v user@host 查看详细日志

高级技巧

  • 免密登录多台服务器
    配置 ~/.ssh/config 文件:

    Host myserver
        HostName 10.0.0.5
        User ubuntu
        IdentityFile ~/.ssh/myserver_key

    登录时只需:ssh myserver

  • 会话保持工具
    使用 tmuxscreen 防止断连:

    sudo apt install tmux  # 安装
    tmux new -s session1   # 新建会话
  • 文件传输
    通过 SCP 命令上传/下载:

    scp file.txt user@host:/path/  # 上传
    scp user@host:/remote/file.txt ./  # 下载

引用说明

  • OpenSSH 官方文档:https://www.openssh.com/manual.html
  • Linux 命令行手册:man ssh(终端输入查看)
  • NIST 安全配置指南:SP 800-123 Rev.1
    本文遵循 E-A-T 原则,内容基于 Linux 基金会认证工程师(LFCS)操作标准及行业安全规范。

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

(0)
酷番叔酷番叔
上一篇 2025年7月30日 23:26
下一篇 2025年7月30日 23:47

相关推荐

  • 为什么应该设置umask为027?

    在Linux和Unix系统中,umask命令用于控制新创建文件和目录的默认权限,它通过”屏蔽”(mask)特定权限位,确保文件系统安全且符合用户需求,以下从原理到实践详细说明其用法:umask 的核心原理权限基础Linux权限分为三类:r(读):数值4w(写):数值2x(执行):数值1权限组合如 rwxr-xr……

    2025年7月16日
    9500
  • cd命令使用不好?常见错误有哪些?

    cd命令用于切换当前工作目录:输入路径进入指定目录;”..”返回上级目录;”~”直达用户主目录;Windows中跨盘符需先输入盘符(如D:),无参数时默认返回主目录。

    2025年8月7日
    8900
  • 安全大数据态势感知平台如何提升整体安全防护能力?

    在数字化转型的浪潮下,企业网络边界逐渐模糊,数据量呈指数级增长,安全威胁也呈现出隐蔽化、智能化、复杂化的特征,传统依赖单点防御、被动响应的安全防护模式已难以应对当前严峻的安全形势,安全大数据态势感知平台应运而生,该平台通过整合多源安全数据,运用大数据分析与人工智能技术,实现对安全威胁的全面感知、精准研判、动态预……

    2025年10月19日
    6700
  • 安全工程师视频百度云资源哪里找?

    在数字化时代,安全工程师的职业发展离不开优质的学习资源,而“安全工程师视频百度云”作为许多从业者获取知识的重要渠道,其内容质量、资源获取方式及使用规范备受关注,安全工程师涉及领域广泛,包括网络安全、生产安全、职业健康等,系统的视频学习能够帮助从业者快速掌握理论知识、实践技能及行业最新动态,本文将从资源类型、获取……

    2025年11月22日
    5300
  • 安全与AI如何实现双向赋能与风险管控?

    AI与安全的关系,本质上是技术赋能与风险挑战的共生体,AI正以前所未有的能力重塑安全防护体系,成为应对复杂威胁的“智能盾牌”;AI的自主性、数据依赖性等特性也催生了新型安全风险,需要构建“防护网”以约束其潜在危害,这种双向互动,决定了安全与AI的融合必须走“发展与规范并重”的道路,AI:安全防护体系的“智能引擎……

    2025年11月1日
    6600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信