|
Bog BOS: Установка CentOS 4.4 (сервер DMZ)
|
Последнее изменение файла: 2007.12.06
Скопировано с www.bog.pp.ru: 2024.11.24
Bog BOS: Установка CentOS 4.4 (сервер DMZ)
Предварительно прочитайте
несколько слов о CentOS
Назначение: сервер DMZ.
Устанавливал на SuperMicro SuperServer 5015M-MT+
(шасси SC813MFT-300C,
материнская плата SuperMicro PDSMi+)
с CD-ROM (TEAC CD-224E-N, на сервере нет DVD-ROM!),
сделанного из ISO-образа CentOS 4.4, ядро 2.6.9-42, gcc 3.4.6.
Intel Core 2 Duo E6400, 2.13 MHz, шина - 1066 MHz, L1 - 64KB (34881 MB/s), L2 - 2048K (14879 MB/s).
Память - 2x512 MB, ECC, DDR2-667 (2876 MB/s), Dual Channel, CAS: ?.
Дисковая подсистема: ICH7-R - PATA TEAC CD-ROM, 4 канала SATA
(2 штуки: Seagate ES 250GB, ST3250820NS, ;
2 штуки Seagate 200GB, ST3200820AS; со всех снять джамперы ограничения скорости).
eth0 для включения в коммутатор DMZ,
eth1 - выключен.
Немного поменять настройки BIOS :
- время в GMT/UTC
- SATA - Enabled, Enhanced, AHCI
- Large Disk - Other
- EIST - On
- IVT - On
- NX - On
Программа установки anaconda позволяет выбрать устройство загрузки,
метод установки и параметры установки и ядра.
- memtest (только в версии для архитектуры i386)
- загружаемся с CD-ROM и жмем Enter (графический режим)
- тестирование CD, если устанавливаемся с этого диска в первый раз
- распознается ATI ES1000, неизвестный монитор, мышка PS/2 с тремя кнопками
- по нажатию Ctrl-Alt-F2 можно сразу попасть в bash (Alt-F7 обратно)
и начать тестирование дисков
- язык установки - russian
- раскладка - russian (Shift+Shift, ru, redhat-config-network)
- установка - сервер
- разбиение диска вручную (RAID-1 над соответствующими разделами sda и sdb)
- md0, /boot, ext3, 102MB MB
- md1, swap, 4000 MB
- md2, /, 20GB
- остальное в резерв
- GRUB CentOS-4 x86_64 с корневой системой в /dev/md2 в MBR
(/dev/sda? в kickstart.cfg записывается --partition) без пароля,
конфигурационный файл /boot/grub/grub.conf
- настройка сети вручную (/etc/sysconfig/network-scripts/ifcfg-eth?, redhat-config-network)
- eth0 установить имя, IP адрес, маску, шлюз, DNS, поднимать при загрузке
- eth1 - не поднимать
- включить сетевой экран с дыркой для ssh (redhat-config-securitylevel)
- SELinux в полном режиме
- язык для работы: основной - en_US, дополнительный - русский
(redhat-config-language)
- временная зона - Europe/Moscow (время в CMOS хранить в UTC,
не забыть поменять в BIOS, redhat-config-date или timeconfig)
- установка пароля для root
- выбираем пакеты (сервер):
- Оконные менеджеры: нет
- Приложения
- Редакторы: vim-enhanced
- Инженерные: нет
- Графические средства интернет: нет
- Текстовые средства интернет: elinks
- Оффисные приложения: нет
- Звук и видео: нет
- Подготовка публикаций: нет
- Графика: нет
- Игры: нет
- Серверы:
- Средства настройки серверов: xorg-x11-xauth
- Сервер HTTP: нет
- Сервер почты: exim, sendmail-cf
- Сервер samba: нет
- Сервер DNS: всё
- Серверы FTP, PostgreSQL, MySQL, новостей: нет
- Серверы сетевые: dhcp (зачем здесь finger-server?)
- Устаревшие сетевые серверы: нет
- Программирование:
- Средства разработки: выкинуть cscope, diffstat, doxygen, emacs,
gcc-g77, gcc-java, java-1.4.2-gcj
- Разработка для X: нет
- Разработка для Gnome: нет
- Разработка для KDE: нет
- Разработка для других систем: нет
- Разработка для устаревших приложений: нет
- Система
- Средства администрирования: нет
- Системные средства: iptraf, kernel-doc, lslk, mc, net-snmp-utils, nmap,
systat
- Поддержка печати: нет
- multilib: нет (?)
- молча добавляются пакеты, от которых зависят выбранные нами
- форматирование новых разделов
- установка пакетов: 477 пакетов, 1350 МБ, журнал в /root/install.log и /root/install.log.syslog,
образец для kickstart в /root/anaconda-ks.cfg, 7 минут
- дождаться завершения синхронизации soft RAID
(mdadm --misc --query --detail /dev/md?)
- первая загрузка свежеустановленной системы: нет графики - нет продолжения настройки
- если мы не любим prelink, то самое время удалить /etc/cron.daily/prelink,
пока он не сделал кишмиш из исполняемых файлов,
так что потом невозможно использовать программы типа tripware;
если опоздал, то вписать PRELINKING=no в /etc/sysconfig/prelink и
при следующем запуске он всё откатит
- useradd -n -c описание -m -r -g sys -u любимый-uid имя
- passwd имя
- настроить ssh, дальнейшая настройка производится удалённо
- настроить файловые системы с помощью tune2fs -m 1 (резервировать 1% вместо 5%)
или -r 25000 (100 MB)
- установить DAILY_UPDATE=yes" в /etc/updatedb.conf и подождать пока пройдет updatedb
- убедиться, что ненужные сервисы xinetd выключены ("disable = yes"),
перезагрузить xinetd при необходимости (service xinetd reload)
- открыть выход в интернет для данного компьютера
- импортировать ключи в rpm
(rpm --import /usr/share/rhn/RPM-GPG-KEY-centos4)
- создать /mirror (RAID-1 md3 на остатках sda и sdb)
- создать разделы /dev/sda4 и /dev/sdb4 типа fd
- перезагрузка (--beep--)
- создание массива md3 из sda4 и sdb4
- создание файловой системы на md3 с меткой mirror
- занести в /etc/fstab
- завести пользователя mirror
- иерархия /mirror пл образцу
- наполнение CentOS4.4 (iso, base, updates по 16 апреля)
- настроить yum на локальные файлы
- удалить явно лишние qt, gtk2
- обновиться через yum и установить
забытые wireshark, xterm, arpwatch, mkisofs, cdrecord, lynx
- перезагрузиться, если обновлялось ядро
- загрузка модуля pcspkr (в rc.local), где звук?
- sensors-detect предлагает загрузить модули i2c-isa, w83781d, w83627hf
(в rc.local); sensors показывает какую-то чушь
- пришлось ставить
утилиту от производителя
- добавить /usr/local/lib в /etc/ld.so.conf.d/local и сделать ldconfig
- убрать сервисы, которые не нужны
(chkconfig --list|grep on;
chkconfig --level 2345 имя-сервиса off; service имя-сервиса stop)
- xfs (сервер шрифтов при удалённом запуске не нужен)
- isdn
- pcmcia
- cups
- nfslock
- rpcidmapd, rpcgssd
- openibd
- portmap
- проверить лишние порты с помощью: lsof -i
- настроить grub на обоих дисках (anaconda "забывает" один из них)
/sbin/grub --no-floppy --batch << EOF
device (hd0) /dev/sdb
root (hd0,0)
setup (hd0)
quit
EOF
/sbin/grub --no-floppy --batch << EOF
device (hd0) /dev/sda
root (hd0,0)
setup (hd0)
quit
EOF
- настроить iptables
- mdmonitor
- настройка синхронизации времени NTP
- установить пакет ntp
- настроить /etc/ntp.conf (список серверов, клиентов, сбор статистики и
права доступа)
- дырку в локальном сетевом экране для серверов делает скрипт
/etc/rc.d/init.d/ntpd (только забывает про них при перезапуске iptables),
но дырки для клиентов и во внешнем экране надо делать самому
- положить в /etc/ntp/step-tickers список ntp-серверов через пробел,
если он отличается от серверов в /etc/ntp.conf
- создать директорию для статистики, в которую у пользователя ntp есть права
записи
- chkconfig --level 345 ntpd on
- /etc/rc.d/init.d/ntpd start (service ntpd start)
- настроить Smart Relay (/etc/mail/sendmail.cf), /etc/aliases, newaliases,
перезапуск sendmail
- тестирование отправки почты
- обеспечение автоматического извещения об обновлениях с помощью yum
- настройка сети (rc.local)
- arpwatch
- установка DHCP сервера на eth0
- антивирус clamav
- перенос почтового сервера exim как привратника
- настройка резервирования данных (bacula)
- настройка logwatch
- настройка серверного варианта syslog и перезапуск
- осталось
- установка DNS-сервера bind и перенос на него нагрузки
|
Bog BOS: Установка CentOS 4.4 (сервер DMZ)
|
Copyright © 1996-2024 Sergey E. Bogomolov; www.bog.pp.ru