Базовая настройка сервера Debian после установки. Debian 8 настройка после установки


Debian настройка сервера

После установки нового сервера приходится выполнять один и тот же набор стандартных настроек. Сегодня мы займемся базовой настройкой сервера под управлением операционной системы Debian. Я приведу практические советы по небольшому увеличению безопасности и удобству администрирования, основанные на моем личном опыте.

Введение

Любая работа с сервером после установки чаще всего начинается со стандартных обязательных действий, без которых либо не получится продвинуться дальше, либо будет неудобно работать. Например, вам в любом случае необходимо выполнить сетевые настройки, желательно обновить систему и установить часовой пояс. Рекомендуется сразу настроить автообновление времени, подрихтовать параметры sshd, установить midnight commander и выполнить другие настройки.

Об этом я хочу рассказать в статье. Я буду делиться своим реальным опытом работы. Это не значит, что нужно делать так, как я. Я могу в чем-то ошибаться, что-то делать не так удобно, как можно было бы сделать. Это просто советы, которые кому-то помогут узнать что-то новое, а кто-то возможно поделится со мной чем-то новым для меня, либо укажет на мои ошибки. Мне бы хотелось, чтобы это было так. Своими материалами я не только делюсь с вами знаниями, но и сам узнаю что-то новое в том числе и из комментариев и писем на почту.

Указываем сетевые параметры

Итак, у нас в наличии только что установленная система. Узнать или проверить ее версию можно командами:

# uname -a Linux debian 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 (2016-01-17) x86_64 GNU/Linux # lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 8.3 (jessie) Release: 8.3 Codename: jessie

Очень подробно про настройку сети в Debian я написал в отдельной статье. Рекомендую с ней ознакомиться. Здесь же кратко выполним основное. Для настройки сети, необходимо отредактировать файл /etc/network/interfaces. Сделаем это:

# nano /etc/network/interfaces

Для получения IP адреса по dhcp достаточно будет следующего содержания:

allow-hotplug eth0 iface eth0 inet dhcp

Если у вас статический адрес, то его настроить можно следующими параметрами в файле:

allow-hotplug eth0 iface eth0 inet static address 192.168.1.24 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 192.168.1.1

Сохраняем файл. Теперь нужно выполнить перезапуск сети. В Debian это делается командой:

# /etc/init.d/networking restart [ ok ] Restarting networking (via systemctl): networking.service.

На этом настройка сети закончена.

Обновление системы

Сеть настроили, теперь можно обновить систему и пакеты. В Debian это делается достаточно просто. Воспользуемся несколькими командами. Сначала обновим локальный индекс пакетов до последних изменений в репозиториях:

# apt-get update

Теперь выполним обновление всех пакетов системы:

# apt-get upgrade

На этом обновление системы закончено. Если вы хотите обновить версию релиза, например Debian 7 wheezy обновить до Debian 8 Jessie, то читайте отдельный материал.

Настройка ssh

Теперь внесем некоторые изменения в настройки сервера ssh. Я рекомендую его запускать на нестандартном порту для исключения лишних общений с ботами, которые регулярно сканят инет и подбирают пароли пользователей по словарям. По-умолчанию в Debian, впрочем как и в любом другом дистрибутиве Linux, ssh сервер работает на 22 порту. Изменим этот порт, к примеру, на 23331. Так же я еще изменяю конфигурацию для разрешения подключения по ssh пользователя root с использованием пароля. В Debian из коробки пользователь root по ssh паролем авторизовываться не может. Изменим и это. Открываем файл настроек:

# nano /etc/ssh/sshd_config

И изменяем там следующие строки. Приводим их к виду:

Port 23331 PermitRootLogin yes

Сохраняем изменения и перезапускаем сервер ssh следующей командой:

# service sshd restart

Проверяем изменения:

# netstat -tulnp | grep ssh tcp 0 0 0.0.0.0:23331 0.0.0.0:* LISTEN 925/sshd tcp6 0 0 :::23331 :::* LISTEN 925/sshd

Все в порядке, сервер слушает 23331 порт. Теперь новое подключение будет осуществлено только по порту 23331. При этом, после перезапуска ssh, старое подключение не будет разорвано.

Я знаю, что многие возражают против подключения рутом к серверу. Якобы это небезопасно и т.д. и т.п. Мне эти доводы кажутся не убедительными. Не понимаю, в чем может быть проблема, если у меня нормальный сложный пароль на root, который не получится подобрать или сбрутить. Ни разу за всю мою работу системным администратором у меня не возникло проблем с этим моментом. А вот работать так значительно удобнее, особенно, когда необходимо оперативно куда-то подключиться по форс мажорным обстоятельствам.

Установка утилит mc, htop, iftop

Следующим шагом я настраиваю некоторые полезные утилиты, которыми регулярно пользуюсь в повседневной работе. Первая из них это всем известный двухпанельный файловый менеджер Midnight Commander. Установим mc на наш сервер:

# apt-get -y install mc

Я сразу же ставлю редактором по-умолчанию mcedit. Для этого просто выбираю его из меню при первом редактировании какого-нибудь файла. Если у вас такое меню не появляется, можете вызвать его сами и выбрать необходимый редактор по-умолчанию:

# select-editor Select an editor. To change later, run 'select-editor'. 1. /bin/nano <---- easiest 2. /usr/bin/mcedit 3. /usr/bin/vim.tiny Choose 1-3 [1]: 2

Так же я рекомендую очень удобный диспетчер задач — htop. Мне он помог, к примеру, решить проблему Взлома сервера CentOS. Ставим его на сервер:

# apt-get -y install htop

Полезной утилитой, позволяющей смотреть сетевую загрузку в режиме реального времени, является iftop. Очень рекомендую. Более простого и удобного инструмента мне не попадалось, хотя я много перепробовал подобных вещей. Устанавливаем iftop на сервер:

# apt-get -y install iftop

Настройка и обновление времени в Debian 

Теперь проверим установленный часовой пояс, время и включим автоматическую синхронизацию времени с удаленного сервера. Узнать дату, время, часовой пояс можно командой date:

# date Fri Jan 29 00:01:37 MSK 2016

Если все указано верно, то менять ничего не нужно. Если же у вас неправильное время или указан часовой пояс не соответствующий вашему, то настроить это можно следующим образом. Сначала обновим часовые пояса:

# apt-get -y install tzdata

Теперь выберем правильный часовой пояс с помощью команды:

# dpkg-reconfigure tzdata

Выбирая соответствующие пункты визарда, указываете свой часовой пояс.

Дальше синхронизируем время с сервером времени в интернете. Для разовой или ручной синхронизации понадобится отдельная утилита. Установим ntpdate на сервер:

# apt-get install ntpdate

И синхронизируем время:

# ntpdate-debian 29 Jan 00:02:30 ntpdate[3172]: adjust time server 85.114.26.194 offset -0.001045 sec

Если получаете ошибку:

29 Jan 00:02:09 ntpdate[3123]: the NTP socket is in use, exiting

Значит у вас уже работает служба ntp. Ее нужно остановить и обновить время вручную. Хотя если она работает, то у вас и так должно быть все в порядке.

Для того, чтобы время автоматически синхронизировалось без вашего участия с определенной периодичностью, используется инструмент ntp. Установим его:

# apt-get -y install ntp

После установки он сам запустится и будет автоматически синхронизировать часы сервера. Проверим, запустился ли сервис ntpd:

# netstat -tulnp | grep ntp udp 0 0 192.168.1.24:123 0.0.0.0:* 3119/ntpd udp 0 0 127.0.0.1:123 0.0.0.0:* 3119/ntpd udp 0 0 0.0.0.0:123 0.0.0.0:* 3119/ntpd udp6 0 0 ::1:123 :::* 3119/ntpd udp6 0 0 fe80::215:5dff:fe01:123 :::* 3119/ntpd udp6 0 0 :::123 :::* 3119/ntpd

Настройка firewall (iptables) в Debian 8

В качестве firewall по-умолчанию используется iptables, его и будем настраивать. Изначально фаервол полностью открыт и пропускает весь трафик. Проверить список правил iptables можно следующей командой:

# iptables -L -v -n Chain INPUT (policy ACCEPT 5851 packets, 7522K bytes) pkts bytes target prot opt in out source destination Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 3328 packets, 452K bytes) pkts bytes target prot opt in out source destination

Создадим файл с правилами iptables:

# mcedit /etc/iptables.sh

Очень подробно вопрос настройки iptables я рассмотрел отдельно, очень рекомендую ознакомиться. Хотя в примере другая ОС linux, принципиальной разницы нет, настройки iptables абсолютно одинаковые.

Добавляем набор простых правил для базовой настройки. Все необходимое вы потом сможете сами открыть или закрыть по аналогии с существующими правилами:

