Вы не вошли.
Страницы 1
Имя сервера: u1604
Имя сервера контроллера домена: SERV.DOMEN.MY
Имя домена: DOMEN.MY
Пользователь домена с правами на присоединение: supauser@DOMEN.MY
Папка для общего доступа с правами 777 : /home/virtual/Share
Обновляем сервер
sudo apt-get update && sudo apt-get dist-upgrade -y && sudo apt-get autoremove -y
Ставим samba и winbind
sudo apt-get install samba winbind
Ставим авторизацию kerberos
sudo apt-get install krb5-user
Ставим механизмы авторизации. Иначе не будет работать и будем при тестировании получать ошибку session setup failed: NT_STATUS_INVALID_PARAMETER
sudo apt-get install libpam-krb5 libpam-winbind libnss-winbind
Правим winbind
nano /etc/nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.
passwd: compat winbind
group: compat winbind
shadow: compat winbind
gshadow: files
hosts: files dns mdns4_minimal [NOTFOUND=return] mdns4
networks: files dns
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
Правим samba
nano /etc/samba/smb.conf
[global]
netbios name = u1604
workgroup = DOMEN
realm = DOMEN.MY
security = ADS
encrypt passwords = yes
dns proxy = no
panic action = /usr/share/samba/panic-action %d
winbind enum groups = yes
winbind enum users = yes
winbind use default domain = yes
template shell = /bin/bash
winbind refresh tickets = yes
idmap config *:backend = tdb
idmap config *:range = 10000-80000
idmap config DOMEN:backend = rid
idmap config DOMEN:range = 10000-80000
domain master = no
local master = no
preferred master = no
os level = 0
domain logons = no
load printers = no
show add printer wizard = no
printcap name = /dev/null
disable spoolss = yes
[share]
path = /home/virtual/Share
writeable = yes
browseable = yes
guest ok = no
Проверяем настройки samba
testparm -s
Правим ошибку количества соединений rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Добавляем в конец файл строку со значением 16384
nano /etc/security/limits.conf
............................
#@student hard nproc 20
#@faculty soft nproc 20
#@faculty hard nproc 50
#ftp hard nproc 0
#ftp - chroot /ftp
#@student - maxlogins 4
* - nofile 16384
# End of file
Изменения лимитов будут приняты после перезагрузки
Правим настройки kerberos
nano /etc/krb5.conf
[libdefaults]
default_realm = DOMEN.MY
dns_lookup_realm = false
dns_lookup_kdc = true
ticket_lifetime = 24000
krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
v4_instance_resolve = false
v4_name_convert = {
host = {
rcmd = host
ftp = ftp
}
plain = {
something = something-else
}
}
fcc-mit-ticketflags = true
[realms]
DOMEN.MY = {
kdc = SERV.DOMEN.MY
admin_server = SERV.DOMEN.MY
default_domain = DOMEN.MY
}
[domain_realm]
.domen.my = DOMEN.MY
domen.my = DOMEN.MY
[login]
krb4_convert = false
krb4_get_tickets = false
Правим файл hosts
Именно обязательно в этом порядке. Иначе получим ошибку на этапе присоединения
No DNS domain configured for u1604. Unable to perform DNS Update.
DNS update failed: NT_STATUS_INVALID_PARAMETER
nano /etc/hosts
127.0.0.1 localhost
127.0.1.1 u1604.domen.my u1604
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Присоединяем к домену используя учетную запись с правами администратора домена
net ads join -U supauser
Проверяем присоединение
net ads testjoin
Join is OK
Ставим клиент и библиотеки для проверки сетевых папок
sudo apt install samba cifs-utils smbclient
Проверяем работу winbind
wbinfo -t
wbinfo -u
wbinfo -g
Проверяем работу kerberos
kinit supauser@DOMEN.MY
Смотрим что мы получили
klist
Default principal: supauser@DOMEN.MY
Valid starting Expires Service principal
15.09.2016 12:59:59 15.09.2016 19:39:55 krbtgt/DOMEN.MY@DOMEN.MY
Проверяем работу папок. На этом моменте долго не мог понять почему не авторизуется. Если заходить из Windows то просит пароль. Оказалось как раз из за нехватки библиотек установленных выше.
session setup failed: NT_STATUS_INVALID_PARAMETER
smbclient -U supauser@DOMEN.MY -L localhost
Проверяем работу самбы
smbstatus
Samba version 4.3.9-Ubuntu
PID Username Group Machine Protocol Version
------------------------------------------------------------------------------
1616 supauser администраторы домена 10.10.10.5 (ipv4:10.10.10.5:52467) SMB3_00
Service pid machine Connected at
-------------------------------------------------------
share 1616 10.10.10.5 Thu Sep 15 12:42:27 2016
Locked files:
Pid Uid DenyMode Access R/W Oplock SharePath Name Time
--------------------------------------------------------------------------------------------------
1616 11424 DENY_NONE 0x100081 RDONLY NONE /home/virtual/Share . Thu Sep 15 12:42:26 2016
Немного уменьшим количество рекламы отображаемой через squid
Будем делать это посредством файла hosts
Чтобы его использовать необходима чтобы в файле squid.conf была включена директива host
hosts_file /etc/hosts
Директива удобна так же если нам необходимо указать переадресацию по имени на сервер в локальной сети
Список блокировки рекламы будем брать с сайта http://winhelp2002.mvps.org/
На сайте есть инструкции как включить его в разные системы
Автоматизируем процесс его обновления
Напишем скрипт
Будем делать его сразу в папке bin чтобы при необходимости вызывать его просто по имени
sudo -su
nano /usr/bin/ad_hosts_renew
#!/bin/bash
#
# Имя прокси squid и локальные имена
#==========================================
echo "127.0.1.1 proxy.domain.lol proxy" > /etc/hosts
echo "192.168.1.250 proxy.domain.lol proxy" >> /etc/hosts
echo "" >> /etc/hosts
echo "192.168.1.8 dc.domain.lol dc" >> /etc/hosts
echo "192.168.1.5 wopasite.domain.lol wopasite www.wopasite.domain.lol www.wopasite" >> /etc/hosts
#
# Список рекламы
#==========================================
echo "" >> /etc/hosts
echo "AD Block" >> /etc/hosts
echo "========" >> /etc/hosts
curl http://winhelp2002.mvps.org/hosts.txt >> /etc/hosts 2>/dev/null
#
# Обновим конфигурацию
#==========================================
squid3 -k reconfigure
Сделаем его исполняемым
chmod +x /usr/bin/ad_hosts_renew
Проверим работу
ad_hosts_renew
Так как скрипт лежит в папке bin, то его можно вызывать просто по имени без указания путей
Если все хорошо, то можно проверить стало ли меньше рекламы. Открыть замусоренную страницу напрямую и в другом браузере через squid и сравнить.
Так как список не охватывает всего, то можно отдельно устанавливать расширения для браузеров для блокировки рекламы.
Просто у некоторых пользователей расширение может быть не установлено.
Теперь автоматизируем процесс обновления списка. Делать часто этого нет необходимости. Я установил раз в неделю.
cd /etc/cron.weekly/
ln -s /usr/bin/ad_hosts_renew
Проверим что задание появилось
run-parts --test /etc/cron.weekly/
/etc/cron.weekly//ad_hosts_renew
/etc/cron.weekly//apt-xapian-index
/etc/cron.weekly//man-db
Так как в скрипте есть реконфигурация squid, то желательно это делать в нерабочее время. Время работы cron.weekly можно посмотреть:
nano /etc/crontab
Строчка запуска еженедельного cron в 3:47
47 3 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
Думай дважды, кодь однажды. (c) cOR
Offline
Страницы 1