星期三, 4月 14, 2010

From fedora to openSUSE 移轉小記

From fedora to openSUSE 移轉小記

因為目前已經習慣使用 openSUSE來當成作業系統
所以就將舊的 Server 從 Fedora 7 移轉到 openSUSE
以下是一些移轉小記

1. 預設密碼加密問題
fedora 預設使用 MD5 加密
openSUSE 預設使用 blowfish 加密

所以感覺上在進行主機移轉的時候要注意加密的問題!!
初步想法:
1.覺得要先將新的openSUSE主機的加密方式改變為MD5
2.匯入 fedora 的 shadow 檔案 到openSUSE進行移轉
3.將加密方式變更回 blowfish

實做移轉

結果將 /etc/shadow /etc/passwd /etc/group
( 去除掉原來的系統帳號, 附加到新的檔案後面 )
發現根本就沒有這個問題

因為 /etc/shadow 有包含 slat 機制
crypt 這個函式庫在加密的時候
會使用 slat 加入一個隨機數 與原來的明碼來進行加密

所以觀察 /etc/shadow 內容如下


max:$2a$05$.TwZgu4Bac1gHXTdslmDKevkKtLI/0ZodfvDUNrC5KTPMDdMSMuFy:14672:0:99999:7:::


johnson:$1$RVYz8gCF$NrJMtmGkN1FAFnFODEXH0.:14712:0:99999:7:::


其中 $1$ 代表 crypt 使用 salt 加密的方式
以下是在 crypt 指令內 salt 的語法
 
       $id$salt$encrypted

       then instead of using the DES machine,  id  identifies  the  encryption
       method  used  and  this  then  determines  how the rest of the password
       string is interpreted.  The following values of id are supported:

              ID  | Method
              ---------------------------------------------------------
              1   | MD5
              2a  | Blowfish (not in mainline glibc; added in some
                  | Linux distributions)
              5   | SHA-256 (since glibc 2.7)
              6   | SHA-512 (since glibc 2.7)

所以 當 slat 的 ID 為 1的時候 
如同上面的 johnson 代表是使用 MD5 加密的方式( fedora default)
後面的 藍色字串就是 slat
系統會將 密碼  + slat  加密的結果寫在後面

相對的
所以 當 slat 的 ID 為 2a的時候 
如同上面的 max 代表是使用 Blowfish 加密的方式( openSUSE default)
後面的 藍色字串就是 slat
系統會將 密碼  + slat  加密的結果寫在後面

這樣的好處就是在移轉的時候 直接將 /etc/shadow 作處理就好
( 去除掉原來的系統帳號, 附加到新的檔案後面 )


2. Samba 密碼問題
新舊版本的 samba 在於 passdb backend (密碼預設方式)
舊版本使用 smbpasswd
新版本使用 tdbsam

但是看了一下 samba 官方網站上面的資料


tdbsam

This backend provides a rich database backend for local servers. This backend is not suitable for multiple domain controllers (i.e., PDC + one or more BDC) installations.
The tdbsam password backend stores the old smbpasswd information plus the extended MS Windows NT/200x SAM information into a binary format TDB (trivial database) file. The inclusion of the extended information makes it possible for Samba-3 to implement the same account and system access controls that are possible with MS Windows NT4/200x-based systems.
The inclusion of the tdbsam capability is a direct response to user requests to allow simple site operation without the overhead of the complexities of running OpenLDAP. It is recommended to use this only for sites that have fewer than 250 users. For larger sites or implementations, the use of OpenLDAP or of Active Directory integration is strongly recommended.



tdbsam 不適合多個 DC 還有建議在 250 以下的使用者
如果超過 250 以上, 那就建議使用 ldapsam 來代替

所以這樣的想法就會讓我想要使用 原本的 smbpasswd 就好
如果使用者規模超過一定 就使用 ldapsam
因為實務上也沒有輸入太多的使用者資訊

這邊有個搜尋到的 blog 到是可以參考一下

想法上直接將舊的 smbpasswd and smb.conf 覆蓋過來就可以
^__^


先這樣~~




沒有留言: