IT Knowledge Base

~ Without sacrifice, there can be no victory ~

發佈日期:

分類:

, ,

如何在Ubuntu Desktop 10.04下‧安裝SAMBA及ProFTPD服務‧並同時設立以LDAP作登入受權

最初想法只是安裝ProFTPD服務,但考慮到FTP上檔案要存取的時侯,就發現SAMBA服務也是不可缺少。

假設系統已建立好LDAP伺服器,其IP地址是192.168.0.100。LDAP管理員為:admin,密碼為:password。Domain為:example.com。用戶家目錄(Home directory)為:/home/。

01. 打開終端機,安裝SAMBA及相關套件。

sudo apt-get install samba samba-doc smbldap-tools samba-common-bin samba4-clients

02. 設定SAMBA服務。

sudo gzip -d /usr/share/doc/smbldap-tools/configure.pl.gz
sudo perl /usr/share/doc/smbldap-tools/configure.pl

03. 設定後如需要更改,可直接打開以下檔案。

sudo gedit /etc/smbldap-tools/smbldap.conf
SID="S-1-5-21-4252226116-2560175468-428525971"
sambaDomain="WORKGROUP"
slaveLDAP="192.168.0.100"
slavePort="389"
masterLDAP="192.168.0.100"
masterPort="389"
ldapTLS="0"
suffix="dc=example,dc=com"
usersdn="ou=user,${suffix}"
computersdn="ou=computer,${suffix}"
groupsdn="ou=group,${suffix}"
idmapdn="ou=idmap,${suffix}"
hash_encrypt="MD5"
userLoginShell="/bin/bash"
userHome="/home/%U"
userHomeDirectoryMode="755"
userGecos="System User"
defaultUserGid="513"
defaultComputerGid="515"
skeletonDir="/etc/skel"
defaultMaxPasswordAge="45"
mailDomain="suncupid.com"

slaveDN="cn=admin,dc=example,dc=com"
slavePw="password"
masterDN="cn=admin,dc=example,dc=com"
masterPw="password"
sudo gedit /etc/samba/smb.conf
# obey pam restrictions = yes
passdb backend = ldapsam:ldap://192.168.0.100
ldap suffix = dc=example,dc=com
ldap user suffix = ou=user
ldap group suffix = ou=group
ldap machine suffix = ou=computer
ldap idmap suffix = ou=idmap
ldap admin dn = cn=admin,dc=example,dc=com
ldap passwd sync = yes

[share]
comment = Samba_Share
writeable = yes
browseable = yes
read only = no
path = /home/%U
create mask = 0777
directory mask = 0777

04. 重新啟動SAMBA服務。

sudo service smbd restart

05. 建立與LDAP伺服器上相對應的用戶。更改以下username及password為您需要的用戶名稱及密碼,其中uid_no,應與LDAP伺服器上用戶的UID號碼相同。

sudo useradd -u uid_no -d /home/username -p password username

06. 在/home資料夾下建立用戶資料夾。

07. 使用chmod及chown命令設定用戶資料夾權限。

08. 安裝ProFTPD及其LDAP相關套件。

sudo apt-get install proftpd-basic proftpd-mod-ldap

09. 打開/etc/proftpd/proftpd.conf檔案。

sudo gedit /etc/proftpd/proftpd.conf
將:
UseIPv6 on
更改為:
UseIPv6 off
將:
# Include /etc/proftpd/ldap.conf
更改為:
Include /etc/proftpd/ldap.conf
將:
# AuthOrder mod_auth_pam.c* mod_auth_unix.c
更改為:
# AuthOrder mod_auth_pam.c* mod_auth_unix.c
AuthOrder mod_ldap.c

10. 打開/etc/proftpd/modules.conf檔案。

sudo gedit /etc/proftpd/modules.conf
將:
# LoadModule mod_ldap.c
更改為:
LoadModule mod_ldap.c
將:
# LoadModule mod_quotatab_ldap.c
更改為:
LoadModule mod_quotatab_ldap.c

11. 打開/etc/proftpd/ldap.conf檔案。

sudo gedit /etc/proftpd/ldap.conf
將:
# LDAPServer ldap://ldap.example.com
# LDAPDNInfo "cn=admin,dc=example,dc=com" "admin_password"
# LDAPDoAuth on "dc=users,dc=example,dc=com"
更改為:

LDAPServer 192.168.0.100
LDAPDNInfo "cn=admin,dc=example,dc=com" "password"
LDAPDoAuth on "ou=user,dc=example,dc=com"

12. 重新啟動ProFTPD服務。

sudo service proftpd restart

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *