Linux如何快速搭建跳板机?

在Linux搭建跳板机通常基于OpenSSH服务:安装并配置SSH,创建专用用户,设置强密码或密钥认证,禁用root登录及密码登录,配置防火墙限制访问源IP,利用sudo控制权限,并审计日志确保安全访问。

什么是跳板机?

跳板机(Bastion Host)是位于公网与内网之间的安全中转服务器,用于集中管理远程访问权限,通过跳板机运维人员可安全登录内网服务器,避免直接暴露内网资产,同时实现操作审计和权限控制。

Linux如何快速搭建跳板机?


搭建步骤(基于 OpenSSH)

前置准备

  1. 服务器准备

    • 公网服务器 1 台(跳板机,系统:Ubuntu/CentOS)
    • 内网服务器若干(需通过跳板机访问)
    • 所有服务器已安装 OpenSSH:sudo apt install openssh-server(Ubuntu)或 sudo yum install openssh-server(CentOS)
  2. 网络配置

    • 跳板机开放 SSH 端口(默认 22)
    • 内网服务器仅允许跳板机 IP 访问 SSH(通过防火墙或安全组设置)

配置跳板机核心功能

步骤 1:创建运维账户

sudo useradd -m -s /bin/bash operator  # 创建账户
sudo passwd operator                  # 设置密码

步骤 2:强制密钥认证(禁用密码登录)
编辑 /etc/ssh/sshd_config

PasswordAuthentication no      # 关闭密码登录
PubkeyAuthentication yes       # 启用密钥认证
PermitRootLogin no             # 禁止root登录
AllowUsers operator            # 仅允许operator登录

重启 SSH:sudo systemctl restart sshd

步骤 3:生成密钥对(本地机器操作)
在运维人员电脑执行:

ssh-keygen -t rsa -b 4096  # 生成密钥,保存到 ~/.ssh/id_rsa

步骤 4:部署公钥到跳板机
将公钥上传至跳板机:

Linux如何快速搭建跳板机?

ssh-copy-id -i ~/.ssh/id_rsa.pub operator@跳板机IP

通过跳板机连接内网服务器

方法 1:SSH 命令直连(推荐)

ssh -J operator@跳板机IP 内网用户@内网服务器IP
# 示例:ssh -J operator@203.0.113.5 admin@192.168.1.100

方法 2:SSH 配置文件简化(~/.ssh/config)

Host bastion
  HostName 203.0.113.5       # 跳板机公网IP
  User operator
Host internal-server1        # 内网服务器别名
  HostName 192.168.1.100
  User admin
  ProxyJump bastion          # 自动通过跳板机连接

连接命令:ssh internal-server1


安全加固措施

  1. 修改 SSH 端口
    编辑跳板机 /etc/ssh/sshd_config

    Port 59222  # 改用非标准端口
  2. 防火墙限制
    sudo ufw allow 59222/tcp  # 仅开放新端口
    sudo ufw deny 22          # 禁止默认端口
  3. 审计操作日志
    sudo apt install auditd   # Ubuntu 安装审计工具
    sudo auditctl -w /etc/ssh/sshd_config -p wa  # 监控配置文件改动
  4. 定期更新系统
    sudo apt update && sudo apt upgrade -y  # Ubuntu
    sudo yum update -y                      # CentOS

常见问题

Q1:如何避免跳板机成为单点故障?

部署多台跳板机并用 Nginx 做 TCP 负载均衡,或使用 Keepalived 实现高可用。

Q2:如何记录用户操作日志?

使用 sudo apt install tlog 记录会话日志,或配置 sshd_configLogLevel VERBOSE

Linux如何快速搭建跳板机?

Q3:能否限制用户可访问的内网服务器?

通过 SSH 证书的 principals 或第三方工具(如 Teleport)实现精细授权。


通过 OpenSSH 搭建跳板机是低成本、高安全性的方案,核心在于:

  1. 强制密钥认证 + 禁用密码登录
  2. 严格限制内网服务器的访问源
  3. 操作日志审计
  4. 定期安全加固

引用说明:本文方案基于 OpenSSH 官方文档(openssh.com)及 Linux 安全基线标准(CIS Benchmark),实践前请根据实际网络环境调整配置。

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

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月10日 02:47
下一篇 2025年6月10日 02:53

相关推荐

  • Linux如何快速输入命令

    在Linux系统中打开终端应用,在命令行提示符后直接键入命令(可包含参数和选项),完成后按下回车键执行该命令,部分操作需管理员权限,可在命令前添加 sudo。

    2025年6月4日
    400
  • Linux字符界面如何快速上网?

    在Linux字符界面中,可以使用文本浏览器(如lynx或links)访问网页,打开终端,输入lynx https://example.com即可浏览网页内容,下载文件可使用wget或curl命令,需确保网络连接正常。

    2025年5月30日
    400
  • Linux7怎么查看网卡命令?

    在Linux7中,使用 ip addr 或 ifconfig(需安装net-tools)命令查看网卡信息,网卡配置文件位于 /etc/sysconfig/network-scripts/ifcfg-*,nmcli dev status 可显示NetworkManager管理的网卡状态。

    2025年6月10日
    000
  • 怎样快速配置Linux服务器?

    选择Linux发行版(如Ubuntu)安装系统;配置网络连接及SSH远程管理;设置防火墙(iptables/ufw)和用户权限;安装必要服务(如Apache/Nginx、数据库)并调试运行。

    2025年6月10日
    100
  • 如何修改Linux SSH端口?

    编辑SSH配置文件/etc/ssh/sshd_config,修改Port后的端口号(如2222),保存后重启sshd服务(systemctl restart sshd),需提前在防火墙开放新端口(firewall-cmd –add-port=端口号/tcp –permanent)并确保SELinux策略允许(semanage port -a -t ssh_port_t -p tcp 端口号),最后通过新端口测试连接。

    2025年6月7日
    000

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN