Архив метки: Debian

Debian — один из самых старых и известных дистрибутивов Linux, на нем основаны множество других дистрибутивов, в том числе и Ubuntu. Этот дистрибутив славится своей стабильностью и отлаженностью программного обеспечения. Но эта эту стабильность тоже нужно платить новизной. В результате мы получаем стабильные но очень старые версии программ, приблизительно на два года, это вызывает ряд проблем, например необходимость подключать сторонние репозитории для получения новых версий программ. Здесь самое большое хранилище пакетов среди других дистрибутивов. Больше пакетов, возможно, только у Ubuntu, но учитывая что они совместимы с Debian то это ничего не меняет. Он может использоваться как на персональном компьютере, так и на серверах, всего система поддерживает 12 аппаратных архитектур. В этой категории собраны все материалы об операционной системе Debian, ее установка, настройка, администрирование и так далее.

Установка драйвера Epson Stylus Photo TX650 в Debian

Принтер устанавливается на раз-два. Для начала устанавливаем lsb - Linux Standard Base 3.2 support package. (Более подробная информация на Википедии):

sudo apt install lsb

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

Кстати говоря, на странице загрузки драйверов для Epson TX650 имеются RPM-файлы.

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

Встановлення Wi-Fi драйвера Broadcom BCM4313 в Debian

Після встановлення Ubuntu на свій HP G7, Wi-Fi в системі працював “з коробки”. Коли я вирішив встановити на нього Debian, ще під час інсталяції майстер встановлення повідомив, що не зміг знайти драйвер для Wi-Fi. Я не звернув на це уваги, але вже після встановлення системи виявилось, що бездротова мережа на ноутбуці не працює. Навіть не просто не працює: у диспетчері підключень взагалі не було інформації про бездротові мережі. Лише повідомлення, що не встановлена прошивка. Проте через кабель усе працювало нормально. Довелося тимчасово користуватися ноутбуком так.

Читать далее Встановлення Wi-Fi драйвера Broadcom BCM4313 в Debian

Диспетчер задач и диспетчер устройств в Linux

Для запуска диспетчера который покажет все PCI устройства выполним команду

lspci

Для запуска диспетчера задач выполним команду

top

Можно установить htop, он удобнее чем top. Команда для установки

apt install htop

команда для запуска

htop

Запуск графических приложений Linux через PuTTY

Наверное большинство системных администраторов используют различные инструменты из своего "джентльменского” набора, для удаленного администрирования подответсвенных им машин. Для администрирования серверов, или рабочих станций под управлением Linux, как правило хватает SSH. Но как же быть в случае, если нам необходимо запустить графическое приложение на удаленной машине? Для этого существует уйма платных и бесплатных программ, которые вы без труда найдете по первым же поисковым запросам в интернете. Сегодня мы рассмотрим Open Source решение Xming.

Как известно X Window System изначально реализовывала клиент-серверную архитектуру, благодаря чему  мы можем запускать приложения на одной машине, а графический ввод или вывод осуществлять на другой (имеющей доступ к первой по сети).
Давайте рассмотрим, как это можно сделать на компьютере с операционной системой Windows (в которой как  мы знаем нет X - сервера). Воспользуемся утилитой XMING.
Скачав с официального сайта последнюю версию программы приступаем к установке, которая впрочем довольно простая, и я думаю, описывать все пункты в которых нужно нажимать "далее”, не стоит.
Запускаем нашу программу, после чего она благополучно свернется в трей. Теперь нам нужно сконфигурировать наш PuTTY. Настройки все те же самые (IP адрес, кодировка, пр), за исключением одного пункта (см. Рисунок)

putty_ssh_x11

Здесь нам необходимо поставить флажок напротив "Enable X11 forwarding”.
Подключаемся к удаленной машине (на которой запущены "иксы”) и вызываем через консоль необходимое нам приложение, например напишем: firefox и получим браузер, если он у нас такой есть там установленный (по умолчанию в Debian есть, и называется iceweasel) или запустим проводник Debian так же написав его имя nautilus и так любое приложение. Всё работает 😉

Установка Samba сервер на Debian и Ubuntu

Samba — программа, которая позволяет обращаться к сетевым дискам на различных операционных системах по протоколу SMB/CIFS. Имеет клиентскую и серверную части.
Samba предоставляет службы файлов и печати для различных клиентов Microsoft Windows и может интегрироваться с операционной системой Windows Server, либо как основной контроллер домена (PDC), либо как член домена. Она также может быть частью домена Active Directory.

1) Устанавливаем самбу на Debian/Ubuntu

sudo apt-get install libcups2 samba samba-common

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

2) Добавим пользователя и создадим нужные каталоги.
Добавим пользователя user10 в систему
*вместо user10 впишите свое.

sudo adduser user10

и вводим пароль для него.

Добавим пользователя в Samba

sudo smbpasswd -a user10

и вводим пароль для пользователя user10

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

sudo mkdir /home/share/
sudo mkdir /home/share/share

назначим права на созданные каталоги

sudo chmod 777 /home/share/share

3) Добавляем информацию о каталогах в конфиг.

sudo nano /etc/samba/smb.conf

и в самый низ добавляем следующие

[homes]
comment = Home Directories    browseable = no    valid users = %S    writable = yes create mask = 0700    directory mask = 0700

[share]
comment = All users upload and download path = /home/share/share create mode = 0777 directory mask = 0777 available = yes browsable = yes public = yes writable = yes

и перезапускаем Samba server

sudo /etc/init.d/samba restart

4) После чего в сетевом окружении Windows появится ПК с хостнеймом сервера, что бы зайти на него нужно ввести имя и пароль пользователя которого Вы создали в шаге 2.

Официально: Консультант Debian Linux

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

https://www.debian.org/consultants/#UA

Debian — это не просто Linux дистрибутив, это замечательная и любимая платформа, которая воплощает в себе принципы открытости, надёжности и свободы. Хотя я ценю и Windows, именно Linux и его открытая философия всегда были мне особенно близки.

Установка bind9. Конфигурируем master-NS с комфортом. Web-интерфейс для bind, smbind

Сначала поставим bind:

root@Debian:~# aptitude install bind9

После этого нам нужно будет установить LAMP. Как это сделать мы все помним, а если не помним, то читаем тут. 
Теперь поставим веб-интерфейс к bind9 — smbind:

root@Debian:~# aptitude install smbind

По ходу установки у нас спросят кучу всякой чуши, вроде пароля mysql root’a и пароля для mysql пользователя, от которого будет работать smbind.
После окончания установки идём по адресу http://ip_adres_ofServer/smbind/
Логин и пароль по умолчанию — admin:admin
Меняем пароль для пользователя admin, можете создать нового пользователя, поиграться с зонами в веб-интерфейсе. Осталось самое важное — подключить конфиг smbind’a в конфиг самого bind’a.
Добавим строчку
include «/etc/smbind/smbind.conf»;
в файл /etc/bind/named.conf
После этого перезагрузим bind:

 root@Debian:~# /etc/init.d/bind9 restart

Теперь мы можем управлять нашими зонами через веб-интерфейс.
Единственная оговорка — кнопка «Commit changes» работать не будет.
Изменения сделанные через веб-интерфейс следует «включать» командой по ssh:

root@Debian:~# rndc reload

Для тех кто хочет делать это через веб-интерфейс я намекну — у пользователя www-data должны быть права на исполнение файла /usr/sbin/rndc
Если вы используете сервер в том числе как и веб-сервер — не ковыряйтесь в этом направлении. Пользователи смогут поломать вам bind.

Ну и немного обезопасим веб-морду бинда:
В файле cat /etc/apache2/conf.d/smbind.conf изменим строку
Alias /smbind /usr/share/smbind/php
на что-то вроде
Alias /smbind124182764916 /usr/share/smbind/php

Тогда интерфейс бинда будет доступен по адресу http://ip_adress/smbind124182764916 — это затрудняет его поиски.
Так же неплохо было бы защитить директорию /usr/share/smbind/php при помощи .htaccess+.htpasswd. Либо ограничить доступ туда по IP. Тут уже насколько у вас фантазии хватит)

Debian, LAMP (linux+apache+php+mysql). Размещаем свой первый сайт.

Данная статья является статьей цикла «Установка LAMP одной командой»

Сразу оговорюсь, что идеология всего последующего мануала рассчитана на то, что вы — единственный администратор сервера. Нет, конечно же, вы можете использовать такую конфигурацию с друзьями. Но не пытайтесь использовать её совместно с теми, кому вы не доверяете. Например, клиентами.
Идеология безопасности в данном случае построена на стандартных настройках вашего дистрибутива, которые могут не кореллироваться с идеологией криворуких PHP программистов.
Хотя, за пару лет использования такой схемы я не находил никаких проблем. Но в теории, при выполнении «тыщиусловий» они возникнуть могут.

В обмен на это мы получаем максимально беспроблемное решение в плане «а вот эта CMS тут работать будет или нет?». Ну то есть фактически, я не встречал ни единой проблемы с тем, чтобы что-то не заработало. Под эту конфигурацию пишут почти все PHPники (кроме PHPшников с большой и светлой кармой, пишуших под nginx+php_fpm).

Начнёмс. По условиям задачи — user — это вы. Сайт разместим в каталоге /home/user/site1.ru, где /home/user — домашний каталог пользователя. Сайт, как вы догадались, будет зваться site1.ru. Почему не /var/www ? Просто мне так удобнее. Да и вам будет проще.
Сайт использует CMS для php+mysql (joomla, drupal, wordpress, как примеры).
Вы уже создали все необходимые DNS записи и по «ping site1.ru» отзывается именно ваш сервер. А так же — по «ping www.site1.ru». Аналогично — для всех доменов, которые мы желаем сделать алиасами для нашего сайта.
Алиас — это дополнительный домен для сайта. Наш сайт будет открываться по site1.ru и по www.site1.ru
Так же, обращайте внимание на то, от имени какого пользователя я выполняю команды (user@ или root@)

Приступим. Создадим нужный нам каталог:
user@Debian:~$ mkdir -p /home/user/site1.ru
Теперь разместим в нём файлы нашего сайта любым удобным нам способом. Я обожаю делать вот так:
user@Debian:~$ cd && wget http://ftp.drupal.org/files/projects/drupal-6.17.tar.gz && tar -xfv drupal-6.17.tar.gz && rm -r site1.ru && mv drupal-6.17 site1.ru
Вы же — уже закачали файлы по FTP в site1.ru, пока я вводил эту команду, не так ли?
Теперь очень важная штука.
user@Debian:~$ cd && chown -R user:www-data site1.ru && chmod -R 750 site1.ru
Что мы сейчас сделали. Мы разрешили себе (user) право на чтение и запись в любые файлы каталога site1.ru, разрешили процессам Apache (веб-сервер) доступ на чтение ко всем файлам данного каталога и запретили чтение каталога всем остальным. Для чего? Чтобы ваш сосед по серверу не смог просмотреть файлы вашего сайта. А там обычно в открытом виде хранится пароль доступа к mysql.
Теперь нам следует внимательно ознакомиться с мануалом к CMSке и узнать, куда необходимо разрешить доступ на запись веб-серверу. Ну… условимся, что у CMSки есть каталог upload, доступ на запись к которому нужен всегда, и файл config.php, доступ к которому нужен на время установки. Выдадим нужные права:
user@Debian:~$ cd /home/user/site1 && chmod -R 770 upload
user@Debian:~$ cd /home/user/site1 && chmod 770 config.php
Всё ещё соблюдаем принцип «доступ к этим файлам должен иметь только владелец и веб-сервер». Третью цифру оставляем нулём, если CMS не требует обратного (есть CMSки, которые проверяют не возможность записи в каталог/файл а просто права на файл. Плохие CMSки)

Теперь создадим базу Mysql — http://debian.pro/99 — я тут уже всё подробно по этой теме описал.

А теперь, собственно, мы расскажем Апачу, что мы желаем разместить сайт.
Создадим и отредактируем файлик, который будет содержать информацию о нашем VirtualHost:
root@Debian:~$ nano /etc/apache2/sites-enabled/site1.ru
У вас откроется страшное окошко, в котором можно печатать.
Вам туда нужно вставить следующий текст (вставка в терминале, напоминаю, обычно, работает по ctrl+shift+v или по shift+insert):

