security - 有没有办法使用IAM作为PAM的身份验证 "method"?

标签 security authentication pam amazon-iam

具体来说,运行一系列 postfixdovecotnginx 为(不是很多)用户提供“良好”的邮件服务。所有服务共享Pluggable authentication module (PAM)作为一种可能的身份验证方法。目前,系统的“passwd”数据库正在通过 PAM 再次进行身份验证。

AWS Identity and Access Management (IAM)是一个硬性要求。因此,任何其他服务(如duosecurity)都不是一个选择。在开始编写 PAM 模块代码之前,我想询问您的经验 - 您会如何做?谢谢!

最佳答案

这可能不是您正在寻找的,但肯定符合使用 IAM 作为 PAM 身份验证“方法”的方式:

丹尼斯·米哈尔金 (denismo) aws-iam-ldap-bridge 定期使用 AWS IAM 中的用户、组和角色填充 LDAP 目录位置,这将允许使用 libpam-ldap or libpam-ldapd从而使用 AWS IAM key 作为密码对 Linux 用户进行隐式身份验证。

请注意以下相当重要的警告:

  1. 目前,该插件需要 ApacheDS 的自定义版本,因此不太可能进行手动配置 - 请参阅 Configuring an existing ApacheDS LDAP server
  2. 默认配置不安全,但您可以根据自己的要求随意更改 - 请参阅 Security notes

个人评估

虽然原生 IAM PAM 集成会很棒(并且还支持 AWS Multi-Factor Authentication (MFA) 等高级用例),但我喜欢这种实用的方法来促进广泛使用的 LDAP 集成 - 但我仍然肯定更喜欢一个理想的解决方案与任何兼容的 LDAP 服务器,或至少与库存 ApacheDS分发,以便于安装、可维护性和安全评估。

关于security - 有没有办法使用IAM作为PAM的身份验证 "method"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18332238/

相关文章:

session - linux-PAM session 是否与 linux 进程 session 相同?

authentication - 如何使用 PAM 对用户进行身份验证?

linux - 使用 PAM 在 Linux 上验证用户名

java - 如何拒绝来自 iframe 的站点访问?

c# - 嵌入式 IronPython 安全

javascript - "TypeError: Cannot read property ' $发出' of undefined"-VueJS

python - OpenID 登录不太有效

php - 如何让原生 Android 应用程序通过 Web 后端进行身份验证?

c# - ASP.net 中的静态文件和身份验证

security - CORS 和 CSP 之间有什么区别?