我正在尝试使用 dsa 密钥 ssh 到一个盒子。系统会提示我输入密码,但随后默认使用密码身份验证。似乎如果第一次身份验证失败,它就会这样做,但没有提到这一点,而且我已经在许多其他服务器上一次又一次地这样做了 - 现在有了这个新服务器,它刚刚成为一个问题
如何知道服务器支持哪些身份验证方法?
我只是在我的契约服务器上检查我的日志,我发现了一些奇怪的日志auth.log:
Jun 17 22:27:01 mutualab CRON[16249]: pam_unix(cron:session): session opened for user user by (uid=0)
Jun 17 22:27:01 mutualab CRON[16249]: pam_unix(cron:session): session closed for user user
Jun 17 22:28:01 mutualab CRON[16253]: pam_unix(cron:session): session opened for user user by (uid=0)
Jun 17 22:28:01 mutualab CRON[16253]: pam_unix(cron:session): session closed for user alain
Jun 17 22:29:01 mutualab CRON[16257]: pam_unix(cron:session): session opened for user user by (uid=0)
Jun 17 22:29:01 mutualab CRON[16257]: pam_unix(cron:session): session closed for user user
Run Code Online (Sandbox Code Playgroud)
看起来有人试图登录 - 并成功了?- 但立即 delog …
我有一个 Ubuntu 服务器,它能够针对我们的域对用户进行身份验证。我无法联系设置它的人,但我确实发现安装了这些软件包:
libaprtil1-ldap
libldap-2.4-2
samba
我们的服务器此时需要大约一分钟左右的时间来验证任何用户。我相信这是因为我们的一个 DC 几周前被禁用了。这会导致我使用的许多程序在成功验证之前超时。我不想卸载任何东西,因为我不想为我们的管理员做更多的工作。我只需要一些关于如何在此期间禁用它的建议,直到事情得到解决。
我想通过 nginx 代理将 IMAP 客户端请求发送到 IMAP 后端。根据mail_auth_http模块,auth_http必须使用指令来验证客户端。但究竟是什么目的auth_http,为什么不能简单地将认证过程转发到IMAP后端?
据我所知,auth_http指向一个使用自定义 HTTP 协议的身份验证脚本,以确定将使用哪个后端等,并完全跳过基于 IMAP 的实际身份验证。我对么?
如果有人可以发布一个实际示例,我将不胜感激。
谁能简单介绍一下 SMB 身份验证和 NFS v.3 身份验证之间的最大区别是什么?
我认为在 SMB 中它基于用户的登录名和密码,而在 NFS 中它基于主机身份验证。
我试图找出在尝试通过 ssh 连接到生产主机时使用的 SSH 机制。我看到 SSH 客户端可以在可用模式中进行选择。但我不确定选择哪种模式以及如何选择。
SSHServer 端sshd_config配置为:
UsePAM yes
PasswordAuthentication yes
GSSAPIAuthentication yes
KerberosAuthentication no
KerberosOrLocalPassword no
Run Code Online (Sandbox Code Playgroud)
我想知道身份验证是使用基于 kerberos 还是基于 ssh_key。
服务器通过 dovecot 的身份验证机制正确接受/拒绝登录,但之后我可以在发送电子邮件时假装是任何人。
smtpd_sender_login_maps = texthash:/etc/postfix/permmap
append_at_myorigin=no
smtpd_helo_restrictions =
permit_mynetworks,
reject_non_fqdn_helo_hostname,
reject_invalid_helo_hostname,
#reject_unknown_helo_hostname,
permit
smtpd_sender_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_sender_login_mismatch,
# reject_non_fqdn_sender,
reject_unknown_sender_domain,
permit
smtpd_client_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_pipelining,
reject_rbl_client bl.spamcop.net,
reject_rbl_client zen.spamhaus.org,
permit
Run Code Online (Sandbox Code Playgroud)
我使用这个站点进行测试,因为它很方便,而且 --verbose 向我展示了整个通信,除了消息正文。
这是通信日志,显然带有识别内容和密码审查
> EHLO localhost
[250] 'example.com'
[250] 'PIPELINING'
[250] 'SIZE 104857600'
[250] 'ETRN'
[250] 'AUTH PLAIN LOGIN'
[250] 'ENHANCEDSTATUSCODES'
[250] '8BITMIME'
[250] 'DSN'
AUTH method (PLAIN LOGIN): using LOGIN
> AUTH LOGIN
[334] 'VXNlcm5hbWU6'
> dXNlckFAdmlydHVhbGRvbWFpbkE=
[334] 'UGFzc3dvcmQ6'
> dGhlcGFzc3dvcmQ=
[235] '2.7.0 …Run Code Online (Sandbox Code Playgroud) PAM 允许使用sufficent和required用于某些逻辑,例如
auth sufficient pam_a.so
auth required pam_b.so
auth required pam_c.so
Run Code Online (Sandbox Code Playgroud)
这意味着“要么a为真,要么b必须为真,然后c必须为真”。
是否可以进行更复杂的操作?像“(a或b)和(c或d)”或“(a和b)或(c和d)”?可能还有更多的括号层。
我通过将此配置添加到main.cf以下内容将 Postfix 设置为 SMTP 服务器:
myhostname = foo.com
mydomain = foo.com
myorigin = $mydomain
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_helo_required = yes
smtpd_helo_restrictions = reject_invalid_helo_hostname
smtpd_recipient_restrictions = reject_unknown_recipient_domain, reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
Run Code Online (Sandbox Code Playgroud)
该sasl_passwd文件如下所示:
foo.com user:pass
Run Code Online (Sandbox Code Playgroud)
我已经sasl_passwd.db从那个文件中生成了一个。不幸的是,当使用用户名和密码连接到我的服务器时,我不断遇到身份验证失败。我究竟做错了什么?
我想将此命令行安排为每 12 小时在 Google Container Engine 上运行一次:
gcloud compute --project "qvitoo-com" disks snapshot \
"SPECIFIC_INSTANCE_ID" --zone "europe-west1-c" --snapshot-names \
"DB-staging-$(date -u +"%Y-%m-%dT%H-%M-%SZ")"
Run Code Online (Sandbox Code Playgroud)
我们正在运行托管的 Kubernetes。
此命令行需要访问 gcloud API 才能成功。我该如何做到这一点?
(我不能使用gcloud cron,因为它只是 HTTP 调用,而且Kubernetes cron 作业处于 alpha 状态,而且我不知道如何进行身份验证)