06 Мая 2018, 22:30:00
Оглавление или служебные задачи: 1. Устанавливаем и настраиваем сервер Ubuntu 14.04.5 2. Установка RAID-1 дисков при установке сервера Ubuntu 3. Обновляем сервер и устанавливаем графическую оболочку ubuntu-desktop 4. Альтернатива- (предвосхищаем egroupware)-The Perfect Server - Ubuntu 14.04 5. Установка DrWEB на Ubuntu 14.04.5. 6. Устанавливаем и настраиваем FIREWAL- iptables. 7. Установка OpenFire на Ubuntu 14.04.5 8. Установка DHCP сервера в Ubuntu 14.04.5 9. Настройка DHCP сервера для точки доступа Zixel KEENETIC LITE III 10. Установка прокси сервера SQUID3 11. Устанавливаем и настраиваем приложение для совместной работы EGROUPWARE.Примечание: Использование сертифицированных ФСТЭК России продуктов Dr.Web позволяет полностью выполнить требования Федерального закона № 152-ФЗ «О персональных данных» в части антивирусной защиты. ############################################################################### 1. Устанавливаем и настраиваем server Ubuntu 14.04.5 Дистрибутив сервер 14.04.5 по ходу устанавливаем RAID1, lamp-server^, openssh и можно samba сервер. ################################################################################ 2. Установка RAID-1 дисков при установке сервера Ubuntu При установке сервера выбираем программный RAID 1 используем оба диска. Распределение автоматом!!!!!! Восстановление RAID-1, при выходе из строя одного из дисков. При выходе из строя одного из дисков (я отсоединил диск sda), мы при проверке увидим следующие записи: Команда для проверки: cat /proc/mdstat Т. е. практически все по дефолту !!! ################################################################################ 3. Обновляем сервер и устанавливаем графическую оболочку ubuntu-desktop. apt-get update apt-get upgrade apt-get install ubuntu-desktop apt-get install mc apt-get install synaptic ################################################################################ 4. The Perfect Server - Ubuntu 14.04 (Apache2, PHP, MySQL, PureFTPD, BIND, Dovecot, ISPConfig 3) sudo su sudo passwd root apt-get install ssh openssh-server gedit /etc/network/interfaces ************************************* # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface #auto p2p1 #iface p2p1 inet dhcp # The primary network interface auto p2p1 iface p2p1 inet static address 192.168.1.100 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-nameservers 8.8.8.8 auto p3p1 iface p3p1 inet static address 192.168.5.1 netmask 255.255.255.0 network 192.168.5.0 broadcast 192.168.5.255 dns-nameservers 8.8.8.8 **************************************************** gedit /etc/hosts ************************************************* 127.0.0.1 localhost.localdomain localhost 127.0.1.1 gdboln.net gdboln 192.168.5.1 gdboln.net gdboln 192.168.5.1 liski.lsk.ru # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters *************************************************** apt-get install ntp ntpdate Now run echo server1.example.com > /etc/hostname service hostname restart Смотрим ответы на команды: hostname hostname -f Должны увидеть: server1.example.com now. Запускаем: apt-get updateto update the apt package database and apt-get upgrade to install the latest updates (if there are any). If you see that a new kernel gets installed as part of the updates, you should reboot the system afterwards: reboot apt-get install zoo unzip bzip2 arj nomarch lzop cabextract daemon zip Install Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear, And mcrypt Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear, and mcrypt can be installed as follows: apt-get install apache2 apache2-doc apache2-utils libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached snmp apt-get install apache2-suexec apt-get install libapache2-mod-suphp apt-get install libruby libapache2-mod-python apt-get install libapache2-mod-fcgid php5enmod mcrypt a2enmod suexec rewrite ssl actions include cgi a2enmod dav_fs dav auth_digest gedit /etc/apache2/mods-available/suphp.conf .. and
comment out the ********************************************
# # SetHandler application/x-httpd-suphp # suPHP_AddHandler application/x-httpd-suphp AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
suPHP_Engine on
# By default, disable suPHP for debian packaged web applications as files # are owned by root and cannot be executed by suPHP because of min_uid.
suPHP_Engine off
# # Use a specific php config file (a dir which contains a php.ini file) # suPHP_ConfigPath /etc/php5/cgi/suphp/ # # Tells
mod_suphp NOT to handle requests with the type # suPHP_RemoveHandler
*********************************************************************** service apache2 restart If you want to host Ruby files with the extension .rb on your web sites created through ISPConfig, you must comment out the line application/x-ruby rb in /etc/mime.types: gedit /etc/mime.types [...] #application/x-ruby rb [...] service apache2 restart apt-get install php5-xcache service apache2 restart Если что-то надо собирать: apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper binutils-gold Тонкости настройки web-сервера LAMP для PHPShop на Ubuntu 14.04.4 apt-get install apache2 apache2-doc apache2-utils libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libruby php5-curl php5-intl php5-memcache php5-memcached php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached snmp apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl sudo apt-get install p7zip-rar p7zip-full unace unrar zip unzip sharutils rar uudeview mpack arj cabextract file-roller zoo bzip2 nomarch lzop apt-get install ssh openssh-server mysql-server mysql-client libmysqlclient15-dev apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl ntp ntpdate phpmyadmin libapache2-mod-auth-mysql imagemagick alien binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential php5-imap php5-gd odbcinst1debian2 php-fpdf php-log php5-ldap unixodbc rar unrar alien tnef php5-ldap netpbm Это я вырезал: libapache2-mod-fcgid libapache2-mod-python libapache2-mod-suphp apache2-suexec ################################################################################ 5. Установка DrWEB на Ubuntu 14.04.5. Надо установить два пакета: drweb-esuite-server drweb-esuite-extra Их качаем с официального сайта. Устанавливать надо по очереди server- extra. Я скопировал папки с софтом в домашнюю директорию и по очереди запустил ./install.sh. Получилось следующее: * Первый пакет- установка сервера root@gdboln:/home/victor/drweb-esuite-server-1000-201507030-linux-x86_64.deb.dir# ./install.sh Лицензионный договор Настоящий Лицензионный договор......... ........... 10. Правообладатель имеет право вносить изменения в настоящее Соглашение в одностороннем порядке. Пользователь уведомляется о вступлении новой редакции Соглашения в силу способом, приемлемым для Правообладателя. Соглашаемся с лицензионным договором- yes. Затем пишем - 0 (ноль) Все далее на автомате! Вот что видно на экране: Do you agree with the terms of this license? (yes/NO) yes yes Package installation started, please wait... Please enter the path to your ES backup data or just press Enter to use the default path (/var/tmp/drwcs) or enter 0 for the clean installation. : 0 Выбор ранее не выбранного пакета drweb-esuite. (Чтение базы данных … на данный момент установлено 207206 файлов и каталогов.) Preparing to unpack drweb-esuite-server-1000-201507030-linux-x86_64.deb ... Creating group drwcs... Added group drwcs Creating user drwcs... Added user drwcs Unpacking drweb-esuite (1:10.0.0-201507030) ... Настраивается пакет drweb-esuite (1:10.0.0-201507030) … Trying to restore old data from backup. User rejected the data restoration from backup. Generating new GOST private/public key pair ... Keys written to "/var/opt/drwcs/etc/drwcsd.pri" and "/var/opt/drwcs/etc/drwcsd.pub" (1 pass, 1 ms) Public key /var/opt/drwcs/etc/drwcsd.pub moved to /opt/drwcs/Installer Generating self signed SSL certificate ... Generating a 2048 bit RSA private key ...................................................................................+++ .................................................................................................+++ writing new private key to '/var/opt/drwcs/etc/private-key.pem' ----- Initializing new database ... Making initial product revision ... Adding system startup for /etc/init.d/drwcsd ... /etc/rc0.d/K20drwcsd -> ../init.d/drwcsd /etc/rc1.d/K20drwcsd -> ../init.d/drwcsd /etc/rc6.d/K20drwcsd -> ../init.d/drwcsd /etc/rc2.d/S20drwcsd -> ../init.d/drwcsd /etc/rc3.d/S20drwcsd -> ../init.d/drwcsd /etc/rc4.d/S20drwcsd -> ../init.d/drwcsd /etc/rc5.d/S20drwcsd -> ../init.d/drwcsd Processing triggers for ureadahead (0.100.0-16) ... ureadahead will be reprofiled on next reboot Лицензионный договор Подтверждаем лицензию, пишем- yes Do you agree with the terms of this license? (yes/NO) yes yes Package installation started, please wait... Выбор ранее не выбранного пакета drweb-esuite-extra. (Чтение базы данных … на данный момент установлено 220254 файла и каталога.) Preparing to unpack drweb-esuite-extra-1000-201507030-linux-all.deb ... Unpacking drweb-esuite-extra (1:10.0.0-201507030) ... Настраивается пакет drweb-esuite-extra (1:10.0.0-201507030) … root@gdboln:/home/victor/drweb-esuite-extra-1000-201507030-linux-all.deb.dir# В браузере запускаем адрес: http://192.168.5.1:9080 логин-пароль: И уже, здесь в административном центре делаем все настройки.
Установленная станция появляется в админке. На рабочей станции клиент обновляется и просит перегрузить его после обновления. Можно настроить дополнительно например офисный контроль. ################################################################################ 6. Устанавливаем и настраиваем FIREWAL. Использовал следующие документы: Руководство по iptables (Iptables Tutorial 1.1.19) Автор: Oskar Andreasson blueflux@koffein.net Copyright (C) 2001-2003 Oskar Andreasson Перевод: Андрей Киселев Это здесь: https://www.opennet.ru/docs/RUS/iptables/ Плюс: http://help.ubuntu.ru/wiki/iptables Чтобы заработал NAT раскоментируем строку: net.ipv4.ip_forward=1 в файле /etc/sysctl.conf. После перезапуска система эта строка будет работать! Ниже приведён пример базовой статической конфигурации iptables. При сохранении и загрузке подобной конфигурации необходимо принимать во внимание возможность внесения в неё изменений со стороны других сервисов, например Fail2ban. Кроме того, при использовании IPv6-адресации конфигурацию для IPv6 следует выполнять независимо от IPv4. Т.е. делаем исполняемый файл iptables-rules и помещем его в папку /etc/network/if-up.d который при старте чистит и грузит правила iptables. Если надо внести в правила изменения то просто правим файл iptables-rules, и при следующей загрузке все изменения заработают!!! Можем дернуть тут же !!! ************************************ Команда для просмотра текущей конфигурации iptables: sudo iptables-save Создаём скрипт с дампом правил iptables: sudo nano /etc/network/if-up.d/iptables-rules Копируем в него следующий код созданный на базе : rc.firewall.txt из Iptables Tutorial 1.1.19 (см. в верху). Для параноиков- с контролем портов локальной сети: Копируем в него следующий код созданный на базе : rc.firewall-UTIN.txt из Iptables Tutorial 1.1.19 (см. в верху). Готовые- проверенные файлы лежат в архиве, последний не заработал с VIP NET Client, остался на первом дал выход на UDP порт а Инет для VIP NET Client-а порт 52333!!!!!!! ********************************************** ********************************************* Изменения в реальных файлах: убрал / т.е. сделал одной строкой Вместо log-level DEBUG пишем log-level debug- т. е. debug маленькими буквами!!! ******************************************* Дополняем нужными правилами с учётом iptables-save. Сохраняем и закрываем: Ctrl+O, Enter, Ctrl+X Делаем скрипт исполняемым и загружаем правила iptables: sudo chmod +x /etc/network/if-up.d/iptables-rules sudo /etc/network/if-up.d/iptables-rules Модули ядра Просмотр загруженных модулей: lsmod | grep -E '^ip|^nf' | sort Для загрузки дополнительных модулей удобно применять автодополнение: 2xTab sudo modprobe nf sudo modprobe ip Часто используемые модули: nf_conntrack_ftp, nf_conntrack_pptp, nf_conntrack_tftp, nf_nat_pptp. Автозагрузка модулей: man modules-load.d Еще одна добавка: в debian и ubuntu добавили пакет iptables-persistent который использует iptables-save/iptables-restore #service iptables-persistent Usage: /etc/init.d/iptables-persistent {start|restart|reload|force-reload|save|fl # service iptables-persistent save * Saving rules... * IPv4 * IPv6 # service iptables-persistent reload * Loading iptables rules... * IPv4 * IPv6 Предварительно применив правила и сохранив их в этот самый файл iptables.rules коммандой $iptables-save > /etc/network/iptables.up.rules iptables-apply Error: rulesfile not readable: /etc/network/iptables.up.rules iptables-save /etc/network/iptables.up.rules Как разрешить прохождение DHCP запросов через iptables В действительности, эта задача достаточно проста, если вам известны принципы работы протокола DHCP. Прежде всего необходимо знать, что DHCP работает по протоколу UDP. Следовательно, протокол является первым критерием. Далее, необходимо уточнить интерфейс, например, если DHCP запросы идут через $LAN_IFACE, то движение запросов DHCP следует разрешить только через этот интерфейс. И наконец, чтобы сделать правило более определенным, следует уточнить порты. DHCP использует порты 67 и 68. Таким образом, искомое правило может выглядеть следующим образом: $IPTABLES -I INPUT -i $LAN_IFACE -p udp --dport 67:68 --sport 67:68 -j ACCEPT ################################################################################ 7. Установка OpenFire на Ubuntu 14.04.5 Для начала ставим Lamp сервер и phpmyadmin apt-get install lamp-server^ aptitude install phpmyadmin Если установлен suphp пакет, то phpmyadmin не работает,устраняем ошибку: gedit /etc/apache2/mods-available/suphp.conf Закоментируем 2-3- и 4 строки. (Ставим вначале строки #) ... как на картинке перед и добавляем после 4-й строки строку: AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml - иначе все PHP файлы будут работать с SuPHP: Вот так: ****************************************************************
# # SetHandler application/x-httpd-suphp # AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml suPHP_AddHandler application/x-httpd-suphp
suPHP_Engine on
***************************************************************** Теперь установим Яву: sudo add-apt-repository ppa:webupd8team/java sudo apt-get update Смотрим какая последняя сборка и ставим ее: aptitude search oracle-java я поставил 8-ю: apt-get install oracle-java8-installer Соглашаемся с лицензией Чтобы свести к минимуму любые конфликты Java, удалим OpenJD- откройте окно терминала и введите следующую команду: ******************************* sudo apt-get remove --purge openjdk* *************************** Создаем базу в phpmyadmin название- openfire сравнение выбираем UTF8_general_ci Качаем последнюю версию OpenFire wget http://www.igniterealtime.org/builds/openfire/openfire_4.0.2_all.deb Устанавливаем пакет. dpkg -i openfire_4.0.2_all.deb Чтобы настроить jabber-server openfire открываем в браузере http://192.168.5.1:9090 При настройке базы данных подставляем вот такую строку, иначе вместо русских букв местами будут знаки ????? : jdbc:mysql://localhost:3306/openfire?characterEncoding=UTF-8 Другие (jdbc:mysql://localhost:3306/openfire?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8) - НЕ ЗАРАБОТАЛИ !!!! В iptables (в firewall) для нормальной работы openfire внутри локальной сети должны быть открыты следующие порты: Порты Сервера: 5222 клиент сервер 5223 клиент сервер 7070 связь HTTP 7443 связь HTTP 5269 Сервер-Сервер 5275 внешние компоненты 5276 внешние компоненты 5262 Управление подключениями 5263 Управление подключениями 9090 Консоль Администрации 9091 Консоль Администрации 7777 Файловое Полномочие Передачи 5229 Перекрестный запрос к домену Это при использовании голосовой связи за NAT: Port 3478, 3479 : used by the STUN Servive for entities behind a NAT. Все порты можно посмотреть в самой openfire. Далее вводим имя пользователя (чаще всего это root) и пароль от базы данных и пробуем соединиться с базой данных. То есть жмем "Продолжить". Последний шаг настройки, установка пароля администратора. Я пропускаю этот шаг и у меня получается admin-admin Учетная запись в этом поле пишется с добавлением домена — admin@example.com. Заменяю базу данных сохраненной в phpmyadmn-e openfire.sql !!!!!!!!!!!!!!! Обновляем как обычно. Останавливаем openfire. Запускаем новый пакет. Выбираем - обновить. Запускаем openfire. sudo /etc/init.d/openfire stop sudo /etc/init.d/openfire start sudo /etc/init.d/openfire restart P.S. ****************** О Java... **************************** Могут быть "тормоза" опенфаера, из-за малого выделения памяти для джавы. По умолчанию выделяется 250 мб (смотреть в админке), что приводит к непредсказуемым результатам (долго логиниться, обрывы при передаче файлов и прроч.). Что можно сделать: Отредактировать файл: sudo gedit /etc/default/openfire где после всех комментариев, первую строчку привести в соответствие: было: DAEMON_OPTS="" стало: DAEMON_OPTS="-Xms1024m -Xmx2048m" данный параметр выделяет для Джавы опенфаера минимум 1024 мб, и максимум 2048 мб (для моих 97 хостов достаточно) Большой разницы не заметил! ################################################################################ 8. Установка DHCP сервера в Ubuntu 14.04.4 Устанавливаем: apt-get install isc-dhcp-server Конфигурируем: sudo nano /etc/default/isc-dhcp-server или sudo gedit /etc/default/isc-dhcp-server и добавим в поле INTERFACES="" внутри кавычек, интерфейс карты, которая смотрит в локальную сеть (в моем случае это не eth1, p3p1) INTERFACES="p3p1" sudo nano /etc/dhcp/dhcpd.conf или sudo gedit /etc/dhcp/dhcpd.conf Так как мой сервер DHCP будет единственным в сети, в первую очередь снимаем знак # перед authoritative; authoritative; Строки: default-lease-time 600; max-lease-time 7200; нужно закомментировать (поставить перед ними знак #). Эти настройки мы будем указывать в другом месте. Следующим этапом будет внесение диапазона выдаваемых адресов и срока их аренды: # A slightly different configuration for an internal subnet. subnet 192.168.5.0 netmask 255.255.255.0 { range 192.168.5.199 192.168.2.206; option domain-name-servers 80.82.32.9; # option domain-name "internal.example.org"; option routers 192.168.2.1; option broadcast-address 192.168.2.255; default-lease-time 600; max-lease-time 7200; } /etc/init.d/isc-dhcp-server start /etc/init.d/isc-dhcp-server restart или service isc-dhcp-server restart ############################################################################### 9. Настройка DHCP сервера для точки доступа Zixel KEENETIC LITE III Выбираем настройку точки доступа роутера Zixel KEENETIC LITE III по умолчанию (т.е. по DHCP). Чтобы точка доступа заработала в сети, предварительно на сервере Ubuntu 14.04.4 поднимаем и настраиваем DHCP сервер в диапазоне IP адресов: 192.168.5.199-192.168.5.206 (см. раздел выше) Т. е. клиенты точки доступа и сама точка будут получать адреса 199-200-201-202-203-204-205-206. Найти саму точку доступа можно перебором указанных выше адресов. Зайдя на неё через web-браузер, мы меняем получение IP адреса с автоматического на ручной и прописываем конкретный IP. Для администрации прописал 192.168.5.208 Пароль password. Теперь их конкретно можно смотреть через браузер по этим адресам !!! З.Ы. дополнительная информация по точке доступа Zixel KEENETIC LITE III: Сбрасываются все настройка маршрутизатора кнопкой «reset» на его боку! Обязательно сбросить перед настройкой, держим 10 сек! Попасть можно через WI-FI см. информацию по доступу на обороте маршрутизатора. Или по адресу 192.168.1.1 пароль 1234. ################################################################################ 10. Установка прокси сервера SQUID3. sudo apt-get install squid sudo apt-get install squid3 sudo gedit /etc/squid3/squid.conf squid3 -k check sudo service squid3 start tail -100f /var/log/squid3/access.log sudo tail -f /var/log/squid3/access.log service networking restart gedit /etc/squid3/squid.conf для локалки acl localnet src 192.168.5.0/24 Затем, спускаясь далее по конфигурационному файлу найдем секцию отвечающую за правила доступа и убедимся, что она содержит следующие правила: http_access allow localnet http_access allow localhost http_access deny all Вставляем из архива подготовленный инишник ...!!!!! Перед тем как перезапускать службу выполним проверку файла конфигурации: squid3 -k check Если команда отрабатывает без вывода - ошибок нет, в противном случае изучаем вывод и исправляем допущенные ошибки. После этого перезапустим службу, чтобы применить внесенные изменения. service squid3 restart В том случае, когда были изменены параметры кэша следует его перестроить: service squid3 stop squid3 -z service squid3 start Копируем файл avast1 из архива в домашнюю директорию !!!!!!!!!!!! в этом файле разрешенные страницы интернета для SQUID сервера !!! ################################################################################ 12. Устанавливаем и настраиваем приложение для совместной работы EGROUPWARE. Установка eGroupWare- для Xubuntu 14.04 выполнить следующие действия:sudo sh -c "echo 'deb http://download.opensuse.org/repositories/server:/eGroupWare:/trunk/xUbuntu_14.04/ /' >> /etc/apt/sources.list.d/egroupware-epl.list" Вы можете добавить ключ хранилища wget http://download.opensuse.org/repositories/server:eGroupWare:trunk/xUbuntu_14.04/Release.key sudo apt-key add - < Release.key sudo apt-get update sudo apt-get install egroupware-epl
|