четверг, 17 июля 2014 г.

Средства TUI для CentOS

При базовой установке CentOS утилиты с псевдографическим интерфейсом облегчают начальную настройку:

yum install setuptool system-config-securitylevel-tui authconfig system-config-network-tui ntsysv
  • setuptool : основные настройки
  • system-config-securitylevel-tui : настройки фаервола
  • authconfig : для настрокий аутентификации
  • system-config-network-tui : настройки сети
  • ntsysv : системные службы
отсюда http://www.itechlounge.net/2012/02/linux-installing-text-mode-setup-tool/

CentOS в домене Windows

Подготовка домен контроллера Windows:

Перед присоединением хоста Linux в домен, необходимо установить на контроллер домена компоненты NIS  для Windows Server 2003, Windows Server 2008, Windows Server 2012
В случае успешной установки в свойствах пользователя AD должна появиться соответствующая вкладка. Убедитесь что каждому пользователю, который будет авторизоваться на Linux хосте назначен UID и остальные аттрибуты, выбрана Primary Group\Основная группа и этой группы установлен GID.

Подготовка хоста Linux:

1. Настроить сеть и сменить имя хоста.
3. Установить TUI [yum install setuptool system-config-securitylevel-tui authconfig system-config-network-tui ntsysv]
3.1 Поставим средства PAM [yum install pam* fprintd-pam -y] и Kerberos [yum install krb5-workstation]
4. Установить ntpdate и провести синхронизацию часов с DC. Крайне желательно настроить ntpd и регулярную синхронизацию времени с DC (мануалов в сети куча).
5. Вырубить SELinux.
6. Регаемся на https://portal.enterprisesamba.com/ чтобы получить доступ к репозиториям Sernet Samba и следуем инструкциям по добавлению репозитория.
7. yum install sernet-samba sernet-samba-winbind -y ставим непосредственно Samba Sernet
8. Убедимся что все необходимые службы стартуют при запуске chkconfig --list [служба], где службы:
  sernet-samba-smbd
  sernet-samba-winbindd
  sernet-samba-nmbd
Если что-то off делаем chkconfig on [служба]
9. Делаем копии всех ключевых конфигурационных файлов
    /etc/samba/smb.conf (вообще Sernet Samba не создает smb.conf)
    /etc/krb5.conf
    /etc/nsswitch.conf
10. Убедимся что DC доступен и нормально распознается по имени (включая FQDN).
11. Запускаем authconfig-tui
  11.1
    Включаем Use Winbind
    Оставляем Use Shadow Passwords
    Включаем  Use Fingerprint reader
    Включаем  Use Winbind Authentication
    Оставляем Local authorization is sufficient
    При переходе на следующий экран могут появится ошибки о нехватке библиотек,
    в этом случае их надо устранить
  11.2
    Ставим Security Model (*) ads
    в Domain пишем имя домена большими буквами (не FQDN)
    в Domain Controllers вписываем имена DC, разделенные пробелами (FQDN, маленькими буквами)
    в ADS Realm пишем полное имя домена (ex. DOMAIN.LOCAL)
    в Template Shell /bin/bash (или nologin)
    Жмем Join Domain
  11.3 
    Зайдем на DC и убедимся что учетная запись компьютера была создана и в DNS появились
    записи для добавленного хоста. необходимо создать записи (PTR тоже), в случае если они отсутствуют.
  11.4
    Вписываем имя пользователя с правами на добавление компьютеров в домен. (без \ и @) и пароль
  11. Жмем OK и выходим из утилиты. Смотрим вывод после net ads join -U <Пользователь> на предмет ошибок.
  *при добавлении может возникнуть ошибка вида DNS Update failed, коотрую можно проигнорировать, но убедится что DNS запись для данного хоста добавлена в DNS Active Directory

12. Добавим в smb.conf следующие строки (взято с wiki.samba.org) в секцию [global], заменив SAMDOM на имя домена:
idmap config *:backend = tdb
idmap config *:range = 70001-80000
idmap config SAMDOM:backend = ad
idmap config SAMDOM:schema_mode = rfc2307
idmap config SAMDOM:range = 500-40000
winbind nss info = rfc2307
winbind trusted domains only = no
winbind use default domain = yes
winbind enum users = yes
winbind enum groups = yes

13. В /etc/sdefault/samba-sernet убедится что SAMBA_START_MODE="classic"
14. Сделать рестарт всех служб Samba:
  service sernet-samba-smbd restart
  service sernet-samba-winbindd restart
  service sernet-samba-nmbd restart

Проверка функционала.

wbinfo -t связь с доменом
wbinfo -p проверить запущен ли Winbind
wbinfo -u список пользователей домена Windows
wbinfo -g список групп домена Windows
wbinfo -n <пользователя> даст вам SID пользователя, полученный SID подставим в wbinfo -S <SID>. Сверьте полученные UID\GID с данными на вкладке UNIX attributes в свойствах пользователя AD. Они должны совпадать.

Troubleshooting.

Самым информативным методом является запуск Winbindd в следующем виде:
winbindd -i -d <Уровень информативности 1-10>
Перед запуском убедитесь что sernet-samba-winbind остановлена.

среда, 16 июля 2014 г.

CentOS в режиме роутера

Работа CentOS в режиме роутера:

Интерфейсы:

eth0 - WAN

eth1 - LAN

Настройка маршрутов

route add -net <подсеть LAN> netmask <маска> dev eth1
route add -net 0.0.0.0 netmask 255.255.255.255 dev eth0

Настройка iptables:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Правим конфиги:

В /etc/sysctl.conf ставим net.ipv4.ip_forward = 1
В /proc/sys/net/ipv4/ip_forward ставим 1

Сохраним изменения iptables и маршрутов:

  1. iptables-save > /etc/iptables.up.rules
  2. echo 'pre-up iptables-restore < /etc/iptables.up.rules' >> /etc/networks/interfaces
  3. echo 'up route add -net 192.168.0.0 netmask 255.255.255.0 dev eth1' >> /etc/networks/interfaces
  4. echo 'up route add -net 0.0.0.0 netmask 255.255.255.255 dev eth0' >> /etc/networks/interfaces


via

Сохранение reslov.conf

Для того чтобы resolv.conf не переписывался DHCP клиентом каждый раз при перезагрузке, необходимо добавить PEERDNS=no в конфигурационный файл интерфейса (\etc\sysconfig\network-scripts\ifcfg-*)