#!/bin/bash # # Объявление переменных export IPT="iptables" # Активный сетевой интерфейс export WAN=eth0 export WAN_IP=192.168.1.24 # Очистка всех цепочек iptables $IPT -F $IPT -F -t nat $IPT -F -t mangle $IPT -X $IPT -t nat -X $IPT -t mangle -X # Установим политики по умолчанию для трафика, не соответствующего ни одному из правил $IPT -P INPUT DROP $IPT -P OUTPUT DROP $IPT -P FORWARD DROP # разрешаем локальный траффик для loopback $IPT -A INPUT -i lo -j ACCEPT $IPT -A OUTPUT -o lo -j ACCEPT # разрешаем пинги $IPT -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT $IPT -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT $IPT -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT $IPT -A INPUT -p icmp --icmp-type echo-request -j ACCEPT # Разрешаем исходящие соединения самого сервера $IPT -A OUTPUT -o $WAN -j ACCEPT # Состояние ESTABLISHED говорит о том, что это не первый пакет в соединении. # Пропускать все уже инициированные соединения, а также дочерние от них $IPT -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Пропускать новые, а так же уже инициированные и их дочерние соединения $IPT -A OUTPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Разрешить форвардинг для уже инициированных и их дочерних соединений $IPT -A FORWARD -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Включаем фрагментацию пакетов. Необходимо из за разных значений MTU $IPT -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu # Отбрасывать все пакеты, которые не могут быть идентифицированы # и поэтому не могут иметь определенного статуса. $IPT -A INPUT -m state --state INVALID -j DROP $IPT -A FORWARD -m state --state INVALID -j DROP # Приводит к связыванию системных ресурсов, так что реальный # обмен данными становится не возможным, обрубаем $IPT -A INPUT -p tcp ! --syn -m state --state NEW -j DROP $IPT -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP # Открываем порт для ssh (!!!не забудьте указать свой порт, который вы изменили ранее!!!) $IPT -A INPUT -i $WAN -p tcp --dport 22 -j ACCEPT # Открываем порт для DNS $IPT -A INPUT -i $WAN -p udp --dport 53 -j ACCEPT # Открываем порт для NTP $IPT -A INPUT -i $WAN -p udp --dport 123 -j ACCEPT # Записываем правила в файл /sbin/iptables-save > /etc/iptables_rules

Даем файлу права на запуск:

# chmod 0740 /etc/iptables.sh

Запускаем скрипт:

sh /etc/iptables.sh

Проверяем правила:

# iptables -L -v -n

Проверяем, что правила записались в файл /etc/iptables_rules. Если их там нет, то записываем их вручную.

# /sbin/iptables-save > /etc/iptables_rules

Правила применились и произошла их запись в файл /etc/iptables_rules. Теперь нужно сделать так, чтобы они применялись при загрузке сервера. Для этого делаем следующее. Открываем файл /etc/network/interfaces и добавляем в него строку pre-up iptables-restore < /etc/iptables_rules Должно получиться вот так:

# cat /etc/network/interfaces allow-hotplug eth0 iface eth0 inet dhcp pre-up iptables-restore < /etc/iptables_rules

Настройка логов cron

По-умолчанию, в Debian нет отдельного лог файла для событий cron, они все сыпятся в общий лог. Лично мне это не очень нравится, я предпочитаю выводить эти события в отдельный файл. Об этом я написал отдельно — вывести логи cron в отдельный файл. Рекомендую пройти по ссылке и настроить, если вам это необходимо. Там очень кратко и только по делу, не буду сюда копировать эту информацию.

Установка и настройка screen

Я привык в своей работе пользоваться консольной утилитой screen. Изначально она задумывалась как инструмент, который позволяет запустить что-то удаленно в консоли, отключиться от сервера и при этом все, что выполняется в консоли продолжит свою работу. Вы сможете спокойно вернуться в ту же сессию и продолжить работу.

Первое время я именно так и использовал эту утилиту. Редко ее запускал, если не забывал, когда выполнялся какой-то длительный процесс, который жалко было прервать из-за случайного обрыва связи или необходимости отключить ноутбук от сети и куда-то переместиться.

Позже я решил подробнее ознакомиться с этим инструментом и обнаружил, что там есть несколько удобных моментов, которые можно использовать в ежедневной работе. Вот как использую утилиту screen я. При подключении к серверу у меня запускается screen с тремя окнами 1, 2, 3. Первое окно автоматически переходит в каталог /, второе в /etc, третье в /var/log. Я осмысленно назвал эти окна: Main, etc, logs соответственно. Внизу находится строка состояния, в которой отображен список всех открытых окон и подсвечено активное окно.

С помощью горячих клавиш я очень быстро переключаюсь между окнами в случае необходимости. Когда я не использовал screen, для быстрого перемещения между разными окнами я открывал несколько сессий ssh и через виндовый alt+tab переключался. Потом я стал использовать менеджер сессий mRemoteNG и там альтабаться уже не получалось. Долго страдал и переключал окна мышкой. Это было очень неудобно. Screen решил все мои проблемы по работе с разными сессиями на сервере. Теперь все реально в одной ssh сессии и получается очень быстро переключаться между окнами.

Вот как выглядит мое рабочее окно ssh подключения:

Переключаюсь между окнами с помощью стандартных горячих клавиш screen: ctrl+a 1,  ctrl+a 2, ctrl+a 3. Я специально изменил нумерацию, чтобы она начиналась не с 0 по-дефолту, а с 1. Так удобнее на клавиатуре переключать окна. Кнопка 0 находится слишком далеко от 1 и 2.

Чтобы настроить такую же работу screen, как у меня достаточно выполнить несколько простых действий. Сначала устанавливаем screen:

# apt-get install -y screen

Создаем в каталоге /root конфигурационный файл .screenrc следующего содержания:

# mcedit /root/.screenrc #Выводим строку состояния hardstatus alwayslastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<" # Добавляем некоторые настройки startup_message off defscrollback 1000 defutf8 on shell -$SHELL # Создаем несколько окон chdir screen -t Main 1 chdir /etc screen -t etc 2 chdir /var/log screen -t logs 3 # Активное первое окно после запуска select 1

Для знакомства с настройками, горячими клавишами и вариантами применения утилиты screen можно по адресу http://itman.in/ssh-screen/ Мне помог этот материал. Написано кратко, по делу и доходчиво.

Заключение

Теперь можно перезагрузить сервер и проверить, все ли в порядке. У меня все в порядке, проверил 🙂 На этом базовая настройка сервера debian окончена. Можно приступать к конфигурации различных сервисов, под которые он настраивался. Об этом я расскажу в отдельных статьях.

Помогла статья? Есть возможность отблагодарить автора

Дополнительные материалы по Debian

Настройки системы Настройка программных комплексов Разное
Рекомендую полезные материалы по Debian:
  • Установка
  • Базовая настройка
  • Настройка сети
  • Обновление 8 до 9
  • Обновление 7 до 8
  • Включение логов cron
Подробная установка Debian 9 Stratch с помощью графического инсталлятора со скриншотами и пояснениями к каждому пункту установщика. Базовая настройка сервера Debian. Приведены практические советы по улучшению безопасности и удобства администрирования. Подробное описание настройки сети в Debian - задать ip адрес, dhcp, отключить ipv6, dns, hostname, статические маршруты и др.
 
  • Proxmox
  • Шлюз в интернет
  • Установка Asterisk
  • Asterisk+Freepbx
  • PostgreSQL для 1С
  • Настройка pptp
Подробное описание установки гипервизора proxmox на raid1 mdadm на базе операционной системы Debian 8. Приведены практические советы по настройке. Чистая установка Asterisk 13 на сервер под управлением Debian 8. Никаких дополнений и GUI, только vanilla asterisk. Рассказ об установке и небольшой настройке сервера бд postgresql для работы с базами 1С. Задача не сложная, но есть небольшие нюансы как по настройке, так и по выбору дистрибутива. Описание установки и настройки pptp сервера в Debian с передачей статических маршрутов клиенту для организации доступа к ресурсам сети.
  • Бэкап с помощью rsync
  • Тюнинг postgresl для 1C

serveradmin.ru

Базовая настройка сервера Debian после установки

После установки нового сервера приходится выполнять один и тот же набор стандартных настроек. Сегодня мы займемся базовой настройкой сервера под управлением операционной системы Debian. Я приведу практические советы по небольшому увеличению безопасности и удобству администрирования, основанные на моем личном опыте.

Введение

Любая работа с сервером после установки чаще всего начинается со стандартных обязательных действий, без которых либо не получится продвинуться дальше, либо будет неудобно работать. Например, вам в любом случае необходимо выполнить сетевые настройки, желательно обновить систему и установить часовой пояс. Рекомендуется сразу настроить автообновление времени, подрихтовать параметры sshd, установить midnight commander и выполнить другие настройки.

Об этом я хочу рассказать в статье. Я буду делиться своим реальным опытом работы. Это не значит, что нужно делать так, как я. Я могу в чем-то ошибаться, что-то делать не так удобно, как можно было бы сделать. Это просто советы, которые кому-то помогут узнать что-то новое, а кто-то возможно поделится со мной чем-то новым для меня, либо укажет на мои ошибки. Мне бы хотелось, чтобы это было так. Своими материалами я не только делюсь с вами знаниями, но и сам узнаю что-то новое в том числе и из комментариев и писем на почту.

Указываем сетевые параметры

Итак, у нас в наличии только что установленная система. Узнать или проверить ее версию можно командами:

# uname -a Linux debian 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 (2016-01-17) x86_64 GNU/Linux # lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 8.3 (jessie) Release: 8.3 Codename: jessie Очень подробно про настройку сети в Debian я написал в отдельной статье. Рекомендую с ней ознакомиться. Здесь же кратко выполним основное. Для настройки сети, необходимо отредактировать файл /etc/network/interfaces. Сделаем это: # nano /etc/network/interfaces

Для получения IP адреса по dhcp достаточно будет следующего содержания:

allow-hotplug eth0 iface eth0 inet dhcp

Если у вас статический адрес, то его настроить можно следующими параметрами в файле:

allow-hotplug eth0 iface eth0 inet static address 192.168.1.24 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 192.168.1.1

Сохраняем файл. Теперь нужно выполнить перезапуск сети. В Debian это делается командой:

# /etc/init.d/networking restart [ ok ] Restarting networking (via systemctl): networking.service.

На этом настройка сети закончена.

Обновление системы

Сеть настроили, теперь можно обновить систему и пакеты. В Debian это делается достаточно просто. Воспользуемся несколькими командами. Сначала обновим локальный индекс пакетов до последних изменений в репозиториях:

# apt-get update

Теперь выполним обновление всех пакетов системы:

# apt-get upgrade На этом обновление системы закончено. Если вы хотите обновить версию релиза, например Debian 7 wheezy обновить до Debian 8Jessie, то читайте отдельный материал.

Настройка ssh

Теперь внесем некоторые изменения в настройки сервера ssh. Я рекомендую его запускать на нестандартном порту для исключения лишних общений с ботами, которые регулярно сканят инет и подбирают пароли пользователей по словарям. По-умолчанию в Debian, впрочем как и в любом другом дистрибутиве Linux, ssh сервер работает на 22 порту. Изменим этот порт, к примеру, на 23331. Так же я еще изменяю конфигурацию для разрешения подключения по ssh пользователя root с использованием пароля. В Debian из коробки пользователь root по ssh паролем авторизовываться не может. Изменим и это. Открываем файл настроек:

# nano /etc/ssh/sshd_config

И изменяем там следующие строки. Приводим их к виду:

Port 23331 PermitRootLogin yes

Сохраняем изменения и перезапускаем сервер ssh следующей командой:

# service sshd restart

Проверяем изменения:

# netstat -tulnp | grep ssh tcp 0 0 0.0.0.0:23331 0.0.0.0:* LISTEN 925/sshd tcp6 0 0 :::23331 :::* LISTEN 925/sshd

Все в порядке, сервер слушает 23331 порт. Теперь новое подключение будет осуществлено только по порту 23331. При этом, после перезапуска ssh, старое подключение не будет разорвано.

Я знаю, что многие возражают против подключения рутом к серверу. Якобы это небезопасно и т.д. и т.п. Мне эти доводы кажутся не убедительными. Не понимаю, в чем может быть проблема, если у меня нормальный сложный пароль на root, который не получится подобрать или сбрутить. Ни разу за всю мою работу системным администратором у меня не возникло проблем с этим моментом. А вот работать так значительно удобнее, особенно, когда необходимо оперативно куда-то подключиться по форс мажорным обстоятельствам.

Установка утилит mc, htop, iftop

Следующим шагом я настраиваю некоторые полезные утилиты, которыми регулярно пользуюсь в повседневной работе. Первая из них это всем известный двухпанельный файловый менеджер Midnight Commander. Установим mc на наш сервер:

# apt-get -y install mc

Я сразу же ставлю редактором по-умолчанию mcedit. Для этого просто выбираю его из меню при первом редактировании какого-нибудь файла. Если у вас такое меню не появляется, можете вызвать его сами и выбрать необходимый редактор по-умолчанию:

# select-editor Select an editor. To change later, run 'select-editor'. 1. /bin/nano <---- easiest 2. /usr/bin/mcedit 3. /usr/bin/vim.tiny Choose 1-3 [1]: 2 Так же я рекомендую очень удобный диспетчер задач — htop. Мне он помог, к примеру, решить проблему Взлома сервера CentOS. Ставим его на сервер: # apt-get -y install htop

Полезной утилитой, позволяющей смотреть сетевую загрузку в режиме реального времени, является iftop. Очень рекомендую. Более простого и удобного инструмента мне не попадалось, хотя я много перепробовал подобных вещей. Устанавливаем iftop на сервер:

# apt-get -y install iftop

Настройка и обновление времени в Debian 

Теперь проверим установленный часовой пояс, время и включим автоматическую синхронизацию времени с удаленного сервера. Узнать дату, время, часовой пояс можно командой date:

# date Fri Jan 29 00:01:37 MSK 2016

Если все указано верно, то менять ничего не нужно. Если же у вас неправильное время или указан часовой пояс не соответствующий вашему, то настроить это можно следующим образом. Сначала обновим часовые пояса:

# apt-get -y install tzdata

Теперь выберем правильный часовой пояс с помощью команды:

# dpkg-reconfigure tzdata

Выбирая соответствующие пункты визарда, указываете свой часовой пояс.

Дальше синхронизируем время с сервером времени в интернете. Для разовой или ручной синхронизации понадобится отдельная утилита. Установим ntpdate на сервер:

# apt-get install ntpdate

И синхронизируем время:

# ntpdate-debian 29 Jan 00:02:30 ntpdate[3172]: adjust time server 85.114.26.194 offset -0.001045 sec

Если получаете ошибку:

29 Jan 00:02:09 ntpdate[3123]: the NTP socket is in use, exiting

Значит у вас уже работает служба ntp. Ее нужно остановить и обновить время вручную. Хотя если она работает, то у вас и так должно быть все в порядке.

Для того, чтобы время автоматически синхронизировалось без вашего участия с определенной периодичностью, используется инструмент ntp. Установим его:

# apt-get -y install ntp

После установки он сам запустится и будет автоматически синхронизировать часы сервера. Проверим, запустился ли сервис ntpd:

# netstat -tulnp | grep ntp udp 0 0 192.168.1.24:123 0.0.0.0:* 3119/ntpd udp 0 0 127.0.0.1:123 0.0.0.0:* 3119/ntpd udp 0 0 0.0.0.0:123 0.0.0.0:* 3119/ntpd udp6 0 0 ::1:123 :::* 3119/ntpd udp6 0 0 fe80::215:5dff:fe01:123 :::* 3119/ntpd udp6 0 0 :::123 :::* 3119/ntpd

Настройка firewall (iptables) в Debian 8

В качестве firewall по-умолчанию используется iptables, его и будем настраивать. Изначально фаервол полностью открыт и пропускает весь трафик. Проверить список правил iptables можно следующей командой:

# iptables -L -v -n Chain INPUT (policy ACCEPT 5851 packets, 7522K bytes) pkts bytes target prot opt in out source destination Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 3328 packets, 452K bytes) pkts bytes target prot opt in out source destination

Создадим файл с правилами iptables:

# mcedit /etc/iptables.sh Очень подробно вопрос настройки iptables я рассмотрел отдельно, очень рекомендую ознакомиться. Хотя в примере другая ОС linux, принципиальной разницы нет, настройки iptables абсолютно одинаковые.

Добавляем набор простых правил для базовой настройки. Все необходимое вы потом сможете сами открыть или закрыть по аналогии с существующими правилами:

#!/bin/bash # # Объявление переменных export IPT="iptables" # Активный сетевой интерфейс export WAN=eth0 export WAN_IP=192.168.1.24 # Очистка всех цепочек iptables $IPT -F $IPT -F -t nat $IPT -F -t mangle $IPT -X $IPT -t nat -X $IPT -t mangle -X # Установим политики по умолчанию для трафика, не соответствующего ни одному из правил $IPT -P INPUT DROP $IPT -P OUTPUT DROP $IPT -P FORWARD DROP # разрешаем локальный траффик для loopback $IPT -A INPUT -i lo -j ACCEPT $IPT -A OUTPUT -o lo -j ACCEPT # разрешаем пинги $IPT -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT $IPT -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT $IPT -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT $IPT -A INPUT -p icmp --icmp-type echo-request -j ACCEPT # Разрешаем исходящие соединения самого сервера $IPT -A OUTPUT -o $WAN -j ACCEPT # Состояние ESTABLISHED говорит о том, что это не первый пакет в соединении. # Пропускать все уже инициированные соединения, а также дочерние от них $IPT -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Пропускать новые, а так же уже инициированные и их дочерние соединения $IPT -A OUTPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Разрешить форвардинг для уже инициированных и их дочерних соединений $IPT -A FORWARD -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Включаем фрагментацию пакетов. Необходимо из за разных значений MTU $IPT -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu # Отбрасывать все пакеты, которые не могут быть идентифицированы # и поэтому не могут иметь определенного статуса. $IPT -A INPUT -m state --state INVALID -j DROP $IPT -A FORWARD -m state --state INVALID -j DROP # Приводит к связыванию системных ресурсов, так что реальный # обмен данными становится не возможным, обрубаем $IPT -A INPUT -p tcp ! --syn -m state --state NEW -j DROP $IPT -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP # Открываем порт для ssh (!!!не забудьте указать свой порт, который вы изменили ранее!!!) $IPT -A INPUT -i $WAN -p tcp --dport 22 -j ACCEPT # Открываем порт для DNS $IPT -A INPUT -i $WAN -p udp --dport 53 -j ACCEPT # Открываем порт для NTP $IPT -A INPUT -i $WAN -p udp --dport 123 -j ACCEPT # Записываем правила в файл /sbin/iptables-save > /etc/iptables_rules

Даем файлу права на запуск:

# chmod 0740 /etc/iptables.sh

Запускаем скрипт:

sh /etc/iptables.sh

Проверяем правила:

# iptables -L -v -n

Проверяем, что правила записались в файл /etc/iptables_rules. Если их там нет, то записываем их вручную.

# /sbin/iptables-save > /etc/iptables_rules

Правила применились и произошла их запись в файл /etc/iptables_rules. Теперь нужно сделать так, чтобы они применялись при загрузке сервера. Для этого делаем следующее. Открываем файл /etc/network/interfaces и добавляем в него строку pre-up iptables-restore < /etc/iptables_rules Должно получиться вот так:

# cat /etc/network/interfaces allow-hotplug eth0 iface eth0 inet dhcp pre-up iptables-restore < /etc/iptables_rules

Настройка логов cron

По-умолчанию, в Debian нет отдельного лог файла для событий cron, они все сыпятся в общий лог. Лично мне это не очень нравится, я предпочитаю выводить эти события в отдельный файл. Об этом я написал отдельно — вывести логи cron в отдельный файл. Рекомендую пройти по ссылке и настроить, если вам это необходимо. Там очень кратко и только по делу, не буду сюда копировать эту информацию.

Установка и настройка screen

Я привык в своей работе пользоваться консольной утилитой screen. Изначально она задумывалась как инструмент, который позволяет запустить что-то удаленно в консоли, отключиться от сервера и при этом все, что выполняется в консоли продолжит свою работу. Вы сможете спокойно вернуться в ту же сессию и продолжить работу.

Первое время я именно так и использовал эту утилиту. Редко ее запускал, если не забывал, когда выполнялся какой-то длительный процесс, который жалко было прервать из-за случайного обрыва связи или необходимости отключить ноутбук от сети и куда-то переместиться.

Позже я решил подробнее ознакомиться с этим инструментом и обнаружил, что там есть несколько удобных моментов, которые можно использовать в ежедневной работе. Вот как использую утилиту screen я. При подключении к серверу у меня запускается screen с тремя окнами 1, 2, 3. Первое окно автоматически переходит в каталог /, второе в /etc, третье в /var/log. Я осмысленно назвал эти окна: Main, etc, logs соответственно. Внизу находится строка состояния, в которой отображен список всех открытых окон и подсвечено активное окно.

С помощью горячих клавиш я очень быстро переключаюсь между окнами в случае необходимости. Когда я не использовал screen, для быстрого перемещения между разными окнами я открывал несколько сессий ssh и через виндовый alt+tab переключался. Потом я стал использовать менеджер сессий mRemoteNG и там альтабаться уже не получалось. Долго страдал и переключал окна мышкой. Это было очень неудобно. Screen решил все мои проблемы по работе с разными сессиями на сервере. Теперь все реально в одной ssh сессии и получается очень быстро переключаться между окнами.

Вот как выглядит мое рабочее окно ssh подключения:

Переключаюсь между окнами с помощью стандартных горячих клавиш screen: ctrl+a 1,  ctrl+a 2, ctrl+a 3. Я специально изменил нумерацию, чтобы она начиналась не с 0 по-дефолту, а с 1. Так удобнее на клавиатуре переключать окна. Кнопка 0 находится слишком далеко от 1 и 2.

Чтобы настроить такую же работу screen, как у меня достаточно выполнить несколько простых действий. Сначала устанавливаем screen:

# apt-get install -y screen

Создаем в каталоге /root конфигурационный файл .screenrc следующего содержания:

# mcedit /root/.screenrc #Выводим строку состояния hardstatus alwayslastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<" # Добавляем некоторые настройки startup_message off defscrollback 1000 defutf8 on shell -$SHELL # Создаем несколько окон chdir screen -t Main 1 chdir /etc screen -t etc 2 chdir /var/log screen -t logs 3 # Активное первое окно после запуска select 1 Для знакомства с настройками, горячими клавишами и вариантами применения утилиты screen можно по адресу http://itman.in/ssh-screen/ Мне помог этот материал. Написано кратко, по делу и доходчиво.

Заключение

Теперь можно перезагрузить сервер и проверить, все ли в порядке. У меня все в порядке, проверил  На этом базовая настройка сервера debian окончена. Можно приступать к конфигурации различных сервисов, под которые он настраивался. Об этом я расскажу в отдельных статьях.

uraganltd.blogspot.com

Debian 8 установка и настройка

Установим одну из самых стабильных операционных систем linux Debian 8. Настроим учитывая основные требования системного администратора. Нужна стабильность в работе? Выбирайте этот дистрибутив OC Linux. Самая большая база программ и огромное сообщество.

Предисловие

Операционная система Debian является основоположником целого семейства OC Linux и зарекомендовала себя как одна из самых надежных и стабильных систем. На рабочем компьютере устаревшие но проверенные версии программного обеспечения могут вызвать неудобство в работе но для сервера надежность прежде всего. Каждый выбирает сам, что он хочет получить, стабильность или современность. Для серверов мой выбор однозначно падает на стабильность.

Где скачать Debian 8

На сайте разработчика вы всегда можете скачать любую необходимую версию системы Debian.

Скачать OC Linux

Установка Debian 8

В скриншотах показана  пошаговая установка с указанием всех необходимых параметров.

Для установки системы на RAID1 можете воспользоватся информацией из другого материала.

Установка на RAID1

Настройка Debian 8

Подключение по ssh

Откроем консоль и определим ip адрес:

local@xrdp:~$ ip addr = вывод команды = 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 02:74:8a:ed:a9:d3 brd ff:ff:ff:ff:ff:ff inet 192.168.0.150/24 brd 192.168.0.255 scope global dynamic eth0 valid_lft 31965sec preferred_lft 31965sec inet6 fe80::74:8aff:feed:a9d3/64 scope link valid_lft forever preferred_lft forever

Подключимся по ssh под простым пользователем:

ssh [email protected] = вывод команды = Warning: Permanently added '192.168.0.150' (ECDSA) to the list of known hosts. [email protected]'s password: The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. local@xrdp:~$

По умолчанию к системе Debian 8 нельзя подключится сразу под суперпользователем root!

Переключится на пользователя root:

local@xrdp:~$ su - = вывод команды = Пароль: root@xrdp:~#

Обновление

Обновим индекс пакетов в Debian 8 до актуального состояния:

apt-get update

Выполним обновление всех пакетов системы:

apt-get upgrade

Необходимые пакеты для работы

Установим без вопросов пакеты которые обычно используются в работе c Debian 8:

apt-get -y install mc htop iftop cifs-utils davfs2
  • mc — консольный редактор,
  • htop — консольный монитор просмотра состояния сервера,
  • cifs-utils — пакет необходимый для монтирование сетевых ресурсов,
  • davfs2 — пакет для подключения по протоколу WebDav

Определим редактор mc в системе по умолчанию:

select-editor = вывод команды с необходимым параметром = Select an editor. To change later, run 'select-editor'. 1. /bin/nano <---- easiest 2. /usr/bin/mcedit 3. /usr/bin/vim.tiny Choose 1-3 [1]: 2

Разрешим подключение root по ssh

Произведем изменения в файле конфигурации ssh:

mcedit /etc/ssh/sshd_config = необходимые изменения = # Можно поменять на другой порт при желании Port 22 # Разрешение подключаться под root PermitRootLogin yes

Перезагрузим сервис ssh:

service sshd restart

Проверим правильность изменения порта (если это делали):

netstat -tulnp | grep ssh = вывод команды = tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2015/sshd tcp6 0 0 :::22 :::* LISTEN 2015/sshd

Можем теперь сразу подключаться под root.

Не забудьте добавить порт в настройки firewall!

Сетевые параметры

После установки наша система получает ip адрес используя DHCP.

При установке после определения сетевых параметров по DHCP вы можете сделать шаг назад и сразу настроить статический ip адрес.

Для назначения статического адреса вы можете использовать два варианты:

  1. Привязать mac адрес на DHCP сервере и закрепить нужный ip,
  2. Назначить сетевые параметры изменив настройки.

Обычно я использую первый вариант, но это не всегда разумно.

Изменим сетевые параметры (обратите внимание на название сетевой карты у нас она eth0):

mcedit /etc/network/interfaces =вывод команды с необходимыми изменениями= # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 # Запускать автоматически при загрузке системы auto eth0 # Интерфейс eth0 в диапазоне IPv4 со статическим адресом iface eth0 inet static # IP адрес address 192.168.0.107 # Шлюз по умолчанию gateway 192.168.0.106 # Маска сети netmask 255.255.255.0 # DNS dns-nameservers 8.8.8.8

Выполним перезапуск сети командой:

/etc/init.d/networking restart = вывод команды = [ ok ] Restarting networking (via systemctl): networking.service.

Проверим правильность изменений:

ip addr = вывод команды = 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 02:74:8a:ed:a9:d3 brd ff:ff:ff:ff:ff:ff inet 192.168.0.150/24 brd 192.168.0.255 scope global dynamic eth0 valid_lft 29523sec preferred_lft 29523sec inet 192.168.0.107/24 brd 192.168.0.255 scope global secondary eth0 valid_lft forever preferred_lft forever inet6 fe80::74:8aff:feed:a9d3/64 scope link valid_lft forever preferred_lft forever

После перезагрузки системы  отображение  inet 192.168.0.150/24 пропадет!

Проверим соединение с интернетом отправив 4 пакета на ya.ru:

ping -c 4 ya.ru = вывод команды = PING ya.ru (87.250.250.242) 56(84) bytes of data. 64 bytes from ya.ru (87.250.250.242): icmp_seq=1 ttl=54 time=15.2 ms 64 bytes from ya.ru (87.250.250.242): icmp_seq=2 ttl=54 time=15.1 ms 64 bytes from ya.ru (87.250.250.242): icmp_seq=3 ttl=54 time=16.0 ms 64 bytes from ya.ru (87.250.250.242): icmp_seq=4 ttl=54 time=18.4 ms --- ya.ru ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 15.186/16.235/18.422/1.310 ms

Настройка iptables

Изначально фаервол в Debian 8 полностью открыт. Проверим это:

iptables -L -v -n = вывод команды = Chain INPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination

Всё пропускает.

Самое удобное для работой с iptables это создать скрипт и при необходимости его редактировать указывая нужные параметры и применять.

Создадим скрипт настройки iptables:

mcedit /etc/iptables.sh = вывод команды с необходимой информацией = #!/bin/bash # # Объявление переменных export IPT="iptables" # Сетевой интерфейс export WAN=eth0 export WAN_IP=192.168.0.107 # Очистка всех цепочек iptables $IPT -F $IPT -F -t nat $IPT -F -t mangle $IPT -X $IPT -t nat -X $IPT -t mangle -X # Политики для трафика, не соответствующего ни одному правил у $IPT -P INPUT DROP $IPT -P OUTPUT DROP $IPT -P FORWARD DROP # Локальный трафик для loopback $IPT -A INPUT -i lo -j ACCEPT $IPT -A OUTPUT -o lo -j ACCEPT # Ping $IPT -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT $IPT -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT $IPT -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT $IPT -A INPUT -p icmp --icmp-type echo-request -j ACCEPT # Исходящие и Входящие соединения $IPT -A OUTPUT -o $WAN -j ACCEPT #$IPT -A INPUT -i $WAN -j ACCEPT # Доступ к web серверу #$IPT -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT #$IPT -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT # Доступ к Samba #$IPT -A INPUT -p tcp -m tcp --dport 137 -j ACCEPT #$IPT -A INPUT -p tcp -m tcp --dport 138 -j ACCEPT #$IPT -A INPUT -p tcp -m tcp --dport 139 -j ACCEPT #$IPT -A INPUT -p tcp -m tcp --dport 445 -j ACCEPT #$IPT -A INPUT -p tcp -m tcp --dport 901 -j ACCEPT # Состояние ESTABLISHED говорит что это не первый пакет в соединении # Пропускать все уже инициированные соединения, а также дочерние от них $IPT -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Пропускать новые, а так же уже инициированные и их дочерние соединения $IPT -A OUTPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Форвардинг для уже инициированных и их дочерних соединений $IPT -A FORWARD -p all -m state --state ESTABLISHED,RELATED -j ACCEPT # Включаем фрагментацию пакетов. Необходимо из за разных значений MTU $IPT -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu # Отбрасывать все пакеты, которые не могут быть идентифицированы $IPT -A INPUT -m state --state INVALID -j DROP $IPT -A FORWARD -m state --state INVALID -j DROP # Приводит к связыванию системных ресурсов, так что реальный # обмен данными становится не возможным, обрубаем $IPT -A INPUT -p tcp ! --syn -m state --state NEW -j DROP $IPT -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP # Открываем порт для ssh $IPT -A INPUT -i $WAN -p tcp --dport 22 -j ACCEPT # Открываем порт для DNS $IPT -A INPUT -i $WAN -p udp --dport 53 -j ACCEPT # Открываем порт для NTP $IPT -A INPUT -i $WAN -p udp --dport 123 -j ACCEPT # Открываем порт для RDP #$IPT -A INPUT -i $WAN -p tcp --dport 3389 -j ACCEPT # Логирование $IPT -N block_in $IPT -N block_out $IPT -N block_fw $IPT -A INPUT -j block_in $IPT -A OUTPUT -j block_out $IPT -A FORWARD -j block_fw $IPT -A block_in -j LOG --log-level info --log-prefix "--IN--BLOCK" $IPT -A block_in -j DROP $IPT -A block_out -j LOG --log-level info --log-prefix "--OUT--BLOCK" $IPT -A block_out -j DROP $IPT -A block_fw -j LOG --log-level info --log-prefix "--FW--BLOCK" $IPT -A block_fw -j DROP # Сохраняем правила /sbin/iptables-save > /etc/iptables_rules

Даем файлу права на запуск:

chmod +x /etc/iptables.sh

Всегда очень внимательно настраивайте правила! В случае неправильной настройки вы можете потерять доступ к серверу!

Запускаем скрипт:

sh /etc/iptables.sh

Проверяем правила:

iptables -L -v -n = вывод команды = Chain INPUT (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 0 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 3 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 11 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8 5 356 ACCEPT all -- eth0 * 0.0.0.0/0 0.0.0.0/0 0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID 0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:!0x17/0x02 state NEW 0 0 ACCEPT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 0 0 ACCEPT udp -- eth0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53 0 0 ACCEPT udp -- eth0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:123 0 0 block_in all -- * * 0.0.0.0/0 0.0.0.0/0 Chain FORWARD (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 TCPMSS tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x06/0x02 TCPMSS clamp to PMTU 0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID 0 0 block_fw all -- * * 0.0.0.0/0 0.0.0.0/0 Chain OUTPUT (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0 3 308 ACCEPT all -- * eth0 0.0.0.0/0 0.0.0.0/0 0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:!0x17/0x02 state NEW 0 0 block_out all -- * * 0.0.0.0/0 0.0.0.0/0 Chain block_fw (1 references) pkts bytes target prot opt in out source destination 0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 6 prefix "--FW--BLOCK" 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 Chain block_in (1 references) pkts bytes target prot opt in out source destination 0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 6 prefix "--IN--BLOCK" 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 Chain block_out (1 references) pkts bytes target prot opt in out source destination 0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 6 prefix "--OUT--BLOCK" 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0

Настроим применение правил при загрузке сервера.  Добавляем необходимую строку в файл сетевых настроек:

mcedit /etc/network/interfaces = необходимое дополнение = # Загрузка правил iptables при старте машины pre-up iptables-restore < /etc/iptables_rules

Применим изменения командой:

/etc/init.d/networking restart = вывод команды = [ ok ] Restarting networking (via systemctl): networking.service.

 

Логирование Cron

В Debian нет отдельного файла логов cron. Исправим это недоразумение.

Редактируем необходимый файл:

mcedit /etc/rsyslog.conf = Раскомментируем строку = cron.* /var/log/cron.log = Редактируем строку добавив cron.none = *.*;auth,authpriv.none,cron.none -/var/log/syslog

Перезапустим rsyslog:

service rsyslog restart

Осталось проверить ротацию логов cron:

mcedit /etc/logrotate.d/rsyslog = вывод команды с необходимыми параметрами = cat /etc/logrotate.d/rsyslog /var/log/syslog { rotate 7 daily missingok notifempty delaycompress compress postrotate invoke-rc.d rsyslog rotate > /dev/null endscript } /var/log/mail.info /var/log/mail.warn /var/log/mail.err /var/log/mail.log /var/log/daemon.log /var/log/kern.log /var/log/auth.log /var/log/user.log /var/log/lpr.log /var/log/cron.log /var/log/debug /var/log/messages { rotate 4 weekly missingok notifempty compress delaycompress sharedscripts postrotate invoke-rc.d rsyslog rotate > /dev/null endscript }

Строка присутствует значит все будет ротироваться как надо.

Результат

Сервер готов к дальнейшей настройке под необходимые требования. Конечно, это не самые идеальные параметры настройки, но для меня такая базовая настройка оказалась самой удобной.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

sevo44.ru

Debian Jessie: Начальная настройка системы

Статья из разряда «Что вы делаете сразу после установки Debian GNU Linux (или другого дистрибутива) на сервер?»Чуть ниже я опишу свое видение необходимых начальных настроек системы. Также установку некоторых пакетов и коротко опишу их назначение.

Сразу после свежей установки Debian (любого, но в данном случае Jessie) меня раздражают 2 вещи:1. Отсутствие моего любимого текстового редактора vim. Есть, правда, дико обрезанный в функциональности vim.tiny (по сути это самый обычный олдскульный vi) да nano — печальная картина. Хотя подозреваю что это необходимая мера чтобы вписаться в минималистичные размеры сборки netinstall.2. «Бедный» конфиг источников пакетов /etc/apt/sources.list Я не против минимализма и чистоты системы от non-free скверны, но можно же хоть закоменченные строчки contrib/non-free репов в конфиг вписать … Unix way елки-палки. Ubuntu, например, имеет в системе изначально довольно широкий список sources.list с закоменченными опциональными репами. Уважаю в этом плане бубунту.

Порядок решения этих неприятностей обратный, сначала составляем жизненно необходимый конфиг /etc/apt/sources.list, а потом уже можно заняться установкой пакетов и всякими настройками системы.

Для удобства использования из консоли я выложил свой sources.list в виде архива по адресу http://diff.org.ua/configs/deb8_sources_list.gz (ниже есть листинг содержимого, если вы имеете красивый доступ в web, а сервер настраиваете через SSH — то лучше сделайте привычный copy/paste прямо из браузера в консоль ssh)Использовать его очень просто, после входа на сервер по ssh, переходим под root (у нас пока нету sudo, так как в netinstall он не предустановлен):

user@deb:~$ su -password:root@deb:~#

скачиваем архив с помощью wget-а (благо он есть по умолчанию даже в netinstall сборке Debian):

root@deb:~$ wget -c http://diff.org.ua/configs/deb8_sources_list.gz

Дальше мы будем заменять системный конфиг, если Вы совсем новичок, рекомендую перед каждой правкой системных конфигов делать бэкап оригинала. Например для /etc/apt/sources.list это может выглядеть так:

root@deb:~# cp /etc/apt/sources.list /etc/apt/sources.list_orig

Теперь нужно заменить оригинальный конфиг скачанным:

root@deb:~# zcat deb8_sources_list.gz > /etc/apt/sources.list

Убедиться в том что конфиг обновился, можно так:

root@deb:~# cat /etc/apt/sources.list# Main Debian Jessie Repository - UA Mirror # deb http://ftp.ua.debian.org/debian/ jessie main contrib non-free#deb-src http://ftp.ua.debian.org/debian/ jessie main contrib non-free

# Main Security Repository ##deb http://security.debian.org/ jessie/updates main contrib non-free#deb-src http://security.debian.org/ jessie/updates main contrib non-free

# Security Updates - UA Mirror #deb http://ftp.ua.debian.org/debian-security/ jessie/updates main contrib non-free

# Jessie-updates, previously known as 'volatile' - UA Mirror #deb http://ftp.ua.debian.org/debian/ jessie-updates main contrib non-free#deb-src http://ftp.ua.debian.org/debian/ jessie-updates main contrib non-free

# Multimedia Updates - UA Mirror #deb http://ftp.ua.debian.org/debian-multimedia/ jessie main non-free

# Proposed Updates - UA Mirror #deb http://ftp.ua.debian.org/debian/ jessie-proposed-updates main contrib non-free

# Jessie Backports - UA Mirror #deb http://ftp.ua.debian.org/debian/ jessie-backports main contrib non-freeroot@deb:~#

Как видно, обновился 🙂После обновления сорс-листа необходимо перечитать источники пакетов, тоесть репозитарии:

root@deb:~# apt-get update

После исправления sources.list у меня возникает вот такая ошибка:

W: GPG error: http://ftp.ua.debian.org jessie InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5C808C2B65558117

Решается она просто, импортом нужного ключа:

root@deb:~# gpg --keyserver pgpkeys.mit.edu --recv-key 5C808C2B65558117...root@deb:~# gpg -a --export 5C808C2B65558117 | sudo apt-key add -OKroot@deb:~#

Также рекомендую выполнить обновление системы такой командой:

root@deb:~# apt-get dist-upgrade

Если APT предложит обновить какието пакеты — смело соглашайтесь (жмите Y на клавиатуре и Enter), на данный момент у нас свежая чистая система — ломаться особо нечему.

Теперь, когда мы настроили sources.list и сделали apt-get update, apt-get dist-upgrade — можно приступать к установке дополнительных полезных пакетов. Вот перечень того что я устанавливаю в первую очередь:sudo — отличный системный инструмент позволяющий очень гибко настраивать доступ к администрированию системы. Например можно пользователю либо группе дать доступ хоть на одно хоть на несколько админских действий … вплоть до полного root-доступа. Гибко, удобно и просто.tree — удобная консольная утилита для визуализации содержимого каталоговmc — консольный двухпанельный олдскульный файловый менеджер. Удобный в работе и весьма функциональный.screen — нечто наподобии оконного менеджера для консоли. Долго вникал в эту утилиту — но не зря, весьма удобно.rsync — консольная утилита/сервис для синхронизации файловtcpdump — сетевая консольная утилита для просмотра траффика в реальном времени. Чтото типа wireshark.mtr-tiny — сетевая консольная утилита для троссировки маршрутов. Аля tracert под виндойvim — очень мощный консольный текстовый редакторdmidecode — системная утилита для просмотра информации о железе сервераcurl — консольная утилита для работы с web контентом. Аля wget но более функциональнаяdnsutils — пакет сетевых DNS утилит. Чаще всего из него я использую утилиты host и diggit-core — git клиент, для клонирования проектов с git-репозиториев, таких например как github

Для установки данных пакетов использую стандартный инструмент — apt-get:

root@deb:~# apt-get install sudo tree mc screen rsync tcpdump mtr-tiny vim dmidecode curl dnsutils git-core

Ждем пока отработает команда по установке пакетов и потихоньку читаем дальше …

Перво наперво в новой системе я настраиваю sudo. Настройка sudo очень простая.Открываем основной конфиг:

Обычно в Debian даны права sudo для пользователей в группе sudo. Убедимся в этом:

%sudo   ALL=(ALL:ALL) ALL

добавить пользователя в группу sudo (это дает пользователю административные права, будьте осторожны!) можно так:

root@deb:~# gpasswd -a someuser sudoAdding user someuser to group sudoroot@deb:~#

Если пользователь someuser был залогинен в системе — нужно перелогиниться чтобы применить настройки групп.Вот и вся настройка, теперь пользователь someuser может с помощью sudo выполнять админские команды со своим паролем, например просмотр messages лога:

deb$ sudo cat /var/log/messages

Мне очень не нравится дэфолтная поддержка IPv6, не то чтобы я был совсем против данной технологии — просто она мне абсолютно не нужна. Да и к тому же портит вид выхлопа таких команд как:

$ ip a$ ifconfig$ netstat

и тп

Поддержку IPv6 можно легко выключить, совсем 🙂 Чем и предлагаю заняться.

Отключаем IPv6:Тут есть 2 варианта, первый — отключить в загрузчике, и второй — с помощью sysctl. Я пользуюсь первым вариантом.Открываем конфиг загрузчика:

deb$ sudo vim /etc/default/grub

и прописываем в параметр GRUB_CMDLINE_LINUX вот что:

GRUB_CMDLINE_LINUX="ipv6.disable=1"

Обновляем настройки Grub:

После перезагрузки получите систему с выключенным ipv6 🙂 Пока не перегружаемся, это мы сделаем чуть позже …

Небольшая оптимизация APT:Еще один момент про apt — если вы используете в системе locale отличную от en_US.* то apt тянет все доступные переводы для пакетной базы (украинские, русские, румынские, африканские и тд.), размер их не то чтобы огромный, но приличный — десятки мегабайт в сумме, обвновляются каждый запуск apt-get update … незнаю как вам, но мне такие переводы абсолютно не нужны. Проверить locale можно одноименной командой:вот так у меня:

deb:~$ localeLANG=en_US.UTF-8LANGUAGE=LC_CTYPE="en_US.UTF-8"LC_NUMERIC="en_US.UTF-8"LC_TIME="en_US.UTF-8"LC_COLLATE="en_US.UTF-8"LC_MONETARY="en_US.UTF-8"LC_MESSAGES="en_US.UTF-8"LC_PAPER="en_US.UTF-8"LC_NAME="en_US.UTF-8"LC_ADDRESS="en_US.UTF-8"LC_TELEPHONE="en_US.UTF-8"LC_MEASUREMENT="en_US.UTF-8"LC_IDENTIFICATION="en_US.UTF-8"LC_ALL=deb:~$

в моем случае ничего делать не надо, если у вас локаль отличная от en_US.* — рекомендую отключить загрузку ненужных переводов, как это делать — я описывал ранее.

Настройка vim:Две важные настройки без которых я жить не могу 🙂Открываем основной конфиг:

deb:~$ sudo vim /etc/vim/vimrc

розкомментировать строчки:

syntax onset background=dark

а вообще vim очень мощный инструмент и настроек у него огромное количество, почитайте о нем на досуге.

Также неплохо бы хоть базово настроить bash, не хочу повторяться, гляньте тут, возможно захотите поменять некоторые параметры 🙂

Настроить timezone можно простой перенастройкой пакета tzdata:

deb:~$ sudo dpkg-reconfigure tzdata

Я там говорил про ребут, пока еще не время 🙂Сначала рекомендую настроить базовые сервисы, а потом уже можно reboot!

Хай щастить!

diff.org.ua

Первоначальная настройка сервера Debian 8

Искренность — источник всякой гениальности (Л. Бёрне).

При создании нового сервера Debian 8, есть несколько шагов настройки, которые необходимо принимать на раннем этапе в рамках базовой установки. Это позволит повысить безопасность и удобство использования вашего сервера, и даст вам прочную основу для дальнейших действий.

Шаг первый – Войти как root

Для того, чтобы войти на свой сервер, вам нужно знать общественный IP – адрес сервера и пароль для учетной записи пользователя “root”. Если вы еще не вошли на свой сервер, вы можете следовать учебнику как подключиться к серверу с помощью SSH.

Если вы еще не подключены к серверу, идти вперед и войдите в систему как пользователь root, используя следующую команду (замените выделенное слово на IP адрес вашего сервера):

ssh root@SERVER_IP_ADDRESS

 

Завершив процесс входа в систему, приняв предупреждение о подлинности хоста, если он появится, то предоставление корневой аутентификации (пароль или ключ). Если вход ваш первый раз на сервер, с помощью пароля, вам также будет предложено изменить пароль.

О root

Привилегированный пользователь является пользователь с правами администратора в среде Linux, который имеет очень широкие привилегии. Из-за возросшей привилегий корневой учетной записи, вам на самом деле не рекомендуется использовать его на регулярной основе. Это происходит потому, что часть привилегии, присущей корневой учетной записи является возможность сделать очень деструктивные изменения, даже случайно.

Следующим шагом является создание альтернативной учетной записи пользователя с уменьшенными привилегиями для повседневной работы. Мы научим вас, как получить повышенные привилегии, когда вы нуждаетесь в них.

Шаг второй – создание нового пользователя

После того, как вы вошли в систему с помощью root, мы готовы, чтобы добавить новую учетную запись пользователя, которую мы будем использовать , чтобы войти с этого момента.

В этом примере создается новый пользователь с именем “demo”, но вы должны заменить его на имя пользователя, который вам нравится:

adduser demo

 

Вам будет предложено несколько вопросов, начиная с пароля учетной записи.

Введите надежный пароль и, при необходимости, заполните дополнительную информацию, если вы хотите. Это не требуется, и вы можете просто нажать “ENTER” в любой области, которую вы хотите пропустить.

Шаг третий – суперпользователь

Теперь мы имеем новую учетную запись пользователя с регулярными привилегиями учетной записи. Тем не менее, мы можем иногда выполнять административные задачи.

Чтобы избежать необходимости выйти из нашего обычного пользователя и снова войти в систему в качестве корневой учетной записи, мы можем установить пользователя, известного как “супер – пользователь” или корневые привилегии для нашей обычной учетной записи. Это позволит нашему обычному пользователю выполнять команды с правами администратора, поставив слово sudo перед каждой командой.

Установка Sudo

Debian 8 не поставляется с установленным sudo, так что давайте установить его с помощью apt-get.

Во-первых, обновим индекс пакетов:

apt-get update

 

Затем используйте эту команду, чтобы установить sudo:

apt-get install sudo

 

Теперь вы можете использовать команды sudo и visudo.

О SUDO привилегиях

Чтобы добавить эти привилегии к нашему новому пользователю, нам нужно добавить нового пользователя в группу «sudo». По умолчанию в Debian 8, пользователи, принадлежащие к группе “sudo” разрешено использовать команду sudo.

Как root, запустите эту команду, чтобы добавить нового пользователя к группе sudo  (замените выделенное слово новым пользователем):

usermod -a -G sudo demo

 

Теперь ваш пользователь может запускать команды с пользовательскими привилегиями!

Шаг четвертый – добавить ключ аутентификации Public (рекомендуется)

Следующим шагом в обеспечении безопасности вашего сервера, это настроить проверку подлинность открытого ключа для нового пользователя. Установка этой программы позволит повысить безопасность вашего сервера, требуя секретный ключ SSH для входа в систему.

Генерация пары ключей

Если у вас еще нет пары ключей SSH, который состоит из открытого и секретного ключа, необходимо сгенерировать. Если у вас уже есть ключ, который вы хотите использовать, перейдите к шагу скопировать открытый ключ.

Для создания новой пары ключей, введите следующую команду в терминале вашей локальной машине (то есть вашего компьютера):

ssh-keygen

 

Предположим, что ваш локальный пользователь называется “localuser”, вы увидите вывод, который выглядит следующим образом:

ssh-keygen output

Generating public/private rsa key pair. Enter file in which to save the key (/Users/localuser/.ssh/id_rsa):

Вернуться, принять это имя файла и путь к нему (или введите новое имя).

Далее, вам будет предложено ввести ключевую фразу, чтобы обеспечить ключ. Вы можете либо ввести ключевую фразу или оставьте пустым парольную фразу.

Примечание

Если оставить ключевую фразу пустым, вы будете иметь возможность использовать секретный ключ для аутентификации без ввода пароля. Если ввести ключевую фразу, вам потребуется как закрытый ключ и ключевая фраза, чтобы войти. Защита ключей с фразами является более безопасным, но оба метода имеют свое применение и более безопасны, чем базовая аутентификация пароля.

Это создает закрытый ключ id_rsa и открытый ключ, id_rsa.pub, в .ssh домашней директории localuser’s. Помните, что закрытый ключ не должен использоваться совместно с кем – либо, кто не должен иметь доступ к серверам!

Скопируйте открытый ключ

После генерации пары ключей SSH, вы хотите скопировать свой открытый ключ на новый сервер. Мы рассмотрим два простых способа сделать это.

Вариант 1: Использование ssh-copy-id

Если ваша локальная машина имеет установленный скрипт ssh-copy-id, вы можете использовать его, чтобы установить свой открытый ключ любому пользователю, который вы получили в учетных данных для входа.

Запустите скрипт ssh-copy-id, указав пользователя и IP – адрес сервера, на который вы хотите установить ключ, так:

ssh-copy-id demo@SERVER_IP_ADDRESS

 

После предоставления пароля в командной строке, ваш открытый ключ будет добавлен к файлу удаленного пользователя .ssh/authorized_keys. Соответствующий секретный ключ теперь может быть использован для входа на сервер.

Вариант 2: Вручную установить ключ

Предполагая, что вы сгенерировали пару ключей SSH, используя предыдущий шаг, используйте следующую команду в терминале вашей локальной машине , чтобы напечатать ваш открытый ключ ( id_rsa.pub):

cat ~/.ssh/id_rsa.pub

 

Это должно напечатать ваш публичный ключ SSH, который должен выглядеть следующим образом:

id_rsa.pub contents ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBGTO0tsVejssuaYR5R3Y/i73SppJAhme1dH7W2c47d4gOqB4izP0+fRLfvbz/tnXFz4iOP/H6eCV05hqUhF+KYRxt9Y8tVMrpDZR2l75o6+xSbUOMu6xN+uVF0T9XzKcxmzTmnV7Na5up3QM3DoSRYX/EP3utr2+zAqpJIfKPLdA74w7g56oYWI9blpnpzxkEd3edVJOivUkpZ4JoenWManvIaSdMTJXMy3MtlQhva+j9CgguyVbUkdzK9KKEuah+pFZvaugtebsU+bllPTB0nlXGIJk98Ie9ZtxuY3nCKneB+KjKiXrAvXUPCI9mWkYS/1rggpFmu3HbXBnWSUdf [email protected]

 

Выберите открытый ключ, и скопируйте его в буфер обмена.

Добавить открытый ключ для новых удаленных пользователей

Для того, чтобы разрешить использование ключа SSH для аутентификации в качестве нового удаленного пользователя, вы должны добавить открытый ключ в специальный файл в домашнем каталоге пользователя.

На сервере , как root, введите следующую команду, чтобы перейти к новому пользователю (заменить собственное имя пользователя):

su - demo

 

Теперь вы будете в домашнем каталоге вашего нового пользователя.

Создайте новую папку с именем .ssh и ограничьте права доступа со следующими командами:

mkdir .ssh chmod 700 .ssh

 

Теперь откройте файл .ssh под названием authorized_keys с помощью текстового редактора. Мы будем использовать nano для редактирования файла:

nano .ssh/authorized_keys

 

Теперь вставьте свой открытый ключ (который должен быть в вашем буфере обмена), вставив его в редактор.

Нажмите , CTRL-X чтобы выйти из файла, а затем Y чтобы сохранить изменения, которые вы сделали, и , ENTER чтобы подтвердить имя файла.

Теперь ограничить права доступа к файлу authorized_keys с помощью следующей команды:

chmod 600 .ssh/authorized_keys

 

Введите эту команду один раз, чтобы вернуться к пользователю root:

exit

 

Теперь вы можете войти через SSH в качестве нового пользователя, с помощью закрытого ключа в качестве проверки подлинности.

Шаг пятый – Настройка SSH

Теперь, когда у нас есть наш новый аккаунт, мы можем обеспечить наш сервер немного изменяя его конфигурацию SSH – демоном (программа, которая позволяет нам войти в систему удаленно) , чтобы запретить удаленный доступ по SSH к корневой учетной записи.

Начните с открытия файла конфигурации с помощью текстового редактора в качестве root:

nano /etc/ssh/sshd_config

 

Здесь мы имеем возможность отключить корневой вход через SSH. Это, как правило, более безопасный параметр, так как теперь мы можем получить доступ к нашему серверу через нашей обычной учетной записи пользователя и повышения привилегий при необходимости.

Чтобы отключить удаленный корневой логин, нам нужно найти строку, которая выглядит следующим образом:

/etc/ssh/sshd_config (до)

#PermitRootLogin yes

Вы можете изменить эту строку на “no”, если вы хотите отключить корневой логин:

/etc/ssh/sshd_config (после)

PermitRootLogin no

Отключение удаленного корневого входа настоятельно рекомендуется на каждом сервере!

Когда вы закончите внесения изменений, сохраните и закройте файл, используя метод, который мы использовали ранее ( CTRL-X, а затем Y, потом ENTER).

Перезагрузить SSH

Теперь, когда мы сделали наши изменения, нам необходимо перезапустить службу SSH, так что он будет использовать нашу новую конфигурацию.

Введите эту функцию, чтобы перезапустить SSH:

systemctl restart ssh

 

Теперь, прежде чем выйти из системы сервера, мы должны проверить нашу новую конфигурацию. Мы же не хотим, отключиться , не подтвердив, что новые соединения могут быть успешно установлены.

Открыть новое окно терминала. В новом окне, мы должны начать новое соединение с нашим сервером. На этот раз, вместо того чтобы использовать корневую учетную запись, мы хотим использовать новую учетную запись, которую мы создали.

ssh demo@SERVER_IP_ADDRESS

 

Вам будет предложено ввести пароль нового пользователя, который был настроен. После этого вы войдете в систему в качестве нового пользователя.

Помните, что если вам нужно выполнить команду с привилегиями суперпользователя, введите “sudo” перед ним, как в примере:

sudo command_to_run

 

Если все хорошо, вы можете выйти из ваших сессий, набрав:

exit

 

На данный момент, у вас есть прочный фундамент для вашего сервера Debian 8. Вы можете установить любое из программного обеспечения, которое вам нужно на сервере в настоящее время.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Просмотров: 186

Если статья понравилась, то поделитесь ей в социальных сетях:

andreyex.ru

Первоначальная настройка Debian 7 после установки

Первоначальная настройка Debian 7 после установки

Первоначальная настройка Debian 7 после установки

Первоначальная настройка Debian 7 после установки

Добрый день сегодня хочется затронуть тему о первоначальной настройке Debian 7 после установки. Ранее я описывал процесс установки Debian 7 можете почитать тут. Сам процесс первоначальной настройки я считаю довольно универсальным для большинства людей, итак начнем.

Для начала установим ssh для удаленного доступа:

apt-get install openssh-server

после этого установим пакет sudo:

sudo apt-get install sudo

Добавим не рутового пользователя в sudo:

и в открывшемся файле найдем строчку:

и под ней впишем строчку

Имя_нашего_пользователя ALL=(ALL) ALL

Сохранимся и перезайдем от нашего пользователя. Теперь настроим сеть на сервере для этого отредактируем файл /etc/network/interfaces

где xxx.xxx.xxx.xxx.xxx – это ваши настройки сетиТеперь нам надо запретить удаленный вход root‘а через sshдля этого мы откроем /etc/ssh/sshd_configи найдя там строчку:

А теперь пришло время изменить репозитории apt, а точнее убрать из них CD-ROM, чтобы не мешался для этого редактируем: /etc/apt/sources.list и закомментируем в нем строчки начинающиеся с

А если нет ни одного репозитория в списке то тогда еще и добавить строчку:

Теперь сделаем последние штрихи в первичном конфигурировании сервера. Установим screen

pyatilistnik.org

Установка Linux Debian 8.0 Jessie – пошаговая инструкция для новичков | Info-Comp.ru

Данный материал посвящен начинающим пользователям операционной системы Linux, в котором мы подробно и пошагово рассмотрим установку дистрибутива Linux Debian 8.0 Jessie в графическом режиме со средой рабочего стола Cinnamon, как обычно все будет сопровождаться скришотами для более лучшего понимания и усвоения.

Предыдущую версию Debian 7.7 (потом обновили до Debian 7.8) мы устанавливали с графической оболочкой GNOME, а сейчас для разнообразия мы будем устанавливать Debian 8.0 со средой рабочего стола Cinnamon, также во время установки можно выбрать и графическое окружение GNOME, KDE, MATE, LXDE и Xfce.

Что нового появилось в версии Debian 8.0 Jessie, мы с Вами обсуждали вот здесь.

Где скачать Debian 8.0?

Если вы еще не скачали дистрибутив Debian 8.0, то его можно скачать естественно со страницы загрузки официального сайта вот она.

Я предпочитаю скачивать через торрент, для примера 32-битную версию на DVD, поэтому перехожу по ссылки «торренты для 32-битного ПК (DVD)»

Затем выбираю торрент файл debian-8.0.0-i386-DVD-1.iso.torrent (DVD диска под номером один достаточно для обычной, нормальной установки)

Далее скачиваем образ DVD диска любым торрент-клиентом.

Установка Linux Debian 8.0

Всем тем, кто впервые устанавливает операционную систему Debian, могу сказать, что установка в графическом режиме очень простая, пусть она длится немного дольше, чем установка других дистрибутивов Linux (например, для установки Linux Deepin необходимо сделать всего 3 шага) но с ней справится даже начинающий пользователь Linux.

Шаг 1

На первом шаге выбираем «Graphical Install»

Шаг 2

Здесь выбираем язык (в нашем случае Русский), жмем «Continue», после этого вся установка будет на Русском языке

Шаг 3

Далее указываем свое местоположение, жмем «Продолжить»

Шаг 4

Затем выбираем раскладку клавиатуры, по умолчанию она уже правильная, т.е. Русская, жмем «Продолжить»

Шаг 5

На этом шаге необходимо указать способ переключения клавиатуры, т.е. назначить сочетание клавиш, по умолчанию это Alt+Shift, меня это устраивает, жму «Продолжить»

Шаг 6

Далее вводим имя компьютера, для примера я назвал testcomp, жмем «Продолжить»

Шаг 7

Потом вводим имя домена, если Вы устанавливаете Debian для домашнего использования, то можете ввести практически все что угодно, я например, ввожу test, жму «Продолжить»

Шаг 8

Здесь необходимо придумать и ввести пароль для суперпользователя (root) и нажать «Продолжить»

Шаг 9

Далее вводим свое имя

Шаг 10

Потом имя учетной записи, для примера я ввел user

Шаг 11

Пароль для пользователя также необходимо придумать и ввести

Шаг 12

Далее указываем часовой пояс

Шаг 13

На этом шаге необходимо указать метод разметки диска, так как мы начинающие будем использовать самый простой метод, т.е. «Авто – использовать весь диск», жмем «Продолжить»

Шаг 14

Выбираем диск и жмем «Продолжить»

Шаг 15

Так как мы новички, поэтому на этом шаге следуем рекомендациям, т.е. выбираем первую схему и жмем «Продолжить»

Шаг 16

Выбираем «Закончить разметку и записать изменения на диск» и жмем «Продолжить»

Шаг 17

Соглашаемся с внесением изменений на диск, выбираем «Да» и жмем «Продолжить»

Начнется установка базовой системы

Шаг 18

Далее нам предлагают просканировать дополнительные диски для менеджера пакетов, нам этого не нужно, поэтому выбираем «Нет» и жмем «Продолжить»

Шаг 19

Затем нам также предлагают использовать зеркало пакетов из сети, а вот в этом случае выбираем «Да» (если конечно у Вас хороший Интернет), так как в сетевом архиве больше программного обеспечения, да и новее. Тем более в файл источника обновлений (sources.list) автоматом добавится выбранное нами (в следующих шагах) зеркало, другими словами, если когда-нибудь мы заходим что-то обновить или установить, у нас уже будет все настроено для получения актуальных версий приложений и обновлений. Жмем «Продолжить»

Шаг 20

Далее выбираем страну, в которой расположено ближайшее к нам зеркало архива Debian и жмем «Продолжить»

Шаг 21

После чего нам покажут список зеркал, я предлагаю выбрать «ftp.ru.debian.org», жмем «Продолжить»

Шаг 22

Если Вы используете доступ к Интернету через прокси, то здесь необходимо указать соответствующие настройки (на картинке есть комментарии как это необходимо сделать), я не использую прокси, поэтому ничего не указываю, а просто сразу жму «Продолжить»

Начнется просмотр зеркала архива в сети

Шаг 23

Здесь нам предлагают поучаствовать в опросе популярности пакетов, я не хочу, поэтому выбираю «Нет» и жму «Продолжить»

Шаг 24

Пришло время выбрать графическое окружение, как и договорились, выбираем Cinnamon и жмем «Продолжить»

Шаг 25

Так как у меня на этом компьютере нет других операционных систем, я выбираю «Да» и жму «Продолжить»

Шаг 26

Далее выбираем устройство для установки загрузчика, в нашем случае выбираем жесткий диск, жмем «Продолжить»

Шаг 27

И вот, наконец, установка завершена, нам осталось перезагрузиться, жмем «Продолжить»

После перезагрузки вводим имя пользователя и пароль и жмем «Войти»

Все, можем любоваться средой рабочего стола Cinnamon

На этом все, удачи!

Похожие статьи:

info-comp.ru