CentOS 5.4 в качестве файлового сервера в AD или история одного воскрешения. Часть 1.

День 1.
На моей новой работе поставили задачу сделать файлопомойку из одного старенького сервера.

День 2.
Сервер привезли ко мне в офис из дата центра в ужасном состоянии: один процессор (из 2х Xeon'ов) после перегрева ушёл в ошибку (для справки — лечится в биосе функцией сброса CPU).

День 3.
5 из 7ми SCSI дисков были в состоянии Error и определялись нулевого объёма. Как выяснилось, на обоих шлейфах были погнуты контакты (для справки — SCSI кабели типа ПАПА), разогнул, выпрямил. На RAID контролере нашёл виновника — переломлена стенка между отверстиями. Из-за чего как-раз эти два контакта и гнулись. Стенку отогнул назад и аккуратно вставил кабель. Второй шлейф похоже тоже туда пихали, его тоже вылечил. Вот из за этой мелочи мне пришлось потратить два дня на низкоуровневое форматирование винчестеров и сборку их в три RAID1.

День 5.
Ура, двух часовую проверку 100% нагрузкой на все системы сервер прошёл. Устанавливаю CentOS 5.4. Систему поставил в минимальном режиме. Хотя и тут зачем то установился совершенно ненужный мне сендмаил.
Переходим к установке и настройке ПО:

Определимся с настройками:
IP-адрес машины — 192.168.8.114
Имя машины — filesrv
Домен — CC
Контролёр домена — ccpdc

Прописываем имя нашего сервера и контролёра домена в /etc/hosts:

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1	filesrv.CC filesrv
192.168.8.114 filesrv.CC filesrv
192.168.8.2 ccpdc.CC ccpdc


Устанавливаем Самбу и Керберос

yum install samba samba-client samba-common krb5-server krb5-workstation krb5-libs


Настраиваем Керберос:

nano /etc/krb5.conf 

[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log

[libdefaults]
 default_realm = CC
 dns_lookup_realm = false
 dns_lookup_kdc = false
 ticket_lifetime = 24h
 forwardable = yes

[realms]
 CC = {
  kdc = ccpdc.cc
  default_domain = cc
 }

[domain_realm]
 .cc = CC
 cc = CC

[appdefaults]
 pam = {
   debug = false
   ticket_lifetime = 36000
   renew_lifetime = 36000
   forwardable = true
   krb4_convert = false
 }

* Обратите внимание на регистр символов!

Правим настройки авторизации с учётом пользователей домена:

nano /etc/pam.d/system-auth

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required	  pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        sufficient    pam_smb_auth.so use_first_pass nolocal
auth        sufficient    pam_winbind.so use_first_pass
auth        required	  pam_deny.so

account     required	  pam_unix.so broken_shadow
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     [default=bad success=ok user_unknown=ignore] pam_winbind.so
account     required	  pam_permit.so

password    requisite     pam_cracklib.so try_first_pass retry=3
password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok
password    sufficient    pam_winbind.so use_authtok
password    required	  pam_deny.so

session     optional	  pam_keyinit.so revoke
session     required	  pam_limits.so
session     optional	  pam_mkhomedir.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required	  pam_unix.so

Сейчас пользователи домена могут спокойно авторизоваться на сервере.

Минимально настроим самбу. В прочем это вполне рабочий конфиг:

[global]
	dos charset = 866
	workgroup = CC
	realm = CC
	netbios name = FILESRV
	server string = Samba File Server
	interfaces = 192.168.8.114/255.255.255.0
	security = ADS
	auth methods = winbind
	allow trusted domains = No
	null passwords = Yes
	obey pam restrictions = Yes
	password server = ccpdc
	log level = 2
	log file = /var/log/samba/log.%m
	max log size = 50
	name resolve order = hosts wins bcast lmhosts
	client signing = Yes
	socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192
	os level = 0
	preferred master = No
	local master = No
	domain master = No
	dns proxy = No
	idmap backend = idmap_rid:CC=10000-20000
	idmap uid = 10000-20000
	idmap gid = 10000-20000
	winbind enum users = Yes
	winbind enum groups = Yes
	winbind use default domain = Yes
	hosts allow = 192.168.8., 192.168.10., 127.0.0.1
	case sensitive = No

[upload]
	comment = Global Upload Folder
	path = /srv/ARRAY0/smb/upload/
	valid users = "@CC\domain users"
	read only = No
	create mask = 0666
	directory mask = 0777

* SELinux — выключен!

Настраиваем nsswitch, для того чтобы он мог использовать данные AD с помощью winbind-сервиса:

nano /etc/nsswitch.conf

passwd:     files winbind
shadow:     files winbind
group:      files winbind


Стартуем сервисы:

service smb start
service winbind start


* Время между машиной и контролёром домена должно быть синхронизировано!

Проверяем подключение к домену:

# kinit Administrator
Password for [email protected]: 
# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: [email protected]

Valid starting     Expires            Service principal
11/23/09 15:14:02  11/24/09 01:14:52  [email protected]
	renew until 11/24/09 15:14:02


Kerberos 4 ticket cache: /tmp/tkt0
klist: You have no tickets cached


Если нет ошибок, то входим в домен:

net ads join -U Аdministrator
Аdministrator's password:
Using short domain name -- CC
Joined 'filesrv' to realm 'CC'


Проверяем пользователей и группы домена:

wbinfo -u
wbinfo -g


Ну и напоследок сервисы в автозапуск:

chkconfig --level 345 smb on
chkconfig --level 345 winbind on


Вот вроде и всё. Если есть вопросы, обращайтесь.
  • +3
  • 23 ноября 2009, 15:22
  • Mihael

Комментарии (5)

RSS свернуть / развернуть
+
+1
Ничего себе ты напластал
В мемориз, однозначно!

А тем кто пользовал до этого сервер
нужно руки оторвать
avatar

Sergei_T

  • 23 ноября 2009, 16:51
+
+1
не только руки
avatar

Mihael

  • 23 ноября 2009, 16:52
+
+1
Следующей будет статья о нагиосе
avatar

Mihael

  • 23 ноября 2009, 17:06
+
0
хм — вроде мощная система мониторинга
avatar

Sergei_T

  • 23 ноября 2009, 18:45
+
+1
Спасибо за статью очень хорошая
avatar

niki

  • 09 августа 2012, 09:36

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.