顯示具有 cost reduction 標籤的文章。 顯示所有文章
顯示具有 cost reduction 標籤的文章。 顯示所有文章

2009年8月30日 星期日

如何設定 ldap 登入服務 – OpenLDAP Linux authentication howto

OpenLDAP 登入服務器

上文提到如何安裝 OpenLDAP 服務器, 今次將會提到如何在 ubuntu上把 OpenLDAP 服務器設定成一個登入服務器. 這樣你就可以使用同一組資料登入多個不同的服務器.

先作服務器端設定

安裝轉換工具 migration tools
sudo apt-get install migrationtools
更改 migration_common.ph 設定檔, 位置在 /usr/share/perl5
sudo vi /usr/share/perl5/migration_common.ph
根據服務器端的設計更改以下兩行
# Default DNS domain
$DEFAULT_MAIL_DOMAIN = “example.com”;
# Default base
$DEFAULT_BASE = “dc=example,dc=com”;
開始轉移登入資料 (/tmp 改成你的理想位置)
export ETC_SHADOW=/etc/shadow #把shadow 跟passwd 一同載入
./migrate_base.pl > /tmp/base.ldif
./migrate_group.pl /etc/group /tmp/group.ldif
./migrate_hosts.pl /etc/hosts /tmp/hosts.ldif
./migrate_passwd.pl /etc/passwd /tmp/passwd.ldif
用以下命令分別載入到 ldap 服務器
ldapadd -D “cn=admin,dc=domain,dc=com” -W -f /tmp/base.ldif
ldapadd -D “cn=admin,dc=domain,dc=com” -W -f /tmp/group.ldif
ldapadd -D “cn=admin,dc=domain,dc=com” -W -f /tmp/passwd.ldif
ldapadd -D “cn=admin,dc=domain,dc=com” -W -f /tmp/hosts.ldif
apt-get install 安裝認證需要的元件
Modules require for authentication
libnss-ldap – NSS module for using LDAP as a naming service
libpam-ldap – Pluggable Authentication Module allowing LDAP interfaces
libnss-ldapd – NSS module for using LDAP as a naming service
perdition-ldap – Library to allow perdition to access LDAP based popmaps
libpam-cracklib
pam library做小許 bug fix
ln -s pam_unix.so pam_pwdb.so
這樣, 服務器端的設定就完成了

再做客戶端的設定

Vi /etc/ldap.conf
host ldap.example.com
uri ldap://<服務器ip位置>:389/
base ou=People,dc=example,dc=com
nss_initgroups_ignoreusers backup,bin,daemon,dhcp,games,gnats,irc,klog,libuuid,list,lp,mail,man,munin,mysql,news,openldap,proxy,root,sshd,sync,sys,syslog,uucp,www-data
vi /etc/nsswitch.conf # 登入方法設定
passwd: ldap compat
shadow: ldap compat
group: ldap compat
vi /etc/pam.d/common-account #設定 account 認證方法
account sufficient pam_ldap.so
account required pam_unix.so try_first_pass
vi /etc/pam.d/common-auth # 設定登入認證方法
auth sufficient pam_ldap.so
auth requisite pam_unix.so nullok_secure try_first_pass
auth optional pam_smbpass.so migrate missingok
vi /etc/pam.d/common-password #設定密碼管理
password sufficient pam_ldap.so
password required pam_unix.so nullok obscure min=4 max=8 md5 try_first_pass
password optional pam_smbpass.so nullok use_authtok use_first_pass missingok

測試設定

getent passwd | grep
會發現參數出現兩次
這樣客戶端就能使用中央使用者管理

2009年8月24日 星期一

如何建立 OpenLDAP server

如何建立 OpenLDAP server

LDAP 全名是 Lightweight Directory Access Protocol, 是一種目錄訪問協議, 在TCP/IP之上定義了一個相對簡單的升級和搜索目錄的協議。. 常見的用途有電話薄, 登入服務, 域名服務等. LDAP
今次所介紹的是 OpenLDAP 服務器的安裝方法
先安裝服務器所需軟件

