透過 SSH 的 OpenBSD 登入似乎忽略了我配置的 Radius 伺服器

透過 SSH 的 OpenBSD 登入似乎忽略了我配置的 Radius 伺服器

我已經在本機上安裝並配置了一個 Radius 伺服器 - 它將身份驗證委託給遠端 LDAP 伺服器。

最初情況看起來不錯:我可以透過控制台進行測試:

# export user=skemp
# export pass=xxx
# radtest $user $pass localhost 1812 $secret
Sending Access-Request of id 185 to 127.0.0.1 port 1812
    User-Name = "skemp"
    User-Password = "xxx"
    NAS-IP-Address = 192.168.1.168
    NAS-Port = 1812
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=185,

同樣,我可以使用登入工具來做同樣的事情:

bash-4.0# /usr/libexec/auth/login_radius -d -s login $user radius
Password: $pass
authorize

然而,透過 SSH 的遠端登入失敗,由 root 啟動的「登入」呼叫也失敗。查看 /var/log/radiusd.log 我沒有看到成功/失敗的實際日誌,而在使用以前的工具時我確實看到了這一點。

相反,sshd 只是記錄:

 sshd[23938]: Failed publickey for skemp from 192.168.1.9
 sshd[23938]: Failed keyboard-interactive for skemp from 192.168.1.9 port 36259 ssh2
 sshd[23938]: Failed password for skemp from 192.168.1.9 port 36259 ssh2

在 /etc/login.conf 我有這個:

# Default allowed authentication styles
auth-defaults:auth=radius:

...

radius:\
    :auth=radius:\
    :radius-server=localhost:\
    :radius-port=1812:\
    :radius-timeout=1:\
    :radius-retries=5:

答案1

我在配置 OpenBSD 以將身份驗證委託給 ldap 伺服器時遇到了類似的問題。我可以讓它工作的唯一方法是將用戶添加到本地資料庫,例如

useradd -s /bin/ksh -L ldap 新用戶

在你的情況下,它會是這樣的

useradd -s /bin/ksh -L 半徑 new_user2

但是,由於您必須為每台使用 ldap 進行身份驗證的電腦手動建立使用者項目,因此這會削弱對集中式 ldap 身份驗證伺服器的需求。我也沒有想法了。

相關內容