在 Linux 系统上安装 OpenSSH 的步骤如下,适用于大多数主流发行版,如何在Linux系统上轻松安装OpenSSH?,想在Linux上轻松安装OpenSSH?只需这简单几步!

04-12 7334阅读

OpenSSH 服务安装

根据不同的 Linux 发行版,安装命令有所差异,以下是主流系统的安装方法:

Debian/Ubuntu 及其衍生版

sudo apt update && sudo apt upgrade -y  # 更新系统软件包
sudo apt install openssh-server openssh-client -y  # 安装服务端和客户端

RHEL/CentOS/Rocky Linux/AlmaLinux

# CentOS 7 或更早版本使用 yum
sudo yum install openssh-server openssh-client -y
# CentOS 8+/RHEL 8+ 使用 dnf
sudo dnf install openssh-server openssh-client -y

Fedora

sudo dnf install openssh-server openssh-client -y

Arch Linux/Manjaro

sudo pacman -Sy openssh --noconfirm

openSUSE

sudo zypper refresh && sudo zypper install -y openssh

注意:安装完成后,建议检查软件包版本以确保没有已知安全漏洞:

ssh -V

在 Linux 系统上安装 OpenSSH 的步骤如下,适用于大多数主流发行版,如何在Linux系统上轻松安装OpenSSH?,想在Linux上轻松安装OpenSSH?只需这简单几步! 第1张

服务启动与管理

Systemd 系统(现代主流发行版)

sudo systemctl start sshd       # 立即启动服务
sudo systemctl enable sshd      # 设置开机自启
sudo systemctl status sshd      # 验证服务状态

SysVinit 系统(旧版发行版)

sudo service ssh start          # 启动服务
sudo chkconfig ssh on          # 设置开机自启

防火墙配置

UFW(Ubuntu/Debian)

sudo ufw allow ssh             # 允许SSH默认端口(22)
sudo ufw allow 2222/tcp        # 如果修改了默认端口
sudo ufw enable                # 启用防火墙

Firewalld(RHEL/CentOS/Fedora)

sudo firewall-cmd --permanent --add-service=ssh  # 放行SSH服务
sudo firewall-cmd --permanent --add-port=2222/tcp # 放行自定义端口
sudo firewall-cmd --reload      # 重载防火墙配置

服务状态验证

检查 SSH 服务是否正常运行:

# 方法一:检查端口监听状态
sudo ss -tulnp | grep ssh
# 或
sudo netstat -tulnp | grep ssh
# 方法二:测试本地连接
ssh localhost

远程连接方法

从客户端连接服务器:

ssh username@服务器IP -p 端口号

示例(使用自定义端口 2222):

ssh admin@192.168.1.100 -p 2222

安全强化配置

编辑配置文件 /etc/ssh/sshd_config

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak  # 备份原配置
sudo nano /etc/ssh/sshd_config  # 使用你喜欢的编辑器

推荐的安全设置:

Port 2222                      # 修改默认SSH端口
Protocol 2                     # 仅使用SSH协议版本2
PermitRootLogin no             # 禁止root直接登录
MaxAuthTries 3                 # 限制认证尝试次数
LoginGraceTime 1m              # 登录宽限时间
ClientAliveInterval 300        # 客户端活动检查间隔
ClientAliveCountMax 2          # 无响应断开前的检查次数
PasswordAuthentication no      # 禁用密码认证(推荐使用密钥)
PubkeyAuthentication yes       # 启用公钥认证
AllowUsers user1 user2         # 只允许特定用户登录
DenyUsers baduser              # 明确拒绝某些用户
X11Forwarding no               # 禁用X11转发(除非需要)
UseDNS no                      # 禁用DNS反向解析,加速连接

应用配置更改:

sudo systemctl restart sshd    # 重启SSH服务

在 Linux 系统上安装 OpenSSH 的步骤如下,适用于大多数主流发行版,如何在Linux系统上轻松安装OpenSSH?,想在Linux上轻松安装OpenSSH?只需这简单几步! 第2张

高级安全措施

SSH 密钥认证设置

# 在客户端生成密钥对(推荐使用Ed25519算法)
ssh-keygen -t ed25519 -C "your_email@example.com"
# 将公钥复制到服务器
ssh-copy-id -i ~/.ssh/id_ed25519.pub -p 2222 username@服务器IP
# 或者手动复制(当ssh-copy-id不可用时)
cat ~/.ssh/id_ed25519.pub | ssh -p 2222 username@服务器IP "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Fail2Ban 防护配置

安装并配置Fail2Ban防止暴力破解:

# Debian/Ubuntu
sudo apt install fail2ban -y
# RHEL/CentOS
sudo yum install fail2ban -y
# 配置SSH防护
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local

添加或修改以下内容:

[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 1h
findtime = 10m

SELinux 配置(RHEL/CentOS)

如果修改了SSH端口且启用了SELinux:

sudo semanage port -a -t ssh_port_t -p tcp 2222

故障排查指南

  1. 连接被拒绝 在 Linux 系统上安装 OpenSSH 的步骤如下,适用于大多数主流发行版,如何在Linux系统上轻松安装OpenSSH?,想在Linux上轻松安装OpenSSH?只需这简单几步! 第3张

    • 检查服务是否运行:systemctl status sshd
    • 验证端口监听:ss -tulnp | grep ssh
    • 检查防火墙设置
    • 确认SELinux策略(仅限RHEL/CentOS)
  2. 认证失败

    • 确保PasswordAuthenticationPubkeyAuthentication设置正确
    • 检查/var/log/auth.log/var/log/secure获取详细信息
    • 验证.ssh/authorized_keys文件权限应为600
    • 检查用户是否在AllowUsers列表中
  3. SELinux相关问题

    sudo ausearch -m avc -ts recent  # 查看SELinux拒绝记录
    sudo setenforce 0               # 临时禁用SELinux(测试用)
    sudo restorecon -Rv ~/.ssh      # 修复文件上下文

安全最佳实践

  1. 定期更新:保持OpenSSH为最新版本以修复安全漏洞

    # Debian/Ubuntu
    sudo apt update && sudo apt upgrade openssh-server
    # RHEL/CentOS
    sudo yum update openssh-server
  2. 日志监控:设置日志轮转和异常登录告警

    sudo grep 'sshd' /var/log/auth.log | grep -i 'failed'
  3. 多因素认证:配置Google Authenticator增强安全性

    sudo apt install libpam-google-authenticator
    # 编辑/etc/pam.d/sshd添加:
    auth required pam_google_authenticator.so
  4. 网络限制:通过防火墙限制可连接SSH的IP范围

    sudo ufw allow from 192.168.1.0/24 to any port 2222
  5. 审计配置:定期检查SSH配置和用户密钥

    sudo sshd -t  # 测试配置文件语法
    sudo ls -la /home/*/.ssh/

通过以上配置,您的SSH服务将具备企业级的安全防护能力,建议在修改关键配置前做好备份,并在测试环境验证变更后再应用到生产环境,对于高安全要求的场景,考虑结合***或跳板机架构进一步降低风险。


    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]