sudo apt-get install slapd ldap-utils
重新設定 openldap 軟件

Dpkg-reconfigure slapd
omit openldap server configuration? no
dns domain name? example.com
organization name? yourCompany
database backend to use? bdb
do you want the database to be removed when slapd is purged? yes
may be the question: move old database? yes
administrator password?
confirm password?
allow LDAPv2 protocol? no
如果需要手動修改 slapd.conf, 可到 /etc/ldap/slapd.conf

# This is the main slapd configuration file. See slapd.conf(5) for more
# info on the configuration options.
#######################################################################
# Global Directives:
#
# Features to permit
allow bind_v2
# Schema and objectClass definitions
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
# Where the pid file is put. The init.d script
# will not stop the server if you change this.
pidfile /var/run/slapd/slapd.pid
# List of arguments that were passed to the server
argsfile /var/run/slapd/slapd.args
# Read slapd.conf(5) for possible values
“/etc/ldap/slapd.conf” 139 lines, 4760 characters
# This is the main slapd configuration file. See slapd.conf(5) for more
# info on the configuration options.
#######################################################################
# Global Directives:
# Features to permit
allow bind_v2
# Schema and objectClass definitions
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
# Where the pid file is put. The init.d script
# will not stop the server if you change this.
pidfile /var/run/slapd/slapd.pid
# List of arguments that were passed to the server
argsfile /var/run/slapd/slapd.args
# Read slapd.conf(5) for possible values
loglevel none
# Where the dynamically loaded modules are stored
modulepath /usr/lib/ldap
moduleload back_bdb
# The maximum number of entries that is returned for a search operation
sizelimit 500
# The tool-threads parameter sets the actual amount of cpu’s that is used
# for indexing.
tool-threads 1
#######################################################################
# Specific Backend Directives for bdb:
# Backend specific directives apply to this backend until another
# ‘backend’ directive occurs
backend bdb
#######################################################################
# Specific Backend Directives for ‘other’:
# Backend specific directives apply to this backend until another
# ‘backend’ directive occurs
#backend
#######################################################################
# Specific Directives for database #1, of type bdb:
# Database specific directives apply to this databasse until another
# ‘database’ directive occurs
database bdb
# The base of your directory in database #1
suffix “dc=example,dc=com”
修改 /etc/ldap/ldap.conf (示範如下)

#
# LDAP Defaults
#
# See ldap.conf(5) for details
# This file should be world readable but not world writable.
BASE dc=example,dc=com
URI ldap://localhost:389
SIZELIMIT 12
TIMELIMIT 15
DEREF never
開始 slapd 服務器

/etc/init.d/slapd restart
測試
netstat -lvt | grep ldap
tcp 0 0 *:ldap *:* LISTEN
tcp6 0 0 [::]:ldap [::]:* LISTEN
其實 OpenLDAP 服務器的安裝方法並不複雜. 困難反而在於 client 客戶端的設定之上. 下篇文章, 將會介紹如何用 LDAP 設置 Linux 上的使用者登入系統.

2009年8月12日 星期三

how to maintain a SME class network如何維護一個中小企的網絡 - ACCESS

Access 安全性 

