Tuesday, October 18, 2005

FreeBSD + MS Windows Active Directory 合體技-2

接續上一次的東西, 今天來紀錄一下設定 FreeBSD Server 的認證透過 winbind 轉去問 AD 的方法.

在 FreeBSD 裡面 (新的版本), 大多是用 PAM (Pluggable Authentication Modules) 來達成認證的工作, WinBind 提供一個 PAM 模組, 可以跟系統的 PAM 結合. 最簡單的方法是把原本 /etc/pam.d/ 下的設定檔案內有用到 pam_unix.so 的地方, 複製一下並改成 pam_winbind.so 就可以了.

以下是合體技第一個表演: Postfix+AD for Authenticated Relay,

先設定 SMTP 需要的 PAM 資料,

# cat > /etc/pam.d/smtp
auth sufficient pam_winbind.so try_first_pass
auth required pam_unix.so try_first_pass
account required pam_permit.so
session required pam_permit.so
^D

因為 postfix 的 authenticated relay 的認證是透過 Cyrus SASL Auth Daemon 去做的 (然後 SASL Auth Daemon 再透過 PAM 的 winbind 模組去讀 AD), 所以要設定 Cyrus-SASL-Authd 如下,

# cat >> /etc/rc.conf
saslauthd_enable="YES"
saslauthd_flags="-a pam -c -t 30"
^D

# cat > /usr/local/lib/sasl2/smtpd.conf
pwcheck_method: saslauthd
mech_list: plain login
^D

在 postfix 的設定 main.cf 裡面, 也要增加 SASL-Auth 相關的設定,

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes

smtpd_recipient_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination

經過上面的設定, 合體技的第一個應用就完成了 ^_^

1 comment:

s****s said...

I think I have to study cli in Freebsd system.