<VirtualHost *:80>
DocumentRoot /home/user/site1.ru
ServerName site1.ru
ServerAlias www.site.ru
ServerAdmin [email protected]
</VirtualHost>

После этого жмём Ctrl+X, отвечаем на вопрос сохранять или нет Y и релоадим Апач:
root@Debian:~$ apache2ctl reload
или
root@Debian:~$ /etc/init.d/apache2 restart

Если вы всё сделали правильно и уже правильно работают ваши DNS серверы — по адресу http://site1.ru должен открыться ваш сайт (или инсталлятор CMSки)… ну а дальше вы знаете)
Ну и не забудьте убрать доступ на запись к тем файлам, запись в которые необходима только во время установки (config.php в нашем случае):
user@Debian:~$ cd /home/user/site1 && chmod 750 config.php

Вообще про виртуалхосты почитать можно тут — httpd.apache.org/docs/2.1/mod/core.html#virtualhost
Там много интересной информации, которая вам понадобится, если вы будете заниматься серверами с кучей сайтов (здесь много размышлений, в основном матом, слышится «нищеброды, не могут купить ispmanager»). А пока оно вам ни к чему.

Устанавливаем DHCP Server на Debian и Ubuntu

Здесь я расскажу как на Debian или Ubuntu поднять DHCP сервер для раздачи IP адресов компьютерам в локальной сети.

Установка достаточно простая, приступим:

1) Устанавливаем пакет dhcp-server

# apt-get install isc-dhcp-server

2) После чего, нужно отредактировать конфиг, но сначала нужно уточнить какой сетевой интерфейс смотрит в локальную сеть(если на сервере несколько интерфейсов i-net and lan interfaces)

# ifconfig

Устанавливаем DHCP Server на Debian и Ubuntu

как видим на скриншоте на сервере только один интерфейс eth0 смотрит в локальную сеть. Настроим этот интерфейс для раздачи ip адресов.

# nano /etc/default/isc-dhcp-server

находим

INTERFACES=""

и заменяем на

INTERFACES="eth0"
# nano /etc/dhcp/dhcpd.conf

Находим

option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;

Заменяем на

option domain-name "MyLAN.com";
option domain-name-servers 192.168.0.1, 192.168.0.2;
*option domain-name-servers указываем список dns серверов,
 192.168.0.1 = IP адрес сервера первичного DNS
 192.168.0.2 = IP адрес сервера вторичного DNS

Раскомментируем строку

#authoritative;

Далее находим:

default-lease-time 600;
 max-lease-time 7200;
 #subnet 10.254.239.0 netmask 255.255.255.224 {
 #  range 10.254.239.10 10.254.239.20;
 #  option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;
 #}

Заменяем на:

default-lease-time 32400;
 max-lease-time 72000;
 subnet 192.168.0.0 netmask 255.255.255.0 {
 range 192.168.0.2 192.168.0.254;
 option routers 192.168.0.1;
 }
*default-lease-time 32400; Время на которое выдается IP адрес в секундах.
 *subnet 192.168.0.0 netmask 255.255.255.0 = сеть и маска сети.
 *range 192.168.0.2 192.168.0.254 = пул выдаваемых ip адресов от 2 до 254.
 *option routers 192.168.0.1 = шлюз по умолчанию.

3) Если нужно назначить статическую раздачу IP адресов компьютерам в сети. Добавляем в конец конфига /etc/dhcp/dhcpd.conf

host printServer {
 hardware ethernet 00:0D:87:B3:AE:A6;
 fixed-address 192.168.1.11;
 }
*hardware ethernet 00:0D:87:B3:AE:A6; = MAC адрес сетевой карты printServer-а
 *fixed-address 192.168.1.11; = Выдаваемый IP адрес.

Сохраняем все изменения. И запускаем dhcp сервер.

# /etc/init.d/isc-dhcp-server restart

Установка DEB пакетов щелчком по файлу (как в Ubuntu)

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

aptitude install gdebi

При щелчке по deb-пакету будет открываться мастер установки.