相信不少朋友都會以為 IT risk 中, 最大問題的存在就是網絡安全. 其實非也. 造成捐失的多數都是穩定性與準確性不足. 被人入侵系統而造成的損失只作小數.
而在這少數的入侵當中, 80% 以上都不是因為防毒系統 / 防火墙漏洞. 反而是網絡釣魚. 在本文將會講解一下.
Firewall 防火牆
其實什麼是防火墻 ? 防火墻可以阻擋不明要求 request 直接到達伺服器. 在家中, 如果希望多台電腦同時上網,則需要一台路由器. 這個路由器的配置 NAT firewall 都是防火墻的一種. Linux 中, 常用的防火墻軟件叫 iptables.
防火墻還有多種功能如 Port forwarding, port redirect, load balancing …
中小企中, 常用的少不了 NAT network address translation. 目的是令公司多台電腦可以同時上網 / 同一個地址使用多間網絡公司. 防火墻設定不到家可能避不過以下攻擊
DDOS flooding - 傳送大量封包倒窒網絡
Fire walking – 防火墻被穿透, 秘密暴光
middle man attack - 認證資料被盜
網絡安全與資源拉上很大關係. 沒有一本書可以教人完全防避攻擊, 因為這是一項比賽, 當有新技術/ 新服務時就必有新漏洞. 需要資金上的投資去維持高程度的網絡安全.
中小企來說, 建議把 IT 成本上的 20% 放於網絡安全之上.
User access control 權限管理
除駭客入侵外, 員工的權限管理不完善亦會造成資料外洩. 不要讓一般員工看見經理的文件這個簡單的道理, 事實不是容易達到的.
希望完善的管理權限, 需要 Role based access control. 大部份 ERP 軟件– entreprise resource planning 應該有預備的.
除此之外, 因為密碼容易口傳口的流失, 應該強制性要求員工定期更改密碼. 以 linux 做例子, passwd -x 這個指令已經有這個效果.
在重要的文件上應該加上多重認證, 除密碼外, 還可考慮指紋, 電子證書, 問答題等認證方法.
Data deletion 資料移除
資料在電腦上按刪除後就會消失嗎 ? 當然不會了 ! 在磁碟上寫過的東西是永遠不會失去的 ! 隨便把它棄置就會造成資料流失.
除燒掉磁碟外有什麼做法 ? 這是最容易的做法. 你還可以考慮市面上一些禎料危急回覆公司, 他們亦會幫客人刪除資料. 還有data deletion software 可以幫手. 
Anti-virus 防毒
差不多每個 Windows系統都跟著一個防毒軟件吧. 大家有沒有想過為什麼老是中毒, 什麼是電腦病毒 ? 大部份所謂的電腦病毒就是為 windows 而設的程式, 令你的 windows 造成混亂. 如一些錯誤訊息 (硬碟已滿, cpu 過高, 網絡沒回應).
但裝上防毒系統後就不停有些過敏徵狀.如不停彈出的危險警告. 員工不知道這些警告是什麼時, 就會影響工作效率.
其實現在的 linux 除了玩電腦遊戲外, 不當機, 高效能,免費軟件等方面早就比windows 做得出色. 現在的 open office 已經支援絕大部份的文件處理工作. 最重要的最 Virus-free. 做老闆的不會再有中毒的煩惱.
還不打算用 linux ? 可以考慮病毒過濾的防火墻, 亦有不錯的效果.
Wireless lan security 無線網絡安全
無線網絡安全是近年熱門的話題. 因為有別於一般線性的網絡, 無線網絡安全有以下幾點要特別小心. 
網絡可達範圍
就是說你的無線網絡天線的射程. 因為你的網絡是向四周廣散, 能夠接觸到的人遠比你想像的多. 即是說受攻擊機會亦愈多.
認證方式
一般常用的認證在無線路由器上會用 pass phrase 表示. 切記要在16 個字符之上並包括英文/ 數字/ 符號.否則就很容易被強行破解.
在家上網時, 經常會發現周圍有一些沒有打開認證功能的上網點 ap – access point. 即是說可以除時用這些 ap 來上網. 做老闆的你可要特別小心, 因為不法份子用了你的戶口上網後, 警察第一個就是來找你了!
資料加密方式
常用資料加密方式有 wep / wpa / wpa2. 現時, wep 已經不是安全的加密方式, 駭客軟件例如 aircraft 已經有相當高的成功率擊破 wep. 以後在設定路由器時不要再選擇 wep 了!
使用無線網絡時需要特別小心的是, 有時你會發覺網絡不停的斷線. 其實不是你的儀器問題. 而是一些駭客軟件在記錄你的登什數據.當有一定份量時, 就可以登入你的網絡.所以發現無線網絡斷線時,最後等一下才再登入 ap.
phishing 網路釣魚
什麼是 網路釣魚? 網路釣魚其實跟IT 技術沒有關係. 最簡單的網絡釣魚例子是打電話以交談方式騙得系統密碼. 更可以是真接走到系統主機前盜坎資料.
這些 網路釣魚才是中小企中最常出現損失的原因.更佔整體的 80%.
防避 網路釣魚需要加強員工陪訓,加強保安意識 – Risk awareless culture . 技術方面, 可以考慮把重要的資料分給兩個以上的員工保管. 例如一個檔案需要兩個開啟密碼.
聽過以上的介紹後, 相信大家對網絡安全有了初步的認識.如有任何問題, 歡迎與我聯絡
MSN: funnykeith@msn.com

