Differences between revisions 50 and 51
Revision 50 as of 2011-08-05 07:31:48
Size: 40958
Editor: ?zorg
Comment: Добавил apf-firewall, сделал уточнения
Revision 51 as of 2011-08-23 12:16:32
Size: 45104
Editor: ?zorg
Comment: добавил аутентификацию по ключам
Deletions are marked like this. Additions are marked like this.
Line 448: Line 448:
------
=== Авторизация по ключам ===
------
==== Генерация ключей ====
------
Выбираем пользователя на сервере под которым будем логиниться в ssh. Например это будет "user". Входим с его правами в консоль.
Далее генерируем ключи, при желании указываем пароль на создаваемый ключ.
{{{
ssh-keygen -t rsa -b 2048 -C "комментрий к ключу" -f /user/.ssh/newserver.key
}}}
В итоге получаем в "/user/.ssh/" два файла "newserver.key" и "newserver.key.pub"
------
==== Настройка сервера ====
------
Перемещаем открытый ключ в список разрешённых ключей
{{{
mv /user/.ssh/newserver.key.pub /user/.ssh/authorized_keys
}}}
Правим конфигурацию сервера
{{{
nano /etc/ssh/sshd_config

# Разрешаем авторизацию по парам ключей
PubkeyAuthentication yes
# Путь к списку отпечатков открытых ключей
AuthorizedKeysFile %h/.ssh/authorized_keys
}}}
Перезапускаем сервер
{{{
/etc/init.d/ssh restart
}}}
------
==== Настройка клиента ====
------
Выбираем пользователя на клиенте под которым будем логиниться в ssh. Например это будет "user". Логинимся по юзером.
Любым удобным способом копируем сгенерированный ранее файл newserver.key в папку /home/user/.ssh. Если хочется, чтобы ssh клиент подхватывал ключ автоматически, сохраняем ключ с новыми именем "id_dsa"

Выставляем права доступа, иначе ssh клиент проигнорирует ключ.
{{{
cd /home/user
chmod 700 ./.ssh
chmod 600 ./.ssh/newserver.key
}}}

Запускаем ssh клиента.
{{{
ssh -i /home/user/.ssh/newserver.key user@192.168.0.1
}}}

Всё должно работать.
------
==== Настройка Putty ====
------
К сожалению, Putty не понимает ключи в формате OpenSSH.
[[http://tartarus.org/~simon/putty-snapshots/x86/puttygen.exe|Поэтому загружаем latest development snapshot Puttygen]]. Обычный Puttygen нам не подойдёт.

Скармливаем проге наш newserver.key (Conversions --> Import key), если нужно вводим пароль для доступа ключу. Получаем окно
||<tablestyle="width: 50%; text-align: center; border: 0px hidden"> {{attachment:ssh1.JPG}}||
Если надо меняем комментарий и пароль доступа к ключу.
В разделе "Parameters" рекомендую выбрать SSH-2 RSA и 2048 bits.
Далее жмём "Save private key" и получаем ключ в формате ppk, пригодный для скармливания обычному [[http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe|Putty]] в разделе Сonnection --> SSH --> Auth
------
=== Усиленные настройки безопасности ===
------
Рекомендую следующие настройки
{{{
nano /etc/ssh/sshd_config

#Запрещаем вход под root
PermitRootLogin no
# Меняем порт по умолчанию - может помочь против поверхностного сканирования портов
Port 17854
# Указываем на каком IP слушать порт
ListenAddress 192.168.0.1
# Запрещаем вход по паролям, усложняет брутфорс
PasswordAuthentication no
# Запрещаем пустые пароли
PermitEmptyPasswords no
}}}
------
=== Параноидальные настройки безопасности (knock) ===

http://www.debian.org/logos/openlogo-nd-50.png http://www.debian.org/Pics/debian.png

Подготовка свежеустановленной системы Debian к использованию

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

Страница находится в активной разработке


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


Contents

  1. Подготовка свежеустановленной системы Debian к использованию
  2. Настройка менеджера пакетов aptitude
  3. Настройка сети
    1. Универсальная базовая настройка
    2. Настройка в псевдографическом интерфейсе wicd-curses
  4. Firewall (брандмауэр, межсетевой экран и т.п.)
    1. Общие сведения
    2. Apf-firewall
    3. Vuurmuur (пока только для i386)
  5. Локализация
    1. Глобальные параметры локализации системы
    2. Поддержка кириллицы в консоли
    3. Удаление неиспользуемых файлов локализации
  6. Служебные программы
    1. Файловый менеджер Midnight Commander
    2. Утилита-мультиплексор Screen
    3. Просмотр процессов Htop
    4. Утилита для просмотра текста в консоли Less
    5. Набор утилит для диагностики DNS
    6. Утилита для просмотра загрузки сети nethogs
    7. Утилиты для определения оборудования hwinfo и lshw
  7. Службы, демоны и сервисы
    1. Управление запуском служб
    2. Служба удаленного доступа ssh
      1. Авторизация по ключам
      2. Усиленные настройки безопасности
      3. Параноидальные настройки безопасности (knock)
    3. Служба обновления микрокода процессоров Intel
    4. Служба управления скоростью вращения вентиляторов fancontrol
    5. Служба обновления системного времени NTP server
    6. Служба загрузки torrent Transmission
    7. Служба доступа к файлам и принтерам SMB (CIFS)
      1. Служба Web интерфейса для администрирования Samba
    8. Служба обновления имени домена для динамических IP адресов ddclient
  8. Сглаживание шрифтов
  9. Примечания
    1. Примечание 1 (настройка aptitude)
    2. Примечание 2 (ошибка запуска сети)
    3. Примечание 3 (настройка мс)
    4. Примечание 4 (ошибка pcspkr)
    5. Примечание 5 (setfacl неподдерживаемая операция)
    6. Примечание 6 (определение датчиков)


Настройка менеджера пакетов aptitude


aptitude - локализованный менеджер пакетов с псевдографическим интерфейсом, который используется для наглядной и функциональной установки программ в Debian.

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

Запускем программу и настраиваем её параметры.

# aptitude --> F10 --> Параметры --> Предпочтения

См. примечание 1.


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


Универсальная базовая настройка


Этот метод настройки является самым гибким и функциональным, но требует ручной правки конфигурационных файлов.

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

Ищем нашу сетевую карту в списке:

# ifconfig -a

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

Открываем файл конфигурации сети:

# nano /etc/network/interfaces

Строки, начинающиеся со слова "auto", используются для идентификации физических интерфейсов при их подьеме во время запуска ifup с опцией -a. (Эта опция используется сценариями загрузки системы.) Имена физических интерфейсов должны следовать за словом "auto" в той же строке. Может быть несколько строф "auto". ifup поднимет названные интерфейсы в порядке их перечисления.

Строки, начинающиеся с "allow-", используются для идентификации интерфейсов, которые должны быть подняты автоматически различными подсистемами. Это может быть сделано, например, с использованием команды "ifup --allow=hotplug eth0 eth1", которая будет поднимать только eth0 или eth1, если они перечислены в строке "allow-hotplug". Учтите, что "allow-auto" и "auto" - синонимы.

Если настройки статические, тогда, к примеру, заполняем так:

auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet static
           address 192.168.1.94
           network 192.168.1.0
           netmask 255.255.255.0
           broadcast 192.168.1.255
           gateway 192.168.1.1

Если настройки сети раздаются через DHCP, тогда, к примеру, заполняем по-другому:

auto eth0
allow-hotplug eth0
iface eth0 inet dhcp 

Если необходимо использовать одновременно несколько IP адресов на одной сетевой карте, тогда, к примеру, добавляем строки:

auto eth0:1
iface eth0:1 inet static
           address 192.168.0.94
           network 192.168.0.0
           netmask 255.255.255.0
           broadcast 192.168.0.255

Для настройки DNS нужно редактировать файл /etc/resolv.conf

Статичный DNS, например:

nameserver 10.30.1.11 212.45.2.5
search gspk
domain bober.gspk

Динамический DNS по DHCP вносится в /etc/resolv.conf автоматически.


Настройка в псевдографическом интерфейсе wicd-curses


wicd - cлужба управления проводными и беспроводными сетями для Linux с Qt, GTK+ и curses интерфейсами. Эта служба наиболее удобна, если часто возникает необходимость в быстром подключении к различным сетям.

После первого запуска wicd автоматические переключает все настройки сети на DHCP.

Для управления службой в консоли необходим curses клиент wicd-curses.

# aptitude install wicd-curses

Запускам настройку:

# wicd-curses

Для применения настроек необходимо нажать "Shift+C"


Firewall (брандмауэр, межсетевой экран и т.п.)


Общие сведения


Межсетевой экран - средство контроля и фильтрации сетевых соединений. В защищенной домашней или корпоративной сети установка firewall не актуальна и может принести больше вреда чем пользы. В случае если Ваш компьютер подключен к Интернет, то использование сетевого экрана просто обязательно. В Debian эта задача решается с помощью утилиты Iptables. Эту утилиту можно использовать в "чистом" виде путём ручного ввода команд в консоли, или запускать команды в самописном скипте, либо с помощью различных надстроек, облегчающих формирование сложных команд iptables. В зависимости от поставленной задачи каждый из способов имеет свои достоинства и преимущества.


Apf-firewall


Простой аскетичный аpf-firewall для быстрой защиты сервера без самописных скриптов.

Устанавливаем.

aptitude install аpf-firewall

Правим файл конфигурации

nano /etc/apf-firewall/conf.apf 

# чтобы через 5 минут фаерволл не перестал работать
DEVEL_MODE="0"

# Указываем что у нас монолитное ядро 
SET_MONOKERN="1" 

Сетевая которую будем защищать
IFACE_IN="eth0" 
IFACE_OUT="eth0"

# Это Открываем входящие TCP порты
IG_TCP_CPORTS="22"

# Это Открываем входящие UDP порты 
IG_UDP_CPORTS=""

# Отключаем фильтрацию на исходящих портах
EGF="0"

# Открываем исходящие TCP порты, если EGF="1"
EG_TCP_CPORTS="21,25,80,443,43"

# Открываем исходящие UDP порты, если EGF="1"
EG_UDP_CPORTS="20,21,53" 

Разрешаем запуск

nano /etc/default/apf-firewall 

RUN="yes"

Запускаем firewall

/etc/init.d/apf-firewall start


Vuurmuur (пока только для i386)


Vuurmuur - мощная свободная надстройка к iptables с curses интерфейсом. Псевдографический интерфейс значительно упрощает оперативную работу с сетевым экраном. К сожалению разработка программы заморожена уже более двух лет. Раньше она присутствовала в официальных репозиториях Debian, но была заброшена сопровождающим, что привело к её удалению. Программа полностью документирована и переведена на русский, но к сожалению пока что имеет проблемы отображения русского интерфейса конфигуратора с системной кодировкой UTF8. К сожалению, в официальных репозиториях аналогов найдено не было.

Подключаем "родной" источник установки

echo "deb ftp://ftp.vuurmuur.org/debian/ squeeze main" >> /etc/apt/sources.list

Обновляем список пакетов

aptitude update

Устанавливаем Vuurmuur и утилиту просмотра сетевых соединений conntrack

aptitude install vuurmuur conntrack -r

Разрешаем автозапуск

nano /etc/default/vuurmuur

VUURMUUR_START=1

Запускаем службу

/etc/init.d/vuurmuur start

Запускаем конфигуратор

LANG=en vuurmuur_conf

vur 1.JPG

1. Настраиваем пути к служебным утилитам Vuurmuur Config --> General

vur 2.JPG

2. Настраиваем interfaces, т.е. указываем с какими сетевыми картами будем работать.

Будьте внимательны - опция Active в настройках должна быть Yes, иначе Vuurmuur будет их игнорировать.

vur 3.JPG

3. Смотрим Services, если нет нужных добавляем свои. Я добавил входящий порт для Web морды SWAT.

vur 4.JPG

4. Настраиваем Zones, т.е. делим и\или объединяем наши сети в "зонах" на "свои" и "чужие". Каждая "зона" может содержать несколько сетей, хостов (т.е. компьютеров в сети) и групп хостов. Я создал две.

vur 5.JPG

5. В каждую из "зон" я добавил по одной соответствующей ей сети: интернет

vur 6.JPG

  • и локальную:

vur 7.JPG

6. В "домашнюю зону" я добавил хост, т.к. для него будут отдельные правила доступа.

vur 8.JPG

7. Настраиваем "rules", т.е. правила доступа в сети. Ниже переброс портов на комп локальной сети временно отключен.

vur 9.JPG

vur 10.JPG

Настройки применяем в главном меню нажав F11.

Решение проблем.

  • Все попытики соединений можно отследить в логах Logview --> Traffic.log.

  • Пробуйте работу с выключенным Vuurmuur.
  • Для проверки портов из интернет можно использовать ping.eu.
  • К уже настроенным Services в Vuurmuur нужно быть внимательным, т.к. они могут быть настроены с более узкими диапазонами портов (rdp, например).
  • Дополнительные возможности хорошо описаны на русском в /usr/share/doc/vuurmuur
  • Проверье опцию Асtive (нужно Yes)
  • Проверьте включено ли правило (нужно [х])
  • Подумайте как бы выглядело бы правило в самописном скрипте.
  • Гугл в помощь.


Локализация


Глобальные параметры локализации системы


Смотрим текущую локаль:

$ locale

Кроме LC_ALL все параметры должны быть ru_RU.UTF-8.

Если это не так, тогда запускаем настройку

# dpkg-reconfigure locales

Если системная локаль не применяется к пользователю, то стоит посмотреть файл настроек интерпретатора командной строки (bash, dash, ash) в домашнем каталоге пользователя.


Поддержка кириллицы в консоли


См. примечания 2

Настраиваем кириллицу в консоли

Устанавливаем пакет console-cyrillic:

# aptitude install console-cyrillic

Настраиваем все параметры пакета:

# dpkg-reconfigure console-cyrillic


Удаление неиспользуемых файлов локализации


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

# aptitude install localepurge

Удаление происходит при запуске утилиты:

## localepurge
localepurge: Disk space freed in /usr/share/locale: 345340 KiB
localepurge: Disk space freed in /usr/share/man: 2060 KiB
localepurge: Disk space freed in /usr/share/gnome/help: 65770 KiB
localepurge: Disk space freed in /usr/share/omf: 435 KiB

Total disk space freed by localepurge: 413605 KiB

Если вдруг понадобились удаленные языковые файлы, вернуть их можно так:

apt-get --reinstall install $(dpkg -S LC_MESSAGES | cut -d: -f1 | tr ', ' '
' | sort -u)


Служебные программы


Файловый менеджер Midnight Commander


Устанавливаем mc: - один из лучших инструментов для быстрой навигации по файловой системе компьютера в консоли:

# aptitude install mc

См. примечание 3


Утилита-мультиплексор Screen


Устанавливаем screen: - утилиту-мультиплексор, предоставляющую пользователю доступ к нескольким сессиям в рамках одной сессии.:

# aptitude install screen

Редактируем настройки утилиты в файле /etc/screenrc

# Отключаем приветствие
startup_message off
# Производить отключение сессии при разрыве связи с терминалом
autodetach on
# Волшебная строка
shelltitle '$ |sh'
# Включаем строку состояния
hardstatus on
# Параметры строки состояния
hardstatus alwayslastline "%{+b wk} %c $LOGNAME@%H %=[ %w ] "


Просмотр процессов Htop


Устанавливаем htop: - "Диспетчер задач" для нашей системы

# aptitude install htop


Утилита для просмотра текста в консоли Less


Устанавливаем less: - позволяет прокручивать текст на экране вверх\вниз

# aptitude install less

Пример использования

# ifconfig -a | less
     Клавиши ↑ и ↓ позволят прокручивать текст
     Для выхода нужно нажать Esc


Набор утилит для диагностики DNS


Устанавливаем dnsutils: - получаем утилиту nslookup, позволяющую быстро диагностировать проблемы преобрзования доменных имен в IP адреса.

# aptitude install dnsutils

Пример использования: получаем IP адрес сервера lenta.ru. Если dns не работает, либо настроен неправильно, тогда получить такую информацию не удастся

root@tt400:~# nslookup lenta.ru
Server:         10.30.1.11
Address:        10.30.1.11#53

Non-authoritative answer:
Name:   lenta.ru
Address: 81.19.85.116


Утилита для просмотра загрузки сети nethogs


Устанавливаем nethogs: - получаем утилиту наглядно отображающую какой процесс насколько сильно и какую нагружает сетевую карту.

# aptitude install nethogs

nethogs1.JPG


Утилиты для определения оборудования hwinfo и lshw


Устанавливаем hwinfo: и lshw: - позволяют выборочно просматривать свойства программных и аппаратных компонентов компьютера

Достоинства и недостатки: hwinfo выводит более подробную информацию, чем lshw, но устанавливает дополнительные библиотеки и постоянно работающую службу dbus.

# aptitude install hwinfo lshw

Эти программы по умолчанию выводят всю собранную информацию, что сильно затрудняет поиск нужных сведений. Поэтому lshw полезно запускать с флагом -C и указанием раздела (display, network и т.д.). В этом случае программа покажет сведения только об указанном разделе. Аналогично осуществляется выборка и в hwinfo

Сначала получаем списки доступных разделов сведений о компьютере

# hwinfo --h
# lshw | less

Пример выбора раздела в hwinfo - просмотр сведений о видеокарте:

# hwinfo --gfxcard

Пример выбора раздела в lshw - просмотр сведений о сетевых соединениях:

# lshw -c network

Эта команда отобразит всю доступную информацию о ваших сетевых устройствах (проводных и беспроводных): от возможностей до драйверов и так далее. Важнее всего проверить, не отключено ли устройство и указан ли драйвер. Драйвер должен появиться в последней строке секции об этом устройстве и обозначен как «driver=имя_драйвера»


Службы, демоны и сервисы


Управление запуском служб


sysv-rc-conf: - утилита с curses интерфейсом, преназначенная для быстрого управления работой и запуском служб (демонов, сервисов). Очень удобна для просмотра установленных служб в системе.

# aptitude install sysv-rc-conf

Помимо настройки автозапуска, утилита позволяет в реальном времени запускать и останавливать имеющиеся в системе службы.


Служба удаленного доступа ssh


Устанавливаем ssh: - комплекс программ, позволяющих соединяться с удалёнными машинами по защищённому каналу и выполнять команды в консоли:

# aptitude install ssh

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


Авторизация по ключам


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


Выбираем пользователя на сервере под которым будем логиниться в ssh. Например это будет "user". Входим с его правами в консоль. Далее генерируем ключи, при желании указываем пароль на создаваемый ключ.

ssh-keygen -t rsa -b 2048 -C "комментрий к ключу" -f /user/.ssh/newserver.key

В итоге получаем в "/user/.ssh/" два файла "newserver.key" и "newserver.key.pub"


Настройка сервера


Перемещаем открытый ключ в список разрешённых ключей

mv /user/.ssh/newserver.key.pub /user/.ssh/authorized_keys

Правим конфигурацию сервера

nano /etc/ssh/sshd_config

# Разрешаем авторизацию по парам ключей
PubkeyAuthentication yes
# Путь к списку отпечатков открытых ключей
AuthorizedKeysFile      %h/.ssh/authorized_keys

Перезапускаем сервер

/etc/init.d/ssh restart


Настройка клиента


Выбираем пользователя на клиенте под которым будем логиниться в ssh. Например это будет "user". Логинимся по юзером. Любым удобным способом копируем сгенерированный ранее файл newserver.key в папку /home/user/.ssh. Если хочется, чтобы ssh клиент подхватывал ключ автоматически, сохраняем ключ с новыми именем "id_dsa"

Выставляем права доступа, иначе ssh клиент проигнорирует ключ.

cd /home/user
chmod 700 ./.ssh
chmod 600 ./.ssh/newserver.key

Запускаем ssh клиента.

ssh -i /home/user/.ssh/newserver.key user@192.168.0.1

Всё должно работать.


Настройка Putty


К сожалению, Putty не понимает ключи в формате OpenSSH. Поэтому загружаем latest development snapshot Puttygen. Обычный Puttygen нам не подойдёт.

Скармливаем проге наш newserver.key (Conversions --> Import key), если нужно вводим пароль для доступа ключу. Получаем окно

ssh1.JPG

Если надо меняем комментарий и пароль доступа к ключу. В разделе "Parameters" рекомендую выбрать SSH-2 RSA и 2048 bits. Далее жмём "Save private key" и получаем ключ в формате ppk, пригодный для скармливания обычному Putty в разделе Сonnection --> SSH --> Auth


Усиленные настройки безопасности


Рекомендую следующие настройки

nano /etc/ssh/sshd_config

#Запрещаем вход под root
PermitRootLogin no
# Меняем порт по умолчанию - может помочь против поверхностного сканирования портов
Port 17854
# Указываем на каком IP слушать порт
ListenAddress 192.168.0.1
# Запрещаем вход по паролям, усложняет брутфорс
PasswordAuthentication no
# Запрещаем пустые пароли
PermitEmptyPasswords no


Параноидальные настройки безопасности (knock)


Служба обновления микрокода процессоров Intel


Устанавливаем intel-microcode: - комплекс программ, позволяющих загрузить c cайта Intel обновлённый микрокод для Вашего Intel процессора и обновить его в процессоре сразу после включения компьютера. Обновлённый микрокод исправляет ошибки и оптимизирует работу процессоров Intel, что наиболее актуально для современных процессоров.

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

# aptitude install intel-microcode

Автоматически происходит только обновление микрокода в процессоре, загружать новый микрокод с сайта Intel нужно вручную:

# /usr/sbin/update-intel-microcode  


Служба управления скоростью вращения вентиляторов fancontrol


Устанавливаем fancontrol: - службу, которая в зависимости от температуры оборудования устанавливает необходимую скорость работы вентилятора. На многих современных компьютерах и даже на не очень современных ноутбуках эта служба уже реализована средствами BIOS, и устанавливать fancontrol просто не необходимости.

Устанавливаем службу:

# aptitude install lm-sensors -r 

Определяем датчики

# sensors-detect  

Чтобы не перезагружать компьютер заново загружаем модули

/etc/init.d/module-init-tools

См. примечание 4

Смотрим показания датчиков

sensors

В случае, если утилита вместо понятных "CPU Temp", "CPU fan", "System fan" отображает обезличенные "in0", "temp2", "fan4", смотрим примечание 6

Пробуем настроить службу:

pwmconfig

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

/etc/init.d/fancontrol restart

(./) Далее наслаждаемся тишиной 8)


Служба обновления системного времени NTP server


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

# aptitude install ntp

По-умолчанию все настройки рабочие. Время забирается с сервера ntp.pool.org, служба автоматически синхронизирует время сразу после запуска. Настройки службы находятся в файле /etc/ntp.conf. Для раздачи времени в локальной сети нужно раскомментировать строку "broadcast" и добавить широковещательный адрес вашей сети.

Пример для сети 192.168.0.xx

broadcast 192.168.0.255

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

/etc/init.d/ntp restart

Далее можно прописывать IP адрес компьютера в качестве источника синхронизации.


Служба загрузки torrent Transmission


Устанавливаем transmission-daemon: - простой и не прожорливый до ресурсов torrent клиент.

# aptitude install transmission-daemon acl.

Останавливаем службу

/etc/init.d/transmission-daemon stop

Создаём папку для хранения загружаемых файлов

mkdir /mnt/data/downloads

Открываем полный доступ к папке только для пользователя debian-transmission

Если у Вас папка не на разделе ХFS, то смотрим примечание 5

setfacl -m u:debian-transmission:rwx /mnt/data/downloads

Правим файл конфигурации

nano /etc/transmission-daemon/settings.json

    "blocklist-enabled": false, 
    "download-dir": "/mnt/data/downloads", 
    "encryption": 1, 
    "peer-port": 52413, 
    "preallocation": 1, 
    "rpc-authentication-required": true, 
    "rpc-enabled": true, 
    "rpc-password": "password", 
    "rpc-port": 8091, 
    "rpc-username": "user", 
    "rpc-whitelist-enabled": false, 

Запускаем службу для применения новых настроек

/etc/init.d/transmission-daemon stop start

Далее можно управляеть загрузками по адресу http:\\ip_сервера:8091, либо с помощью клиентских программ. Также не забываем открыть порт 52413 для входящих соединений.


Служба доступа к файлам и принтерам SMB (CIFS)


Устанавливаем samba: - набор утилит и служб, которые реализуют протокол SMB/CIFS в системах Unix, позволяя обслуживать запросы к файлам и принтерам

Устанавливаем

aptitude install samba samba-common-bin acl:
dpkg-reconfigure samba
dpkg-reconfigure samba-common

Выставляем базовые настройки:

# nano /etc/samba/smb.conf

[global]
# сначала требуем вход с локальными логином и паролем клиента
security = user
# Если будет получен неправильный пароль, то клиенту будет дан гостевой доступ.
map to guest = Bad Password
# Принуждаем клиентов заходить под своим именем
client schannel = Yes
# Используем защищенную процедуру аутентификации
server schannel = Yes
# Работает только на нужной сетевой карте
interfaces = eth1

Далее для примера решаем 2 типовые задачи:

1. Открываем папку для любых пользователей с правом на запись.

Создаём папку и выставляем разрешения

mkdir /mnt/data/share && chmod 777 /mnt/data/share

Вносим новые настройки в файл /etc/samba/smb.conf

# nano /etc/samba/smb.conf

[share]
path = /mnt/data/share/
browsable = yes
read only = no
guest ok = yes

2. Открываем папку только для пользователя Ivan с правом на запись.

Смотрим список пользователей в системе и в БД samba

cat /etc/passwd | cut -d: -f1
pdbedit -L

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

useradd -c "Ivan" -m -g users Ivan -s /bin/false && passwd Ivan

Создаём пользователя в базе пользователей samba.

smbpasswd -a Ivan

Автоматически для пользователя будет создана и расшарена домашняя папка /home/Ivan доступная по сети только ему. Если надо отменяем расшаривание домашних папкок, удаляя или комментируя раздел [homes] в /etc/samba/smb.conf

Создаём папку и выставляем разрешения

Если у Вас папка не на разделе ХFS, то смотрим примечание 5

mkdir /mnt/data/doc && setfacl -m u:Ivan:rwx /mnt/data/doc

Вносим новые настройки в файл /etc/samba/smb.conf

# nano /etc/samba/smb.conf

[doc]
path = /mnt/data/doc/
browsable = yes
read only = no
guest ok = no

Перезапускаем samba для применения новых настроек

/etc/init.d/samba restart

Если надо смотрим подключенных к шарам пользователей

smbstatus


Служба Web интерфейса для администрирования Samba


Устанавливаем swat: - веб-инструмент управления Samba.

Примечание - после установки SWAT 2:3.5.6 аккуратно подхватывает настройки из smb.conf, вносит свои и удаляет ВСЕ параметры которые система использует по-умолчанию.

Устанавливаем swat и документацию к samba

aptitude install swat samba-doc

После установки SWAT будет доступен по адресу http:\\ip_сервера:901.

Для применения внесённых изменений в SWAT изменений нужно на вкладке STATUS нажать кнопку "Перезапустить всё"


Служба обновления имени домена для динамических IP адресов ddclient


Устанавливаем ddclient: - службу, позволяющую привязать динамический IP от вашего провайдера к бесплатному домену второго уровня (например от dyndns.org)

Регистрируемся на сайте dyndns.org и в итоге бесплатно получаем username, пароль и доменное имя. Я выбрал себе ххххх.dyndns.org

aptitude install ddclient

При установке скармливаем конфигуратору имя, пароль и домен. Для проверки работы этой службы можно использовать сайт http://ping.eu

Теперь служба будет автоматически обновлять Ваш IP в DNS сервере при его смене.


Сглаживание шрифтов

Активация сглаживания шрифтов


Примечания


Примечание 1 (настройка aptitude)


По-умолчанию aptitude устанавливает рекомендумемые пакеты. Если это не нужно, к команде установки следует добавить ключ "-R".

Также при выходе aptitude каждый раз спрашивает подтверждение.

Эту опцию можно отключить:

aptitude
       "F10" --> "Параметры" --> "Предпочтения"
       1. "Настройки интерфейса" --> "Запрашивать подтверждение при выходе" --> "Выкл" (Снимаем крестик)


Примечание 2 (ошибка запуска сети)


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

# nano /etc/networking interfaces
     Перед строкой "iface eth0 inet dhcp" добавляем новую строку "auto eth0"
Ctrl+o - сохраняем изменения.
Ctrl+x - выходим из редактора nano.

Применяем настройки:

# /etc/init.d/networking restart


Примечание 3 (настройка мс)


Яркие синие цвета в mc некоторым уже могли надоесть. Чтобы изменить цвета нужно закрыть mc (чтобы настройка не затёрлась самим мс ) и создать (или поправить) строку "base_color" в разделе [Colors] файла .mc/ini. Папка .mc создаётся в домашней директории вашего пользователя при первом запуске mc. К примеру:

[Colors]
base_color=normal=cyan,default::selected=black,cyan:directory=cyan,default:marked=brightgreen,default:errors=red,default:marked=yellow,default:executable=brightred,default:marked=brightgreen,default:link=grey,default:marked=brightgreen,default:device=brightmagenta,default:marked=brightgreen,default:menuhot=black,cyan:menusel=cyan,black:menuhotsel=gray,black:menu=black,cyan:helpnormal=cyan,black:editnormal=cyan,black:editbold=yellow,black:editmarked=cyan,black


Примечание 4 (ошибка pcspkr)


В Debian 6 при запуске ядро по-умолчанию пытается загрузить уже задействованный модуль системного динамика, о чём и выдает ошибку. Для исправления бага открываем файл /etc/modprobe.d/blacklist.conf и добавляем строку:

blacklist pcspkr


Примечание 5 (setfacl неподдерживаемая операция)


Для устранения ошибки файловая система должна быть смонтирована с опцией acl. Для XFS эта опция применяется по-умолчанию.


Примечание 6 (определение датчиков)


Для поиска источников значений можно воспользоваться:

  • мануал к материнской плате (напряжение и вентиляторы)
  • утилиту pwmconfig (температура ЦП и вентиляторы)
  • утилиту cpuburn (температура ЦП)
  • Аналогичные программы в других ОС (Aida64 и т.д.)

Если нашли кто есть кто, тогда смотрим название датчика

sensors | head -1

Перемещаем оригинальный файл, создаём новый и правим его

mv /etc/sensors3.conf /etc/sensors3.conf.BAK
nano /etc/sensors3.conf

chip "название_датчика"

#Temp
    label temp1 "Super I/O Temp"
    label temp2 "CPU Temp"
    label temp3 "System Temp"

# Fans
    label fan1 "PSU Fan"
    label fan2 "CPU Fan"
    label fan3 "System FAN2"
    label fan4 "System FAN3"
    label fan5 "System FAN4"

# Voltages
    label in0 "+12V"
    label in1 "+5V"
    label in2 "Vbat"