linux一次性密码确保ssh登录安全,使用 SSH 时确保 EC2 Linux 实例安全的最佳实践

使用 SSH 安全访问 EC2 Linux 实例,同时避免未经授权的访问的最佳实践有哪些?

上次更新时间:2020 年 9 月 4 日

我想使用 SSH 访问 Amazon Elastic Compute Cloud (Amazon EC2) 实例。在使用 SSH 时,确保我的实例安全并避免未经授权的访问的最佳实践是怎样的?

解决方法

注意:使用根权限运行以下命令。运行 sudo-i 命令,以成为根用户。

不允许根用户使用 SSH 终端

这是 Amazon 提供的 AMI 和 AWS Marketplace 中大多数供应商的默认设置。如果您的实例允许根用户登录,请按照以下步骤拒绝访问。

1.    在 /etc/shadow 文件的密码字段中添加一个 *(星号),以使根用户的密码失效:

使用 vipw-s 编辑文件。

第一行通常是根用户行。按如下方式更改根用户行:

root:*LOCK*:14600::::::

2.    使用 vi 编辑器或其他编辑器编辑 SSH 守护程序的配置文件:

vi /etc/ssh/sshd_config

确保以下行存在且未注释。该行拒绝根用户的登录权限。

PermitRootLogin no

3.    重新启动 SSH 守护程序:

service sshd restart

有关 PermitRootLogin 选项的其他参数的信息,请参阅 man.openbsd.org 网站上的 OpenBSD 手册页面服务器。

确保所有用户使用 SSH 密钥对登录,然后禁用密码验证

Amazon 提供的 AMI 默认配置使用 SSH 密钥对登录,同时禁用密码验证。如果您已更改实例,请使用以下命令恢复为默认配置:

1.    使用 vi 编辑器或您选择的其他编辑器访问 sshd_config 文件:

vi /etc/ssh/sshd_config

2.    验证以下行是否存在且未注释:

PasswordAuthentication no

3.    重新启动 SSH 守护程序:

service sshd restart

用户需要在 ~/.ssh/authorized_keys 中使用公有密钥。有关密钥登录的更多信息,请参阅 Amazon EC2 密钥对和 Linux 实例。

限制来自未知来源的访问

对于公有实例,如果存在错误配置或存在意外软件漏洞,则开放且不受限制的 SSH 端口可能会导致入侵。为帮助防止入侵,请遵循以下最佳实践:

1.    将 SSH 守护程序更新到 Linux 发行版维护者提供的最新版本。SSH 守护程序通常会从上游提供商接收来自更高版本的向后移植更新。有关向后移植的更多信息,请参阅 Red Hat 客户门户网站上的向后移植安全修复程序。

yum -y install openssh-server # for Amazon Linux, RHEL, Centos

apt update && apt install openssh-server # For Ubuntu, Debian

2.    限制您的安全组以允许仅从受信任的 IP(如企业网络 IP)传入连接到端口 22。有关更多信息,请参阅授权 Linux 实例的入站流量。

3.    一些入侵者可能会试图猜测用户名和密码,或者如果端口 22 对外开放,他们可能会试图让 SSH 守护程序溢出。fail2ban 是一个实用程序,用于监视日志文件是否不断尝试登录实例,然后会在几次尝试失败后阻止它们。安装 fail2ban 的步骤:

Ubuntu:

apt -y install fail2ban

Amazon Linux、Centos、RHEL:

运行以下命令:

yum -y install fail2ban

systemctl enable fail2ban

systemctl start fail2ban

使用 AWS Systems Manager 会话管理器以通过 shell 访问 EC2 实例

会话管理器允许 AWS Identity and Access Management (IAM) 用户使用加密和日志记录功能登录到您的实例。Systems Manager 的流量通过 Systems Manager 终端节点,从而可以轻松安全地访问私有实例,而无需打开入站端口。有关 Systems Manager 的更多信息,请参阅 AWS Systems Manager Session Manager for shell access to EC2 instances。

这篇文章对您有帮助吗?

您是否需要账单或技术支持?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值