Искам да споделя, че от няколко дни съм започнал да залагам в интернет на футболни мачове. Причината заради която не го правех досега, е явното ми пристрастие към един футболен отбор – Manchester United. Хубавото в слуая е, че мога да изкарам доста пари ако имам късмет, лошото е че трябва да залагам против любимия си отбор (защото в момента са в криза и не играят никак добре).
Като всеки начинаещ, така и аз започвам с минимални залози – не се хвърлям на дълбокото.. и смятам да послушам приятеля си Стелко – да внимавам със зарибявката!
Тук се вижда че имаме свободни 9464MB които ще запълним до дупка и след това ще изтрием чрез командата shred
Първо създаваме файл голям колкото свободно място имаме в момента, след това го изтриваме „защитено“ със shred:
Днес реших да споделя за новата ми играчка – а именно samba 4 active directory – или иначе казано, подкарах напълно функциониращ Active Directory сървър под линукс, и така спрях Windows 2008 R2 сървър който работеше само за това и ядеше 4 гб рам ей така.. от нищото..
Цялата работа с Active Directory е възможно благодарение на новата версия на samba – а именно версия 4, която позволява самият демон samba да работи като AD. След успешната му инсталация, AD сървъра може да се управлява през Windows машина след като се инсталира така нареченият : Microsoft’s Remote Server Administration Tools.
Този туул работи на Windows XP, Vista, 7 но трябва версията им да е Professional.
Ето и накратко как става работата, като примера който ще дам е за AD върху CentOS:
1. Трябва да се логнете като root в сървъра и да пуснете ъпдейт на пакетите:
# yum update
2. Трябва да се инсталират и следните пакети които са необходими за компилирането на Samba 4:
8. Логваме се отново като root и започваме с компилирането на samba 4:
# cd samba-master
# ./configure --enable-debug --enable-selftest
# make
9. Ако всичко е ок, продължаваме напред:
# make install
След успешно инсталиране, директорията и конфигурационните файлове на samba 4 се намират на : ‘/usr/local/samba’.
Следва и конфигурирането на Active Directory сървъра:
[root@samba ~]# /usr/local/samba/bin/samba-tool domain provision
Realm [ROOT.BG]: ROOTBG.DC
Domain [ROOTBG]: ROOT.BG
Server Role (dc, member, standalone) [dc]:
DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]:
DNS forwarder IP address (write 'none' to disable forwarding) [10.0.20.3]:
Administrator password:
Retype password:
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
Adding DomainDN: DC=rootbg,DC=dc
Adding configuration container
Setting up sam.ldb schema
Setting up sam.ldb configuration data
Setting up display specifiers
Modifying display specifiers
Adding users container
Modifying users container
Adding computers container
Modifying computers container
Setting up sam.ldb data
Setting up well known security principals
Setting up sam.ldb users and groups
Setting up self join
Adding DNS accounts
Creating CN=MicrosoftDNS,CN=System,DC=rootbg,DC=dc
Creating DomainDnsZones and ForestDnsZones partitions
Populating DomainDnsZones and ForestDnsZones partitions
Setting up sam.ldb rootDSE marking as synchronized
Fixing provision GUIDs
A Kerberos configuration suitable for Samba 4 has been generated at /usr/local/samba/private/krb5.conf
Once the above files are installed, your Samba4 server will be ready to use
Server Role: active directory domain controller
Hostname: samba
NetBIOS Domain: ROOT.BG
DNS Domain: rootbg.dc
DOMAIN SID: S-1-5-21-520620405-2705991534-2248172295
Стартираме samba 4 демона чрез :
/usr/local/samba/sbin/samba
А за автоматично стартиране на сървъра, можем да добавим този ред в rc.local конфига :
[root@samba samba]# kinit Administrator@ROOTBG.DC
Password for Administrator@ROOTBG.DC:
Warning: Your password will expire in 41 days on Sun May 4 02:54:08 2014
[root@samba samba]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: Administrator@ROOTBG.DC
Valid starting Expires Service principal
03/23/14 18:12:28 03/24/14 04:12:28 krbtgt/ROOTBG.DC@ROOTBG.DC
renew until 03/24/14 18:12:25
[root@samba samba]#
Накрая инсталираме Windows Remote Administration Tools:
1. Изтегляме Windows Remote Server Administration Tools
2. Следваме инструкциите за ‘Install RSAT’
3. Инсталираме необходимите компоненти от ‘Control Panel > Programs > Turn Windows features on or off > Remote Server Administration Tools’
Ето и резултата:
Това е 🙂 Вече имаме работещ Active Directory сървър на нашият linux сървър, без да е необходимо да използваме услугите на Microsoft – и по-специално да имаме Windows Server!
Доста труден сезон за нас феновете на Manchester United. След днешният мач срещу Олимпиякос, най-накрая усетихме това което отдавна не бяхме усещали – а именно вкуса на хубавата победа! И най-важното, насладихме се на прекрасна игра!
Последно време избягвам да говоря /пиша/ по адрес на Manchester United, но днес немога да се сдържа, и искам да изразя задоволството си от мача.
Не вярвам да постигнем много след този мач, особенно като гледам другите отбори класирали се за четвъртфиналите на ШЛ. От цялата работа се надявам да започнем полека да излизаме от кризата… и #GGMU ! 😎
Гепих видео с обзор на мача от YouTube и го споделям тук за спомен!
DNS Split zones може да се използва в много случаи, но в моя го използвам моите 2 офис сървъра да виждат хостовете си локално, вместо всеки един от тях да вижда другия с реалното си айпи.
Ето и пример за това:
root@dobrich:~# hostname
office.dobrich.root.bg
root@dobrich:~# host web
web.dobrich.root.bg has address 192.168.1.20
root@dobrich:~# host web.varna.root.bg
web.varna.root.bg has address 84.84.84.84
root@dobrich:~# host 192.168.1.20
20.1.168.192.in-addr.arpa domain name pointer web.dobrich.root.bg.
root@dobrich:~# host 192.168.2.20
Host 20.2.168.192.in-addr.arpa. not found: 3(NXDOMAIN)
root@dobrich:~# host prodweb
prodweb.dobrich.root.bg is an alias for web.dobrich.root.bg.
web.dobrich.root.bg has address 192.168.1.20
root@varna:~# hostname
varna.root.bg
root@varna:~# host web
web.varna.root.bg has address 192.168.2.20
По този начин от Dobrich виждаме хостовете които отговарят за зоната dobrich.root.bg, а от varna виждаме само хостовете които отговарят за varna.root.bg. Ако от единия искаме да достъпим другия, то го правим вписвайки целия хостнейм (които отговаря на външното айпи)
Така дефакто постигаме така нареченият DNS split zones.
Ето и как дефакто става номера:
Махаме този ред от /etc/bind/named.conf: include „/etc/bind/named.conf.default-zones“;
В сървъра Dobrich нашият /etc/bind/named.conf.local трябва да изглежда така:
acl dobrich {
192.168.1.0/24;
127.0.0.1;
};
acl varna {
84.84.84.84;
};
view "dobrich-view" {
match-clients { jfk; };
// recursion yes;
zone "." IN {
type hint;
file "/etc/bind/db.root";
};
zone "localhost" {
type master;
file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
type master;
file "/etc/bind/db.255";
};
zone 1.168.192.in-addr.arpa {
type master;
file "/etc/bind/db.192.168.1";
allow-transfer {
192.168.1.29;
84.84.84.84;
};
};
zone "dobrich.root.bg" {
type master;
file "/etc/bind/dobrich.root.bg";
allow-transfer {
192.168.1.0/24;
84.84.84.84;
};
};
};
view "varna-view" {
match-clients { varna; };
// recursion no;
zone "." IN {
type hint;
file "/etc/bind/db.root";
};
zone "localhost" {
type master;
file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
type master;
file "/etc/bind/db.255";
};
zone "varna.root.bg" {
type master;
file "/etc/bind/varna.root.bg";
allow-transfer {
192.168.1.0/24;
84.84.84.84;
};
};
zone 2.168.192.in-addr.arpa {
type master;
file "/etc/bind/db.192.168.2";
allow-transfer {
192.168.1.0/24;
84.84.84.84;
};
};
};
include "/etc/bind/rndc.key";
server 192.168.1.0/24 {
keys {
rndc-key;
};
};
В сървъра Varna нашият /etc/bind/named.conf.local трябва да изглежда така:
acl dobrich {
44.44.44.44;
};
acl varna {
192.168.2.0/24;
127.0.0.1;
};
view "dobrich-view" {
match-clients { dobrich; };
// recursion yes;
zone "." IN {
type hint;
file "/etc/bind/db.root";
};
zone "localhost" {
type master;
file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
type master;
file "/etc/bind/db.255";
};
zone 1.168.192.in-addr.arpa {
type slave;
file "/etc/bind/db.192.168.1";
masters { 44.44.44.44; };
allow-notify { 44.44.44.44; };
};
zone "dobrich.root.bg" {
type slave;
file "/etc/bind/dobrich.root.bg";
masters { 44.44.44.44; };
allow-notify { 44.44.44.44; };
};
};
view "varna-view" {
match-clients { varna; };
// recursion no;
zone "." IN {
type hint;
file "/etc/bind/db.root";
};
zone "localhost" {
type master;
file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
type master;
file "/etc/bind/db.255";
};
zone "varna.root.bg" {
type slave;
file "/etc/bind/varna.root.bg";
masters { 44.44.44.44; };
allow-notify { 44.44.44.44; };
};
zone 2.168.192.in-addr.arpa {
type slave;
file "/etc/bind/db.192.168.2";
masters { 44.44.44.44; };
allow-notify { 44.44.44.44; };
};
};
Тук цялата работа върши опцията „acl“ като в нея се посочва от кои айпи адреси да се има достъп до коя зона.
В поста съм писал фалшиви публични айпи адреси : 44.44.44.44 и 84.84.84.84 с цел сигурност.
44.44.44.44 = dobrich.root.bg
84.84.84.84 = varna.root.bg