====== Intrepid Ibex ======
В офисе самое враждебное для истинных линуксойдов окружение - вендовз!
Итак бороться с этим злом будем основательно!
Для начала настроим контроллер домена Windows.
===== Samba PDC =====
Для этого нам нужно
* первым делом настроить [[ubuntuserver810:slapd|OpenLDAP]] где будут храниться учетные записи пользователей, групп и рабочих станций
* теперь можем использовать скрипты [[ubuntuserver810:smbldaptools|smbldap-tools]] для работы с базой [[ubuntuserver810:slapd|OpenLDAP]]
* осталось еще настроить модули аутентификации((Pluggable Authentication Modules)) и авторизации((Name Service Switch)) самой операционной системы - [[ubuntuserver810:nss_pam_ldap|NSS и PAM]]
* и наконец настраиваем [[ubuntuserver810:samba|Samba]] в качестве нашего PDC((Primary Domain Controller))
[[http://www.cosmocode.de/en/loesungen/system/ldapab/index.html|Адрессная книга в LDAP]]
Следующем шагом будет установка почтового сервера
===== Mail Server =====
Хорошим началом будет простая работающая связка [[ubuntuserver810:postfix_vs_dovecot|Postfix vs Dovecot]]
Для полного счастья нам еще нужна система защиты от спама и вирусов! Задача не простая так что будем выполнять по шагам:
* установим и настроим антивирус [[clamav_server|ClamAV]] FIXME
* установим и настроим интеллектуальную систему защиты от спама [[dspam_server|Dspam]] FIXME
* и наконец выполним интеграцию [[postfix_vs_dspam_queue_injection|Postfix vs Dspam]] FIXME
===== Http Proxy - Squid =====
Аутентификация учетных записей ldap
auth_param basic program /usr/lib/squid/ldap_auth -b "ou=Users,dc=site,dc=ru" -v 3 -h localhost
auth_param basic children 5
auth_param basic realm Proxy Server Authentication
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
Поправим график ротации логов прокси сервера /etc/logrotate.d/squid
#
# Logrotate fragment for squid.
#
/var/log/squid/*.log {
monthly
compress
rotate 20
missingok
nocreate
sharedscripts
postrotate
test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
endscript
}
==== stats ====
В качестве генератора статистики используем программу [[http://sourceforge.net/projects/free-sa/|free-sa]].
Установим в папку /opt/free-sa/
Файл конфигурации /opt/free-sa/etc/free-sa.conf
#########
# FILES #
#########
log="/var/log/squid/access.log"
#usertab="/opt/free-sa/etc/users"
downloads="/opt/free-sa/etc/downloads.map"
#local_filter=""
#global_filter=""
###############
# DIRECTORIES #
###############
targetdir="/opt/free-sa/www"
tmpdir="/var/cache/free-sa"
#####################
# REPORTS SELECTION #
#####################
ts="true"
paf="true"
saf="true"
pdn="true"
sdn="true"
cct="true"
pst="true"
dld="true"
fullurl="false"
users="true"
#email=""
##################
# REPORTS LIMITS #
##################
#paf_limit="50"
#saf_limit="50"
#pdn_limit="50"
#sdn_limit="50"
#cct_limit="50"
#pst_limit="50"
#dld_limit="50"
#lcf_limit="50"
#url_limit="50"
#ts_limit="0"
#dld_min="0"
#rtr_timeout="5000"
####################
# OTHER PARAMETERS #
####################
#name="free-sa.conf"
#logformat="0"
#skip_errors="false"
#fulltraffic="false"
#inameuser="true"
#user_unescape="false"
#indicators="true"
overwrite="2"
#resolveip="false"
#showinfo="true"
#site=""
#logo=""
#locale="ru.utf8"
#rotate=""
#divisor="b"
Статистику будем обновлять каждый час
cat < /etc/cron.hourly/free-sa
#!/bin/sh
DSTART=\`/bin/date +01.%m.%Y\`
DSTOP=\`/bin/date +31.%m.%Y\`
/opt/free-sa/bin/free-sa -f /opt/free-sa/etc/free-sa.conf -d \${DSTART}-\${DSTOP}
EOF
chmod +x /etc/cron.hourly/free-sa
===== OpenVPN =====
==== Server ====
apt-get update
apt-get install openvpn
cp -R /usr/share/doc/openvpn/examples/easy-rsa/2.0 /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
vim vars
. vars
./clean-all
./build-ca
./build-key-server server
./build-dh
zcat /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz > /etc/openvpn/server.conf
==== Client Certs ====
Сгенерируем сертификат для клиента
cd /etc/openvpn/easy-rsa
. vars
./build-key clientname
Необходимо заполнить следующие поля - в квадратных скобках значения по умолчанию!
Country Name (2 letter code) [RU]:
State or Province Name (full name) [MSK]:
Locality Name (eg, city) [Moscow]:
Organization Name (eg, company) [DriveSource]:
Organizational Unit Name (eg, section) []:office
Common Name (eg, your name or your server's hostname) [clientname]:
Email Address [admin@example.com]:clientname@example.com
Можем задать пароль для сертификата, тогда при каждом подключении его необходимо будет вводить ручками.
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Подтверждаем указанную информацию и сертификат готов к использованию!
Using configuration from /etc/openvpn/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'RU'
stateOrProvinceName :PRINTABLE:'MSK'
localityName :PRINTABLE:'Moscow'
organizationName :PRINTABLE:'Drive'
organizationalUnitName:PRINTABLE:'office'
commonName :PRINTABLE:'clientname'
emailAddress :IA5STRING:'clientname@example.com'
Certificate is to be certified until Mar 21 07:22:27 2019 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
Все сертификаты лежат в папке **/etc/openvpn/easy-rsa/keys** для подключения потребуются следующие файлы
* ca.crt
* clientname.crt
* clientname.key
===== DNS =====
Проверим параметры ОС.
- в файле ''/etc/hostname'' должно быть записано имя машины в виде FQDN
- в файле ''/etc/hosts'' должно быть прописано сначала fqdn потом короткое имя
например
cat /etc/hostname
daemon.drivesource.ru
egrep daemon /etc/hosts
127.0.0.1 daemon.drivesource.ru daemon
Устанавливаем ПО.
apt-get install bind9
Заполняем конфиги.
export DOMAIN="drivesource.ru"
cat <> /etc/bind/named.conf.local
zone "${DOMAIN}" {
type master;
file "/etc/bind/db.${DOMAIN}";
};
EOFCONF
cat < /etc/bind/db.${DOMAIN}
@ IN SOA ns1.${DOMAIN}. admin.${DOMAIN}. (
2009022701 ; serial, todays date + todays serial #
8H ; refresh, seconds
2H ; retry, seconds
4W ; expire, seconds
1D ) ; minimum, seconds
NS ns1 ; Inet Address of primary name server
NS ns2 ; inet address of secondary name server
MX 10 mail ; Primary Mail Exchanger
${DOMAIN}. A 127.0.0.1
ns1 A 127.0.0.1
ns2 A 127.0.0.1
www A 127.0.0.1
mail A 127.0.0.1
EOFCONF
Установим библиотеки необходимые для ZCS
apt-get install libgmp3c2 libstdc++5 libltdl3