2009年8月11日 星期二

Howto you choose your business IT solution 如何選擇你的資訊科技方案

在創業的情況下, 人才不足造成一個很大的問題. 很多時, 創業者還要充當技術員. 今天就來說說如何選擇中小企的 IT 設置. 以減低 IT 方面造成的煩惱. 

剛創業時, IT 設置大致上是
公司網站, eshop, online sharing

選擇有
寄存公司
自建伺服器
IT outsourcing ( 外判 )

寄存公司特性 hosting
硬件, 軟件, 支援都放在寄存公司
伺服器能力與權限低
開始成本較低, 但自主能力亦低
應變速度低

自建伺服器 / 租用伺服器
硬件, 軟件, 支援都完全掌握
擁有最大伺服器能力與權限
高自主性, 但開始成本較高
沒有現金上的維護費 *因需要有技術伙伴
應變速度高

IT outsourcing ( 外判 )
硬件, 軟件在自己地方
支援在外判公司
高伺服器能力與權限
高自主性, 開始成本較高
維護費與應變速度成正比

以下大致把中小企分為兩類作分析
1)剛創業,未有自己的伺服器
2)已創業一段時間, 開始需要建立公司網絡

1)剛創業,未有自己的伺服器
剛創業時, 很多人都會選擇一些 hosting 公司, 有兩大原因.
1) 以為硬件所費不菲
2) 不想自行維護伺服器
特別要留心的是, hosting 公司一般會附上特別條款, 以致客戶要升級 / 更新時需要額外費用.
其實, IT 只是一門工具, 幫助你的成功. 因此,寄存公司,外判還是自建伺服器要以情況而定. 以下有數種情況

a) 如果你打算做服務性網站 - web applications
切忌找 hosting 公司, 因為建這類網站經常需要在伺服器作特別設定. 而且剛開始時期, 網站必然需要經常更新.你應該找的是好的技術伙伴, 以免長時間支付更新升級的龐大開支.個人認為, 沒有技術伙伴, 不要開設這類網站.

b) 如果你需要一個內聯網跟伙伴遙距合作
很多時, 剛創業都會是開 home office, 所以跟伙伴的網上溝通很重要.
這樣的話, ftp server ( File sharing server ) 看來是必要的. 除此以外, 你需要的是 crm / erp / project management tool 這類的系統. 在寄存公司租用這類系統所費不菲. 希望減省這筆費用的話, 可考慮自行搭建. 這類伺服器不太複習, 搭建後可考慮找外判公司維護.

沒有 IT 經驗的話, 從頭搭建伺服器會有一定難度, 本人有些已設定好的 CD檔 / 虛儀機,需要的可跟我聯絡

c) 如果你只需要一個介紹公司的網站
一般公司介紹網站就是說 ” 關於我們, 聯絡我們, 服務 ” - “about us, contact us, service” 一類的介紹. 這類網站的系統要求不高. 而且寄存費亦不會太高, 可考慮寄存公司. 但說到專業的網站設計, 個人認為設計公司會做得更加出色.

即使是公司網站, 更新與維護都是小不免的. 應考慮一些 CMS - content management system作為網站系統, 有助加快更新速度. 而且配備的網站功能更齊全如: 討論區, 日誌,相冊這些宣傳必備的工具. 別考慮買一些太低價錢, 連登入系統都沒有的網站. 用這些網站的後果是維護成本不菲.
此外, 購買網站時還要留意系統上限, 有些設計公司會刻意限制網站頁數, 相片 / 貨品.
其實網站就像你的一個員工, 需要長期投資與訓練才可到達預期效果.

CMS 會不會很貴 ? 到這裹看看就知道了 http://yubis.net

d) 如果你是靠網站做買賣的
一般 hosting 公司會把一個 eshop與寄存服務一抨賣給你. 由數千塊到萬多塊不等. 值得一提的是在付款後, 你的網站想追加的所有新功能都是要另外收費的, 即使你找到技術人員自行在寄存位置安裝. 例如加裝一個討論區, 亦需要授權費.
這類網站存放著大量客戶和貨品資料, 把它 ” 搬家 ” 的成本可能比買個新網站本身更高.
所以, 選擇前要先預算網站的規模 . 打算將來追加新功能的話, 付款前應先看清楚條文, 追加新功能要不要給授權費. 當然最好就是有技術伙伴, 外判在這個案上看來則用不上.

關於ehsop, 本人亦有些已設定好的 CD檔 / 虛儀機,希望一試擁有私家伺服器的話可跟我聯絡.

2)已創業一段時間, 開始需要建立公司網絡

這類中小企應該已經建好自己的網站, 有基本的 IT 設置, 之後考慮的將會是以下一些題目

安全問題 - 你可能需要 vpn
VPN - Virtual private network 是一種網絡加密技術, 令你在安全的情況下登入公司內聯網.
VPN大致分為三大類
1) pptp
微軟 Microsoft 開發的 vpn 技術, 登入時只需要使用者名稱密碼
安全程度較低, 但設定容易

2) ipsec 安全常用的 vpn 技術
登入時需要認證 certificate, 有雙重登入, 安全性高
設定與維護比較複習, 客戶端跟服務器最好是同一個軟件 ( 例如 cisco-cisco, openswing openswing )

3) ssl-vpn 用溜覽器認證的 vpn 技術
這是最近新興的技術, 不用安裝客戶端軟件, 就可以登入vpn.
安全性為 1) 與 2) 中間, 但易用跟穿牆力是最高的. ( 穿牆力: 穿過防火牆的能力 .. 這樣就 可以適應不同地方 )

選擇 vpn 時, 應該跟以要求之安全程度決定. 太安全就會不方便, 而且成本高. 太方便又不會安全

海外溝通 - 你可能需要 voip
VoIP, Voice over IP 簡單的說就是用寬頻線 broadband 代替電話線. 費用會比電話線低很多. 現在很多公司現在喜歡用 VoIP 打長途電話.
自建 VoIP 服務器不是一件容易的事, 希望一試的話, 可到 google 找找 Astrisk

資料保全 - 你可能需要遙距備份
遙距備份就是說把你的資料備份到另外的地方. 不是說另外的電腦, 而是另外的地點如: 由香港備份到新加坡.
在 9/11 之後, 很多公司都十分關注這種備份, 因為伺服器的救援速度可以決定公司的命運. 如此重要的東西應該找專業的公司幫忙. 但希望自己解決的亦有方法. * 最好先登入 vpn 才備份, 以免資料外洩
做遙距備份常用的的技術叫 increment backup, 即是說每一次更新只複制更改過/ 新加入的地方, 舊的地方不動. 在開源世界中, 有一個套件叫 rsync 把這事程發揮得很好.

做定期遙距備份關係到大量伺服器與網絡設定, 在這裹就不詳說, 簡單的就是
1)建立一個 linux / unix server
2)設定為一個網絡存儲裝置
3)把公司的檔案放上去,假設檔案名稱為 /home/backup
4)在 /etc/crontab 加入每小時更新 : rsync -rtlzv –delete 你的遙距地址 /home/backup

*遙距地址的伺服器都需要安裝 linux / unix

如果想試用遙距備份/ vpn, 本人亦有實驗環境, 可跟我聯絡