Því er ekki að leyna að flest tölvu umhverfi hér á landi þegar kemur til útstöðva eru Microsoft byggð. Active directory er þá oftast miðjan og notast er við MS skráarþjóna og póstþjóna.
En það eru til aðrar lausnir!
Það eru 10 ár síðan ég setti upp mína fyrstu primary domain controller uppsetningu á Samba og lét notendur logga sig inn á domain. Þetta virkaði en það voru margir gallar sérstaklega tengdir stjórnun. Mér fannst lausnin ekki nógu góð og hef ekki horft á þetta sem nógu góða lausn síðan þá. Samban sjálf sem skráarþjónn hefur verið fín til að vinna ein eða jafnvel í núverandi MS uppsetningum, en núna er komin lausn sem mér finnst áhugaverð og tengir saman tvær helstu þarfir hinnar almennu skrifstofu en það er póstur og skráar- og prentþjónusta.
Sú uppbygging byggir á að setja upp Zimbru og Samba og láta Zimbru stjórna auðkenningum inn í Samba. Gagnvart notendum er enginn munur og á Active Directory. Þeir logga sig inn á domain, sjá drifin sín, geta prentað osfrv.
Gagnvart kerfisstjóranum er öðruvísi en ekki endilega flóknari leið til að stjórna skráarþjóninum og öflugt og gott vefviðmót til að halda utan um notendur. Maður skilgreinir notanda einusinni með póst og hann getur þá (ef hann hefur næg réttindi) einnig loggað sig inn á domain-ið. Hægt er að keyra upp ræsisriftur og allt þetta helsta.
Hér að neðan lýsi ég hvernig hægt er að setja upp Zimbra og Samba til að takast á við þetta hlutverk. Uppsetningin gengur út á að setja upp Zimbru á eina vél og Samba, Dhcp og dns á aðra.
Setja upp tvær vélar
1. Setja upp tvær centos vélar (default uppsetning)
2. Ákveða domain og ip tölur dæmi:
vél 1: samba.demo.local ip: 10.5.125.101
vél 2: zimbra.demo.local ip: 10.5.125.102
3. Setja ip tölur:
setup -> "Network configuration"
3. Setja nafn:
"nano /etc/sysconfig/network"
HOSTNAME=zimbra.demo.local
4. Slökkva á óþarfa þjónustum:
chkconfig --level 3 acpid off
chkconfig --level 3 anacron off
chkconfig --level 3 atd off
chkconfig --level 3 auditd off
chkconfig --level 3 autofs off
chkconfig --level 3 bluetooth off
chkconfig --level 3 cpuspeed off
chkconfig --level 3 cups off
chkconfig --level 3 gpm off
chkconfig --level 3 haldaemon off
chkconfig --level 3 hidd off
chkconfig --level 3 ip6tables off
chkconfig --level 3 iptables off
chkconfig --level 3 mcstrans off
chkconfig --level 3 mdmonitor off
chkconfig --level 3 messagebus off
chkconfig --level 3 microcode_ctl off
chkconfig --level 3 netfs off
chkconfig --level 3 nfslock off
chkconfig --level 3 pcscd off
chkconfig --level 3 portmap off
chkconfig --level 3 readahead_early off
chkconfig --level 3 restorecond off
chkconfig --level 3 rpcgssd off
chkconfig --level 3 rpcidmapd off
chkconfig --level 3 smartd off
chkconfig --level 3 yum-updatesd off
5. Slökkva á selinux
"nano -w /etc/selinux/config"
SELINUX=disabled
5. Uppfæra vélar
"yum update yum -y"
"yum update -y"
6. Setja inn ntp:
"yum install ntp -y"
"service ntpd start"
Endurræsa
Samba vélin:
1. Setja upp DNS
1.1 Undirbúa
yum install bind
1.2. Setja upp /etc/named.conf
1.3. Sækja named.root
cd /var/named/data
wget ftp://ftp.internic.net/domain/named.root
1.4. Búa til zone færslur
0.0.127.in-addr.arpa.soa:
125.5.10.in-addr.arpa.soa:
demo.local.soa:
localhost.soa:
1.5. Keyra upp named og setja í sjálfvirka ræsingu
service named start
chkconfig --level 3 named on
2. Setja upp DHCP
2.1 Við erum áfram á samba vélinni, instöllum dhcpd:
yum install dhcp -y
2.2 Configga
nano -w /etc/dhcpd.conf
2.3. keyra upp og setja í sjálfvirka ræsingu
service dhcpd start
chkconfig --level 3 dhcpd on
3. Breyta nafnaþjónunum
nano /etc/resolv.conf:
search demo.local
nameserver 10.5.125.100
nameserver 10.5.125.101
Zimbra vélin:
1 Setja upp secondary DNS
1.1 Installa bind
yum install bind
1.2 Configga
nano /etc/named.conf
1.3 Sækja named.root
cd /var/named
wget ftp://ftp.internic.net/domain/named.root
1.4 Keyra upp og setja í sjálfvirka ræsingu
service named tart
chkconfig --level 3 named on
2. Breyta nafnaþjónunum
nano /etc/resolv.conf:
search demo.local
nameserver 10.5.125.100
nameserver 10.5.125.101
3. Setja upp Zimbra
3.1 Undirbúningur
yum install compat-libstdc++-296 compat-libstdc++-33 -y
3.1.1 Slökkva á sendmail
service sendmail stop
chkconfig --level 3 sendmail off
3.2. Fara inn á zimbra.com. Velja community -> downloads. Sækja Nýjustu útgáfu fyrir Red Hat útg. 5 og setja á zimbra vélina.
Auðveldast er að gera frá zimbra vélinni með wget:
cd /usr/src
wget http://h.yimg.com/lo/downloads/5.0.14_GA/zcs-5.0.14_GA_2850.RHEL5.20090303142201.tgz
3.3. Afpakka:
tar -xvzf zcs-5.0.14_GA_2850.RHEL5.20090303142201.tgz
3.4. Installa
cd zcs-5.0.14_GA_2850.RHEL5.20090303142201
./install.sh --platform-override
3.4.1 Það munu koma fullt af spurningum, mælt er með default svari (enter) nema annað sé tekið fram.
3.4.2 "Install anyway? [N]" - Svara y hér
3.4.3 "The system will be modified. Continue? [N]" - Svara y hér
3.4.3 "Change domain name? [Yes] " - Við ætlum að breyta domain name í demo.local
3.4.4 Þegar installi er lokið kemur upp config menu:
3.4.4.1 Velja 3 -> enter -> 4 -> enter
3.4.4.2 Setja eitthvað lykilorð. Notum t.d. zimbra931
3.4.4.3 Velja r -> enter -> a -> enter
3.4.4.4 Svara restinni af spurningunum og klára installið
3.5 Configga Zimbra vefviðmót
3.5.1 Logga inn í fyrsta skiptið
Nú þarf að tengjast með browser inn á zimbra. Mæli með að þið setjið nafnaþjónana sem við vorum að setja upp (dæmi 10.5.125.100 og 10.5.125.101) sem nafnaþjóna vélarinnar sem þið voruð á.
Farið inn á https://zimbra.demo.local:7071 í browser
Loggið inn með notendanafninu admin og lykilorðinu sem var sett (dæmi: zimbra931)
3.5.2 Annað lén:
Ef ætlunin er að nota annað löglegt lén t.d. demo.is þá er best að skilgreina það, en í þessu dæmi ætlum við að nota demo.local
3.5.3 Setja inn admin extenstions:
Við ætlum að setja inn posix og samba extensions. Til þess að gera það þurfum við að gera nokkra ó-notendavæna hluti. Í þessum leiðbeiningum hér að neðan mun ég notast við zimbra.demo.local vélina og Ubuntu
útstöð sem ég tengist með browser frá. Ég mun kalla hana útstöð í leiðbeiningunum.
a) Fara inn á zimbra.demo.local
b) Edita posix:
cd /opt/zimbra/zimlets-admin-extra
mkdir tmp_posix
cd tmp_posix
unzip ../zimbra_posixaccount.zip
nano -w config_template.xml
--
Breyta línunni:
dc=gregzimbra1,dc=zimbra,dc=com
Í
dc=demo,dc=local
Vista og loka
--
zip zimbra_posixaccount *.*
---
Flytja skránna /opt/zimbra/zimlets-admin-extra/zimbra_posixaccount.zip yfir á útstöðina (með ftp, ssh eða hverju sem er)
--
c) Edita samba
cd /opt/zimbra/zimlets-admin-extra
mkdir tmp_samba
cd tmp_samba
unzip ../zimbra_samba.zip
nano -w config_template.xml
--
Breyta línunni:
dc=gregzimbra1,dc=zimbra,dc=com
Í
dc=demo,dc=local
Vista og loka
--
zip zimbra_samba *.*
---
Flytja skránna /opt/zimbra/zimlets-admin-extra/zimbra_samba.zip yfir á útstöðina (með ftp, ssh eða hverju sem er)
--
d) Á útstöðinni í browser fara inn á admin vefiðmótið (https://zimbra.demo.local:7071) og velja "admin extension"
e) Setja inn posix admin extension:
1. Smella á deploy
2. Velja skránna sem við vorum að flytja yfir zimbra_posixaccount.zip og smella á deploy og að lokum finish
f) Setja inn samba admin extensino:
1. Smella á deploy
2. Velja skránna sem við vorum að flytja yfir zimbra_samba.zip og smella á deploy og að lokum finish
g) Reloada browsernum (ýta á reload takkann)
3.6 Configga zimbra bakenda
3.6.1 Installa sömbu
yum install samba -y
3.6.2 Breyta yfir í zimbra notandann
su - zimbra
3.6.3 Náum í upplýsingar um lykilorðið fyrir ldap notandann cn=config. Geymum það til hliðar og notum á eftir:
zmlocalconfig -s ldap_root_password
3.6.4 Náum í upplýsingar um lykilorðið fyrir ldap notandann uid=zimbra,cn=admins,cn=zimbra
zmlocalconfig -s zimbra_ldap_password
3.6.5 Setja inn samba.scheme:
cp /usr/share/doc/samba-3.0.28/LDAP/samba.schema /opt/zimbra/openldap/etc/openldap/schema/
3.6.6 Edita /opt/zimbra/conf/slapd.conf.in
nano -w /opt/zimbra/conf/slapd.conf.in
--
Eftir síðustu include línunni bæta við:
include "/opt/zimbra/openldap/etc/openldap/schema/nis.schema
include "/opt/zimbra/openldap/etc/openldap/schema/samba.schema
Fyrir neðan síðustu access færslu:
access to dn.subtree="ou=people,dc=demo,dc=local"
by dn.children="cn=admins,cn=zimbra" write
by * read
access to dn.subtree="ou=groups,dc=demo,dc=is"
by dn.children="cn=admins,cn=zimbra" write
by * read
Í lokin á skránni bæta við:
index uidNumber eq
index gidNumber eq
index memberUID eq
index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq
--
3.6.7 Keyra eftirfarandi:
ldap stop
ldap start
zmprov mcf +zimbraAccountExtraObjectClass posixAccount
zmprov mcf +zimbraAccountExtraObjectClass sambaSamAccount
Samba vélin:
1. Breyta authconfig
Keyra eftirfarandi skipun:
authconfig --enableldap --enableldapauth --disablenis --enablecache \
--ldapserver=zimbra.demo.local --ldapbasedn=dc=demo,dc=local \
--updateall
nano /etc/ldap.conf
Bæta við:
host zimbra.demo.local
binddn cn=config
bindpw test123 <-- Lykilorðið sem við sóttum í lið 3.6.3
rootbinddn uid=zimbra,cn=admins,cn=zimbra
uri ldap://zimbra.demo.local
bind_policy soft
nano /etc/ldap.conf.secret
Bæta við lykilorðið sem við fengum í lið 3.6.4
nano -w /etc/pam.d/system-auth
Bæta við neðst:
session required pam_mkhomedir.so
2. Installa og configga samba:
2.1 Setja inn samba
yum install samba -y
2.2 Edita smb.conf
nano -w /etc/samba/smb.conf
2.3 Taka aftur lykilorðið sem við fengum í lið 3.6.3 (dæmi test123) og keyra eftirfarandi:
smbpasswd -w test123
2.4 Búa til skránna /opt/bin/mkhomedir.sh
2.5 Keyra sömbu upp og setja í sjálfvirka ræsingu
service smb start
chkconfig --level 3 smb on
Vefviðmótið
Í Zimbra admin vefviðmótinu fara undir "Samba domains". Þar ætti að vera sjáanlegt domain-ið "DEMO".
1. Stofna grúppu
Velja "Posix groups" -> New:
Name: zusers
Velja "Samba groups" flipann fyrir ofan og velja síðan "Demo" domainið. Setja inn 2 í sambaGroup type og smella á save og close.
// Hægt er að keyra "getent group" á samba vélinni til að sjá hvort grúppan birtist
2. Stofna notanda
Velja "Accounts" -> "New" fylla út þetta helsta:
account name: tilraun (@demo.local)
first name: Tilrauna
last name: Notandi
Setja lykilorð
Next þangað til það kemur að "Posix account":
Posix account:
Posix group: zusers
Login shell: /bin/bash
-> Next
Samba account:
Samba domain: demo
Haka við normal user account og password does not expire
Einnig er hægt að skilgreina logon script, heimasvæði osfrv.
Smella á finish
3. Stofna Windows NT domain grúppu:
Velja "Posix groups" -> new
Name: Domain Admins
Velja síðan "Samba group" flipann
Samba domain: Demo
Haka við "Special Windows group" og velja "Domain Admins"
sambagroup type: 2
Save -> Close
4. Annað:
1. Velja aliases og eyða út root
2. Keyra á sömbu vélinni sem rót og setja lykilorð
smbpasswd -a root
3. keyra á sömbu vélinni sem rót
net rpc rights grant "DEMO\Domain Admins" SeAddUsersPrivilege SeMachineAccountPrivilege SePrintOperatorPrivilege
5. Stofna windows admin notanda
Stofnaðu notanda þannig að hann sé í Domain Admins grúppunni. Dæmi notandinn xadmin.
Samba vélin:
1. Prófa:
smbclient -U tilraun //samba.demo.local/tilraun
========================
Windows útstöð
========================
Tengja windows útstöðina við domain eins og venja er. Slá inn "demo" sem domain og logga inn sem notandinn xadmin.