- Настройка сети CentOS
- Добавление нового пользователя
- Настройка времени и даты
- Отключить SElinux
- Добавление репозитария EPEL и обновление системы
- Установка необходимых программ
- Логирование времени выполнения команд в .bash_history
- Увеличение числа открытых файлов CentOS
- Запретить подключаться по SSH под root
CentOS выбрана мной и многими другими системными администраторами, как основная система для серверов в “продакшене”. Не будем останавливаться на обсуждении и разъяснении этого выбора, а перейдем к рассмотрению базовой настройки свежеустановленной операционной системы. Представленные пункты я использую как шаблон, он применим к CentOS как версии 6.5, так и 7.0
Настройка сети CentOS
Указанный пункт уже подробно описан в одноименной записи на страницах ресурса gotoADM.ru. Сейчас сделаем основные операции. В файле ifcfg-eth0 прописываем при необходимости статический IP адрес, либо корректируем параметры получения сетевых настроек. Определить имя сетевого интерфейса можно при помощи команды ifconfig или ip a
Рекомендую сначала скопировать данные файлы в другой каталог и делать так в дальнейшем со всеми настраиваемыми конфигами:
mkdir /backup
cp /etc/sysconfig/network-scripts/ifcfg-eth0 /backup
nano /etc/sysconfig/network-scripts/ifcfg-eth0
Далее прописываем имя сервера, используемый протокол IPv4/IPv6:
nano /etc/sysconfig/network
После этого проверяем наличие DNS записей, при отсутствии добавить в указанном формате:
nano /etc/resolv.conf
Nameserver IP/DNS
Nameserver IP/DNS
По завершению настроек сети – перезапускаем службу:
service network restart
Добавление нового пользователя
Для повышения безопасности сервера необходимо создать нового пользователя, под этой учетной записью будет выполняться все последующие операции с ОС и сервисами. Добавить нового пользователя можно так:
useradd itechf2 -G wheel -u 777
passwd itechf2
chown -R itechf2:itechf2 /home/itechf2/
chmod 700 /home/itechf2/
Далее для удобства работы снимаем комментарий со строки из файла /etc/sudoers:
nano /etc/sudoers
%wheel ALL=(ALL) NOPASSWD: ALL
Для применения настроек делаем logout и заходим под созданным пользователем.
Настройка времени и даты
Выставляем правильный часовой пояс. Удаляем стандартный файл, заменяем другим, с корректными данными:
sudo rm -f /etc/localtime
sudo ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime
Теперь устанавливаем пакет ntp для синхронизации времени на сервере:
sudo yum install ntp ntpdate -y
sudo ntpdate pool.ntp.org
11 Dec 20:32:07 ntpdate[11055]: step time server 31.135.73.5 offset 242666.411088 sec
sudo ntpdate -bs pool.ntp.org
date
Сбт Дек 11 20:32:21 MSK 2015
Отключить SElinux
Данная настройка делается “по желанию” – лучше разобраться в работе данной подсистемы. Подробнее – здесь.
Итак, переходим в файл и меняем первое значение на disabled:
/etc/selinux/config
Для применения настроек необходимо перезапустить ОС. Перезагрузку выполним в самом конце, по завершении базовой настройки CentOS.
Добавление репозитария EPEL и обновление системы
Сначала добавляем репозитарий:
sudo rpm -Uvh httpss://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Загружается httpss://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
предупреждение: /var/tmp/rpm-tmp.MGRRqS: Заголовок V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Подготовка… ########################################### [100%]
1:epel-release ########################################### [100%]
Затем обновляем систему:
sudo yum -y update
Установка необходимых программ
Для удобства работы устанавливаем необходимые программы. На вкус и цвет все девушки программы – разные:
sudo yum install -y mc nano man vim pv wget gcc autoconf screen nmap netstat yum-plugin-priorities mailx traceroute sudo telnet
Подробней о консольном менеджере screen.
Логирование времени выполнения команд в .bash_history
sudo bash -c «echo ‘export HISTTIMEFORMAT=’%d/%m/%y %T ‘ >>/etc/bashrc»
export
Увеличение числа открытых файлов CentOS
sudo bash -c ‘echo «* soft nofile 150000″ >> /etc/security/limits.conf’
sudo bash -c ‘echo «* hard nofile 500000″ >> /etc/security/limits.conf’
sudo bash -c ‘echo «fs.file-max = 500000″ >> /etc/sysctl.conf’
Запретить подключаться по SSH под root
Продолжаем тему безопасности и отключаем возможность заходить на сервер по SSH от имени root. Для любых операций лучше использовать sudo:
sudo nano /etc/ssh/sshd_config
Снимаем комментарий и ставим значение “no” на строчке PermitRootLogin
Затем перезапускаем службу SSH:
sudo service sshd restart
Базовая настройка сервера CentOS для различных задач, в том числе веб- (LAMP) и файлового сервера завершена. Буду рад услышать Ваши замечания, предложения или личные предпочтения в конфигурировании ОС. Оставляйте комментарии 😉