среда, 18 сентября 2013 г.

Настройка локалей, ntp, openssh в Debian

Так, как сейчас у меня появилось реальное железо, сейчас разворачиваю на нем сервер. Поэтому, в скором времени, последует серия заметок по настройке этого сервера.
Эта заметка посвящена настройке локалей, ntp-клиента и openssh сервера.
В качестве платформы для сервера я выбрал Debian 7.
В распоряжении у меня также две сетевухи, и 5 хардов. К сожалению материнка столько хардов не вытерпела, поэтому юзать можно только три. С двумя из них в скором будущем будет создан raid0 массив.
Также будет кратко рассказано про swappiness.

Характеристики сервера:
# uname -a
Linux debian 3.2.0-4-686-pae #1 SMP Debian 3.2.46-1+deb7u1 i686 GNU/Linux

# grep "model name" /proc/cpuinfo
model name : AMD Athlon(tm) XP 1700+

# grep "MemTotal" /proc/meminfo
MemTotal:        1034184 kB

# cat /proc/swaps
Filename Type Size Used Priority
/dev/sda2 partition 1000444 0 -1

# fdisk -l
Disk /dev/sda: 80.0 GB, 80026361856 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      194559       96256   83  Linux
/dev/sda2          194560     2195455     1000448   82  Linux swap / Solaris
/dev/sda3         2195456   156301311    77052928   83  Linux

Disk /dev/sdb: 40.1 GB, 40060403712 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63    78242975    39121456+  83  Linux

Disk /dev/sdc: 41.1 GB, 41110142976 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1              63    80293247    40146592+  83  Linux

Как установить Debian, я рассказывать не буду, уже писал об этом.

Настройка шрифтов:

# dpkg-reconfigure console-setup
UTF-8
# Cyrillic - Slavic languages (also Bosnian and Serbian Latin)  
TerminusBold
11x22 (framebuffer only)

# aptitude install console-cyrillic
# dpkg-reconfigure locales
выбираем ru_RU.UTF-8

[ссылки]:
http://debianworld.ru/articles/nastrojka-rusifikaciya-konsoli-v-ubuntu-debian
https://wiki.debian.org/ru/Keyboard

Настройки сети:

На сервере обычно не юзают динамические адреса, но это будет настроено позже, пока что нам нужен интернет для установки пакетов, поэтому временно пропишем настройки dhcp.
# vi /etc/network/interfaces
auto eth0
iface eth0 inet dhcp 
# eth1 пока не используется, нужно закомментировать
#auto eth1
#iface eth1 inet dhcp 

Установка базового софта:

Без некоторых утилит мне трудно работать, поэтому я их сразу устанавливаю.
# aptitude install htop vim mc

htop - программа мониторинга системы
vim - любимый текстовый редактор
mc - файловый менеджер

Смена интенсивности загрузки swap:

Полезно было бы, чтобы система не очень активно юзала swap, потому что он гораздо медленнее оперативной памяти. В этом нам поможет параметр swappiness, чем меньше его значение, тем реже его использует система. Минимальное значение - 0, максимальное - 100. Значение по умолчанию в Debian - 60. Я его уменьшу до 10.
# cat /proc/sys/vm/swappiness
60

# vim /etc/sysctl.conf
vm.swappiness=10

# shutdown -r now

[ссылки]:
https://help.ubuntu.com/community/SwapFaq

Настройка синхронизации времени с интернетом. NTP:

На сервере очень важно, чтобы было установлено правильное время, особенно важно это для почтовых сервисов, например Dovecot. Поэтому в первую очередь, настраиваю именно синхронизацию времени с интернетом. Теорию писать не буду, но прочитать советую в списке литературы.
Установка:
# aptitude install ntp ntpdate

Синхронизация:
# ntpdate -bs pool.ntp.org

Добавление сервера, с которого будем синхронизировать время:
# vim /etc/ntp.conf
server pool.ntp.org ibrust

Стартуем сервис:
# /etc/init.d/ntp start

Записываем системное время в BIOS:
# hwclock --hctosys

[ссылки]:
http://mydebianblog.blogspot.com/2006/09/ntp.html
http://www.opennet.ru/base/net/ntp_timesync.txt.html
https://wiki.archlinux.org/index.php/Network_Time_Protocol_daemon_(Русский)
http://www.opennet.ru/base/sys/date_and_time.txt.html
http://posix.ru/shell/clock/

Настройка безопасного openssh сервера:

В общем-то настройка небольшая, но зато она очень безопасная.
Установка:
# aptitude install openssh-server

Редактирование основного конфига:
# vim /etc/ssh/sshd_config
# изменим порт соединения на отличный от 22, таким образом снижается риск вторжения в вашу систему кого-либо кроме вас, поставим например 220й порт
Port 220
# root не может подключаться к нашему серверу, чтобы получить доступ root, нужно залогиниться под юзером, а потом ввести команду su -
PermitRootLogin no
# никто не может зайти в нашу систему, кроме юзера myuser
AllowUsers myuser@*
# скрываем версию ssh, чтобы злоумышленник не воспользовался багами в какой-либо версии openssh
DebianBanner no

Перезапускаем сервис:
# /etc/init.d/ssh restart

Пробуем подсоединиться с машины-клиента.
Подключение пройдет успешно:
# ssh -p 220 [email protected]
-p - номер порта
myuser - пользователь
192.168.1.106 - адрес сервера

Подключение пройдет не успешно.
Не указан порт, по умолчанию, порт 22.
# ssh [email protected]

Доступ разрешен только пользователю myuser и категорически запрещен root:
# ssh -p 222 amet@220 192.168.1.106
# ssh -p 222 root@220 192.168.1.106

[ссылки]:
http://andreev-s.blogspot.com/2011/12/ssh-debian.html
http://blogs.hub21.ru/blog/sysadmins/91.html
http://www.aitishnik.ru/linux/ssh-debian/nastroyka-openssh.html
http://mydebianblog.blogspot.com/2006/12/ssh.html
http://www.ibm.com/developerworks/ru/library/au-sshlocks

Комментариев нет: