Linux如何快速SSH远程登录

使用ssh命令远程登录Linux服务器: ,格式:ssh 用户名@主机地址 -p 端口号(默认端口22可省略)。 ,首次连接需验证主机密钥,推荐使用密钥认证替代密码更安全。

SSH(Secure Shell) 是一种加密的网络协议,用于安全地远程登录和管理Linux服务器,它通过加密通道传输数据,有效防止信息泄露,是运维人员和开发者的必备技能,以下是详细操作指南:

Linux如何快速SSH远程登录


准备工作

  1. 确认远程服务器已开启SSH服务
    在服务器终端执行:

    sudo systemctl status sshd

    若显示 active (running) 表示服务已启动,未安装时使用 sudo apt install openssh-server(Debian/Ubuntu)或 sudo yum install openssh-server(CentOS/RHEL)安装。

  2. 获取连接信息

    • 服务器IP地址:在服务器执行 ip ahostname -I 查看。
    • SSH端口:默认为 22(可在 /etc/ssh/sshd_config 修改)。
    • 用户名:登录账号(如 root 或普通用户)。
    • 密码或密钥:账号密码或预先配置的SSH密钥对。

使用密码登录(基础方法)

命令格式

ssh 用户名@服务器IP -p 端口号

示例

ssh root@192.168.1.100 -p 22
  • 首次连接会提示确认服务器指纹,输入 yes 后继续。
  • 输入用户密码即可登录(密码输入时不可见)。
  • 登录成功显示远程服务器的终端提示符(如 root@server:~#)。

注意:频繁登录建议改用密钥认证(更安全)。

Linux如何快速SSH远程登录


使用密钥登录(推荐安全方式)

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

ssh-keygen -t ed25519
  • 按提示设置密钥存储路径(默认 ~/.ssh/id_ed25519)和密码(可选增强保护)。
  • 生成两个文件:
    • 私钥id_ed25519(需妥善保管,权限设为600)。
    • 公钥id_ed25519.pub(需上传到服务器)。

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

ssh-copy-id -i ~/.ssh/id_ed25519.pub 用户名@服务器IP -p 端口

输入密码后,公钥会自动追加到服务器的 ~/.ssh/authorized_keys 文件中。

步骤3:直接登录(无需密码)

ssh 用户名@服务器IP

若私钥有密码保护,首次登录需输入私钥密码。


常见问题与解决方案

问题 原因 解决方法
Connection refused SSH服务未运行或防火墙拦截 检查 sshd 状态,开放防火墙端口:sudo ufw allow 22
Permission denied 用户名/密码错误或密钥未授权 核对凭据;确认 authorized_keys 文件权限为 600
Network unreachable IP地址错误或网络不通 ping 服务器IP 测试网络连通性
Host key changed 服务器重装系统或密钥变更 删除本地旧指纹:ssh-keygen -R 服务器IP

安全强化建议

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

    PasswordAuthentication no
    ChallengeResponseAuthentication no

    重启服务:sudo systemctl restart sshd

  2. 修改默认SSH端口
    在配置文件中修改 Port 2222(示例),减少暴力破解风险。

  3. 禁止root直接登录
    设置 PermitRootLogin no,改用普通用户登录后 sudo 提权。

    Linux如何快速SSH远程登录

  4. 启用Fail2Ban
    自动封禁多次登录失败的IP:

    sudo apt install fail2ban  # Debian/Ubuntu
    sudo systemctl enable fail2ban

SSH是安全运维的核心工具,密钥登录比密码更可靠,定期更新系统、监控登录日志(/var/log/auth.log)可进一步提升安全性,掌握这些操作,您将能高效管理任何Linux服务器。

引用说明参考OpenSSH官方文档(openssh.com)及Linux man手册,遵循最佳安全实践。

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

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月9日 19:51
下一篇 2025年6月9日 19:56

相关推荐

  • Linux如何查看防火墙状态?

    要查看Linux防火墙状态及规则: ,1. 使用 systemctl status firewalld(Firewalld)或 systemctl status ufw(UFW)检查服务状态。 ,2. 直接执行命令: , – Firewalld: firewall-cmd –state 及 firewall-cmd –list-all , – UFW: sudo ufw status , – iptables: sudo iptables -L -n -v ,3. 若无以上工具,检查是否使用iptables/nftables基础命令。

    2025年6月8日
    100
  • Linux如何检查GPU状态

    查看Linux系统GPU信息常用命令:,1. lspci | grep -i vga 查看显卡型号,2. nvidia-smi(NVIDIA显卡)或 rocm-smi(AMD显卡)查看详细信息,3. glxinfo | grep “OpenGL renderer” 检查图形驱动状态,4. lshw -C display 获取详细硬件配置

    2025年6月12日
    000
  • 如何快速查询Linux版本信息

    查看Linux版本信息常用命令: ,1. uname -a 显示内核版本与系统架构 ,2. lsb_release -a 查看发行版详细信息(需安装lsb-core) ,3. 查看/etc/os-release文件:cat /etc/os-release ,4. 部分系统可用hostnamectl或检查/etc/*-release文件

    2025年6月22日
    100
  • 如何快速远程登录Linux服务器?

    使用SSH工具(如PuTTY或终端命令),输入服务器IP地址、用户名及密码(或密钥),即可安全远程登录和管理Linux服务器。

    2025年6月4日
    300
  • Linux如何查看JDK安装路径?

    在Linux中查看JDK路径,常用方法包括: ,1. 执行 readlink -f $(which java) 追踪Java可执行文件实际路径; ,2. 通过 update-alternatives –list java(Debian/Ubuntu)或 alternatives –display java(CentOS/RHEL)查看管理路径; ,3. 检查环境变量 echo $JAVA_HOME(需提前配置)。

    2025年6月19日
    200

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN