четверг, 31 июля 2008 г.

Восстановление пароля root в MySQL

Угораздило забыть пароль root'a на одном из серверов. Решение нашлось достаточно простое:


# /etc/init.d/mysql stop

# mysqld_safe --skip-grant-tables &

Теперь можно заходить как root без пароля:

# mysql -u root

меняем пароль:

UPDATE mysql.user SET Password=PASSWORD("новый пароль") WHERE User='root';
FLUSH PRIVILEGES;

Запускаем сервер в нормальном режиме:

#/etc/init.d/mysql stop
#/etc/init.d/mysql start

Все!

среда, 30 июля 2008 г.

samba 2.4 в составе AD Windows 2003

Давно хотел конфиги и комментарии по сабжевому поводу выкинуть,.... все некогда )) Но надеюсь сегодня допишу.

В общем-то все просто(описана настройка для Debian 4.0r3):
1. устанавливаем пакет heimdal-dev и heimdal-client
2. libpam-ldap, libldap2, ldap-utils
3. samba, smbclient, smbldap-tools
4. еще у меня установлен пакет winbind - хотя судя по документации и без него должно работать - я не проверял 8-)

Далее настраиваем Kerberos. Надо отредактировать файл /etc/krb5.conf
Вот какой он у меня.

[libdefaults]
default_realm = DOMAIN.RU

[realms]
DOMAIN.RU = {
kdc = DC.DOMAIN.RU
}
[domain_realm]
.local.net = DOMAIN.RU


DOMAIN.RU - имя моего домена.

DC.LOCAL.NET - имя ПК под управлением Windows 2003,
который является Primary Domain Controller.

Далее редактируем файл /etc/nsswitch.conf.

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

#passwd: compat #эти строчки должны быть
#group: compat #обязательно закомментированы, иначе не будет работать.

hosts: files dns
networks: files

services: files
protocols: files
rpc: files
ethers: files
netmasks: files
netgroup: files
bootparams: files

automount: files
aliases: files

Теперь надо отредактировать /etc/samba/smb.conf
[global]
auth methods = winbind
netbios name = samba-server
workgroup = DOMAIN
realm = DOMAIN.RU
password server = dc.domain.ru
encrypt passwords = yes #это обязательно!
server string = File Server
security = ADS #это тоже
allow trusted domains = No
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
os level = 0
preferred master = No
local master = No
domain master = No
dns proxy = No
ldap ssl = no
idmap uid = 10000-20000
idmap gid = 10000-20000
hosts allow = 192.168.0., 10.0.0., 127. #мои разрешенные сети
strict locking = No
time server = Yes
client use spnego = yes
use spnego = yes
winbind use default domain = true
winbind separator = +
log file = /var/log/samba/connect/samba.%m
max log size = 5000
log level = 1
unix charset = UTF-8
dos charset = cp866

[public]
comment = Public
path = /usr/local/samba/public
public = yes
writable = yes
printable = no
create mask = 0666
valid users = @"DOMAIN\ASU" #доступ только для группы ASU
===================================

Так же пришлось сделать пару симлинков
#ln -s /lib/libnss_winbind.so.2 /lib/libnss_winbind.so
#ln -s /lib/libnss_winbind.so.2 /lib/libnss_winbind.so.1

Теперь надо вводить нашу самбу к домен. Для этого:

net time set -S Name_Windows_PDC

Далее получаем билет от нашего PDC.

kinit Administrator@LOCAL.NET

Можно просмотреть результат командой.

klist


Если все нормально подсоединяемся к домену

net ads join -U Administrator@DOMAIN.RU

Но - теперь мы ловим ошибку. Которая исправляется пердельно просто:
Надо в /etc/hosts обязательно добавит запись

192.168.0.254 samba-server.domain.ru samba-server #соттветственно IP и имя поменять на ваши.

Кажется - все!