<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ChooseLinux &#187; Сервер</title>
	<atom:link href="http://chooselinux.org.ua/category/configs/server/feed/" rel="self" type="application/rss+xml" />
	<link>http://chooselinux.org.ua</link>
	<description>Choose Life. Choose a job. Choose a career. Choose a family. Choose linux...</description>
	<lastBuildDate>Wed, 18 Apr 2012 06:31:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Установка wkhtmltopdf в CentOS 6.2</title>
		<link>http://chooselinux.org.ua/ustanovka-wkhtmltopdf-v-centos-6-2/</link>
		<comments>http://chooselinux.org.ua/ustanovka-wkhtmltopdf-v-centos-6-2/#comments</comments>
		<pubDate>Fri, 03 Feb 2012 05:03:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Сервер]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[make]]></category>
		<category><![CDATA[qt]]></category>
		<category><![CDATA[wkhtmltopdf]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=369</guid>
		<description><![CDATA[В ходе одного эксперимента мне пришлось столкнуться с проблемой установки wkhtmltopdf в Centos 6.2 minimal дистрибутиве. Я достаточно много времени потратил на то, что б разобраться как это сделать, в конце концов нашел на англоязычном ресурсе мануал, для 5.5 версии дистрибутива. Немного адоптировав я выложу его сюда. Устанавливаем инструменты разработчика и подключаем epel репозиторий: # [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://chooselinux.org.ua/wp-content/uploads/2012/02/html-pdf.jpg" alt="" title="Установка wkhtmltopdf в Centos" width="400" height="338" class="aligncenter size-full wp-image-370" /><br />
В ходе одного эксперимента мне пришлось столкнуться с проблемой установки wkhtmltopdf в Centos 6.2 minimal дистрибутиве. Я достаточно много времени потратил на то, что б разобраться как это сделать, в конце концов нашел на англоязычном ресурсе мануал, для 5.5 версии дистрибутива. Немного адоптировав я выложу его сюда.<br />
<span id="more-369"></span><br />
Устанавливаем инструменты разработчика и подключаем epel репозиторий:</p>
<p><code># yum groupinstall "Development Tools"<br />
# rpm -Uvh http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm<br />
# yum install git-core</code></p>
<p>Устанавливаем пакеты необходимые для сборки wkhtmltopdf:</p>
<p><code>$ yum install openssl-devel libXrender-devel libXext-devel libXft-devel</code></p>
<p>Вытягиваем свежие исходники wkhtmltopdf:<br />
<code>$ git clone git://github.com/antialize/wkhtmltopdf.git wkhtmltopdf<br />
$ git clone git://gitorious.org/+wkhtml2pdf/qt/wkhtmltopdf-qt.git wkhtmltopdf-qt</code></p>
<p>Собираем специальную версию Qt:<br />
<code>$ cd wkhtmltopdf-qt<br />
$ ./configure -nomake tools,examples,demos,docs,translations -opensource -prefix "../wkqt"<br />
$ make -j3 &#038;&#038; make install</code></p>
<p>Собираем wkhtmltopdf:<br />
<code>$ cd ../wkhtmltopdf<br />
$ ../wkqt/bin/qmake<br />
$ make<br />
# make install </code></p>
<p>Все, после этих простых шагов пакет собран и установлен. Оригинал тут : http://code.google.com/p/wkhtmltopdf/wiki/compilation .</p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/ustanovka-wkhtmltopdf-v-centos-6-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Трансляция с вебкамеры в Ubuntu 11.04 с помощью VLC</title>
		<link>http://chooselinux.org.ua/translyaciya-s-vebkamery-v-ubuntu-11-04-s-pomoshhyu-vlc/</link>
		<comments>http://chooselinux.org.ua/translyaciya-s-vebkamery-v-ubuntu-11-04-s-pomoshhyu-vlc/#comments</comments>
		<pubDate>Sun, 17 Jul 2011 15:28:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Медиа]]></category>
		<category><![CDATA[Сервер]]></category>
		<category><![CDATA[cctv]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[usb]]></category>
		<category><![CDATA[vlc]]></category>
		<category><![CDATA[webcam]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=321</guid>
		<description><![CDATA[Иногда возникает желание устроить что-то на подобии видео наблюдения дома. Иметь возможность проверять все ли впорядке удаленно, из офиса. Собственно поэтому я решил настроить трансляцию видео с вебкамеры по сети с помощью VLC. Есть у меня небольшой одноплатный компьютер, с 500Мгц процессором на котором установлена Ubuntu 11.04. Соответственно все изложенные действия проверены только в 11.04 [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://chooselinux.org.ua/wp-content/uploads/2011/07/cctv2.jpg" alt="" title="cctv2" width="297" height="400" class="aligncenter size-full wp-image-323" /><br />
Иногда возникает желание устроить что-то на подобии видео наблюдения дома. Иметь возможность проверять все ли впорядке удаленно, из офиса. Собственно поэтому я решил настроить трансляцию видео с вебкамеры по сети с помощью VLC.<br />
<span id="more-321"></span><br />
Есть у меня небольшой одноплатный компьютер, с 500Мгц процессором на котором установлена Ubuntu 11.04. Соответственно все изложенные действия проверены только в 11.04 но скорее всего будут работать успешно и в других версия ОС. Кстати стоить отметить, что сделать тоже самое, на том же железе но под Debian у меня не получилось, скорее всего проблема с кодеками, хотя я и ставил их с debian-multimedia.org.</p>
<p>Порядок действий:<br />
1. Подключаем USB камеру к компьютеру и проверяем распознала ли ее систима:<br />
<code>boffin@fortress:~$ ls -la /dev/video*<br />
crw-rw----+ 1 root video 81, 0 2011-07-17 17:35 /dev/video0</code><br />
2. Ставим VLC:<br />
<code>apt-get install vlc</code><br />
3. Запускаем потоковое вещание:<br />
<code>vlc -I dummy v4l2:///dev/video0 --sout '#transcode{vcodec=mp4v,vb=800}:standard{access=http,mux=ogg,dst=192.168.1.123:8080}'</code><br />
Разберем параметры:<br />
<strong>-I dummy</strong> &#8212; VLC запустится без графического интерфейса<br />
<strong>vcodec=mp4v,vb=800</strong> &#8212; кодек для видео и битрейт<br />
<strong>dst=192.168.1.123:8080</strong> &#8212; по какому адресу и порту будет доступен видео поток<br />
4. Запускаем VLC на клиентской машине, Media -> Open Network Stream, вводим в поле адрес <em>http://192.168.1.123:8080/</em><br />
Все, готово.<br />
<br />
К сожалению подобный способ трансляции имеет отставание видео которое может доходить до 5 секунд. Трансляция видео 640&#215;480 грузила мой процессор на 100%. С целью разгрузить процессор и уменьшить отставание я понизил разрешение, битрейт и количество кадров в секунду. Получилась такая команда:<br />
<code>vlc -I dummy v4l2:///dev/video0 --sout '#transcode{vcodec=mp4v,vb=400,width=320,height=240,fps=15}:standard{access=http,mux=ogg,dst=192.168.1.123:8080}'</code><br />
В итоге нагрузка на процессор во время трансляции не подымается выше 45% а видео с отставанием 1-2 секунды передается успещно по Wi-Fi сети.</p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/translyaciya-s-vebkamery-v-ubuntu-11-04-s-pomoshhyu-vlc/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Настройка ufw в Ubuntu</title>
		<link>http://chooselinux.org.ua/nastrojka-ufw-v-ubuntu/</link>
		<comments>http://chooselinux.org.ua/nastrojka-ufw-v-ubuntu/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 15:09:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Сервер]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[ufw]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=254</guid>
		<description><![CDATA[Начиная с версии Ubuntu 8.04 в ее состав по умолчанию включена новая упрощенная оболочка для работы с файрволом – ufw (Uncomplicated firewall – «незамысловатый» брэндмауер). Как известно Linux по умолчанию имеет очень мощный встроенный сетевой фильтр – netfilter. Стандартной утилитой для управления настройками netfilter является утилита iptables. Ufw создан для того что бы сделать более [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://chooselinux.org.ua/wp-content/uploads/2010/01/firewall.jpg" alt="ubuntu ufw настройка" title="ubuntu ufw настройка" width="400" height="291" class="aligncenter size-full wp-image-261" /><br />
Начиная с версии Ubuntu 8.04 в ее состав по умолчанию включена новая упрощенная оболочка для работы с файрволом – ufw (Uncomplicated firewall – «незамысловатый» брэндмауер). Как известно Linux по умолчанию имеет очень мощный встроенный сетевой фильтр – netfilter. Стандартной утилитой для управления настройками netfilter является утилита iptables. Ufw создан для того что бы сделать более простым настройку netfilter-а. По сути ufw – это скрипт, который получает команды в одном формате и преобразует их в формат iptables.<br />
<span id="more-254"></span><br />
Так как ufw является упрощенной утилитой настройки файрвола, он так же является и более ограниченным в своих возможностях по сравнения с iptables. Практика показывает что большинству пользователей вполне достаточно функционала который предоставляет ufw. В то же время, в случае необходимости всегда можно дописать нужное правило с помощью iptables.</p>
<p><strong>Функционал ufw</strong><br />
Основными функциями файрвола ufw является:<br />
1.	Работа в одном из двух режимов: разрешено все кроме того что описано правилами, запрещено все, кроме описанного правилами.<br />
2.	Создание правил для фильтрации пакетов с действиями allow, deny, reject<br />
3.	Создание правил с учетом адреса и порта получателя и отправителя, используемого протокола<br />
4.	Логирование пакетов подпадающих под правило<br />
5.	Блокировка частых неправильных попыток авторизации по ssh<br />
6.	Настраиваемые профили для приложений</p>
<p><strong>Запуск ufw</strong><br />
Ufw может быть включен или выключен системным администратором сервера, для этого используется команад:<br />
<code># ufw enable</code><br />
Межсетевой экран активен и будет запущен при запуске системы<br />
<code># ufw disable</code><br />
Файрвол остановлен и деактивирован при загрузке</p>
<p>Просматривать состояние можно с помощью команды:<br />
<code># ufw status [numbered]<br />
Статус: активно</code></p>
<p>Параметр numbered может быть использован для отображения правил файрвола с соответствующей нумерацией.</p>
<p>Изменение политики по умолчания:<br />
<code># ufw default allow [in|out]<br />
# ufw default deny [in|out]<br />
# ufw default reject [in|out]</code></p>
<p>Где allow подразумевает что все пакеты будут пропущены, кроме тех, для которых есть запрещающее правило: deny – все пакеты будут заблокированы, кроме тех, для которых есть разрешающие правила; reject – все пакеты будут заблокированы с соответствующим уведомлением подключающуюся сторону.<br />
Параметры in|out указывают для какого направления мы хотим применять политику, для входящих или исходящих пакетов соответственно.</p>
<p>Управление правилами осуществляется с помощью команд allow, deny, reject, delete, insert.<br />
allow – добавить разрешающее правило<br />
deny – добавить запрещающее правило (файрвол не предпринимает действий при попадании в это правило)<br />
reject – добавить запрещающее правило (файрвол даст знать подключающемуся что этот порт закрыт)<br />
limit – добавляет ограничивающее правило для указанного порта. В случае если с одного и того же адреса в течении 30 секунд будет произведено 6 и более неуспешных попыток авторизации в службу удаленного доступа ssh, ufw заблокирует удаленный адрес.<br />
delete – удалить добавленное ранее правило<br />
insert – вставить правило в определенную позицию в цепочке</p>
<p><strong>Построение правил файрвола</strong><br />
Конструкция построения правил<br />
<code>ufw allow|deny|reject|limit [in|out on INTERFACE] [log|log-all] [proto protocol] [from ADDRESS [port PORT]] [to ADDRESS [port PORT]]</code><br />
Подробнее о параметрах:<br />
allow|deny|reject|limit – указываем что будет делать это правило (см. описание выше).<br />
[in|out on INTERFACE] – указываем будет это правило относится к входящему трафику (in) или исходящему (out) и хотим ли мы ограничить данное правило отдельным сетевым интерфейсом (к примеру eth0).<br />
[log|log-all] – при желании можно логировать события которые подпадают под правило. По умолчанию лог пишется в /var/log/syslog. При использовании опции log – в файл будут записаны лишь пакеты участвующие при установке соединения с сервером. Используя опцию log-all в лог файл будут записаны все пакеты подпадающие под правило.<br />
[proto protocol] – в правиле можно указать для какого протокола оно действует: tcp или udp.<br />
[from ADDRESS [port PORT]] – адрес и порт источника пакета<br />
[to ADDRESS [port PORT]] – адрес и порт получателя пакета</p>
<p><strong>Профили приложений</strong><br />
Ufw позволяет создавать профили приложений. в которых можно указать все порты которые используются и удобно добавлять их в правила. Так к примеру можно создать профиль для веб-сервера Apache, указав что слушает он 80 и 443 порты по протоколу tcp.<br />
Профили приложений являются текстовыми файлами и могут быть отредактированы любым текстовым редактором. все файлы хранятся в директории /etc/ufw/applications.d:<br />
<code>root@server:/etc/ufw/applications.d# pwd<br />
/etc/ufw/applications.d<br />
root@server:/etc/ufw/applications.d# ls -l<br />
итого 12<br />
-rw-r--r-- 1 root root 406 2009-11-13 00:52 apache2.2-common<br />
-rw-r--r-- 1 root root 145 2009-10-22 22:50 openssh-server<br />
-rw-r--r-- 1 root root 241 2009-09-22 16:52 postfix<br />
</code><br />
Рассмотрим пример профиля приложения apache2.2-common:<br />
<code>[Apache]<br />
title=Web Server<br />
description=Apache v2 is the next generation of the omnipresent Apache web server.<br />
ports=80/tcp<br />
[Apache Secure]<br />
title=Web Server (HTTPS)<br />
description=Apache v2 is the next generation of the omnipresent Apache web server.<br />
ports=443/tcp<br />
[Apache Full]<br />
title=Web Server (HTTP,HTTPS)<br />
description=Apache v2 is the next generation of the omnipresent Apache web server.<br />
ports=80,443/tcp</code><br />
В одном файле может находится несколько профилей. В данном примере 3: Apache, Apache Secure, Apache Full. Структура записей проста: сначала имя профиля в квадратных скобка ([Apache Full]), далее развернутое наименования приложения, далее описание приложения и список портов с указанием протокола которые задействованы в профиле (80,443/tcp).</p>
<p>Вывести список профилей можно с помощью команды:<br />
<code># ufw app list<br />
Доступные приложения:<br />
Apache<br />
Apache Full<br />
Apache Secure<br />
OpenSSH<br />
Postfix<br />
Postfix Submission</code></p>
<p>Детальную информацию по профилю можно просмотреть с помощью команды:<br />
<code># ufw app info OpenSSH<br />
Профиль: OpenSSH<br />
Название: Secure shell server, an rshd replacement<br />
Описание: OpenSSH is a free implementation of the Secure Shell<br />
protocol.<br />
Порт:<br />
22/tcp</code><br />
После добавления или изменения профиля приложения (в файле) необходимо дать знать файрволу о новом профиле:<br />
<code># ufw app update OpenSSH</code></p>
<p>Для того что б новый профиль сразу вступил в силу, необходимо добавить опцию &#8212;add-new:</p>
<p><code># ufw app update --add-new OpenSSH</code></p>
<p>По умолчанию добавленные с помощью &#8212;add-new профили не будут обрабатываться файрволом. Рекомендуется вначале задать политику для новых профилей приложений:<br />
ufw app default allow|deny<br />
После чего все новые профили приложений будут добавляться в цепочку файрвола с указанной политикой.</p>
<p>Использовать профили приложений можно также при создании обычных правил, например:<br />
<code># ufw allow OpenSSH</code></p>
<p><strong>Настройка профиля безопасности</strong><br />
1. Ограничение входящих подключений к FTP и Веб серверу<br />
Пример настройки файрвола для ситуации, когда необходимо заблокировать доступ к FTP и Веб серверу с адреса 192.168.100.100. В примере 192.168.1.11 &#8212; сервер на котором настраивается файрвол:</p>
<p><code>root@server:/etc/ufw/applications.d# ufw deny proto tcp from 192.168.100.100 to 192.168.1.11 port 21,80<br />
Правило добавлено<br />
root@server:/etc/ufw/applications.d# ufw status<br />
Статус: активно<br />
До                       Действие            От<br />
----                       --------------------<br />
192.168.1.11 21,80/tcp     DENY        192.168.100.100</code></p>
<p>Теперь при попытках подключения с хоста 192.168.100.100 к 21 или 80 порту хоста 192.168.1.11 клиент будет висеть пока не отвалится по таймауту.</p>
<p>Удалим это правило и добавить аналогичное но с действием reject:<br />
<code># ufw delete deny proto tcp from 192.168.100.100 to 192.168.1.11 port 21,80<br />
# ufw reject proto tcp from 192.168.100.100 to 192.168.1.11 port 21,80</code></p>
<p>Теперь при попытке подключения к 21 порту сервера удаленный клиент получит ответ Connection refused:<br />
<code>$ telnet 192.168.1.11 21<br />
Trying 192.168.1.11...<br />
telnet: Unable to connect to remote host: Connection refused<br />
</code><br />
Просканируем порты сервера:<br />
<code>:~# nmap -sT 192.168.1.100<br />
Starting Nmap 5.00 ( http://nmap.org ) at 2009-12-28 22:56 EET<br />
Interesting ports on 192.168.1.100:<br />
Not shown: 992 closed ports<br />
PORT     STATE    SERVICE<br />
21/tcp   filtered ftp<br />
22/tcp   open	ssh<br />
80/tcp   filtered http<br />
139/tcp  open     netbios-ssn<br />
445/tcp  open     microsoft-ds<br />
2323/tcp open     unknown<br />
3128/tcp open     squid-http<br />
5900/tcp open     vnc<br />
MAC Address: 00:18:F3:67:85:9E (Asustek Computer)<br />
Nmap done: 1 IP address (1 host up) scanned in 17.52 seconds</code></p>
<p>2. Ограничение исходящих подключений к указанному серверу<br />
Цель &#8212; запретить исходящие подключения с сервера к адресу 195.214.195.105:</p>
<p><code># ufw deny proto tcp to 195.214.195.105</code></p>
<p>3. Ограничение попыток авторизации  по ssh<br />
<code># ufw limit 22</code></p>
<p>Произведем несколько попыток подключения к 22 порту сервера с введением заведомо неправильного пароля:<br />
<code>user@remote:~$ ssh 192.168.1.100<br />
user@192.168.1.100's password:<br />
Permission denied, please try again.<br />
user@192.168.1.100's password:<br />
user@remote:~$ ssh 192.168.1.100<br />
user@192.168.1.100's password:<br />
Permission denied, please try again.<br />
user@192.168.1.100's password:<br />
user@remote:~$ ssh 192.168.1.100<br />
user@192.168.1.100's password:<br />
Permission denied, please try again.<br />
user@192.168.1.100's password:<br />
user@remote:~$<br />
user@remote:~$ ssh 192.168.1.100<br />
ssh: connect to host 192.168.1.100 port 22: Connection refused<br />
user@remote:~$ ssh 192.168.1.100<br />
ssh: connect to host 192.168.1.100 port 22: Connection refused</code></p>
<p>Как видим после нескольких неудачных попыток файрвол блокирует IP адрес с которого исходят попытки подключения и в логах появится соответсвтующяя запись:<br />
<code>Dec 28 22:59:13 fortress kernel: [273659.578463] [UFW LIMIT BLOCK] IN=eth0 OUT= MAC=00:18:f3:67:85:9e:00:26:5e:46:40:86:08:00 SRC=192.168.1.156 DST=192.168.1.100 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=3150 DF PROTO=TCP SPT=33783 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=0<br />
Dec 28 22:59:15 fortress kernel: [273661.231264] [UFW LIMIT BLOCK] IN=eth0 OUT= MAC=00:18:f3:67:85:9e:00:26:5e:46:40:86:08:00 SRC=192.168.1.156 DST=192.168.1.100 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=763 DF PROTO=TCP SPT=33784 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=0</code></p>
<p>4. Логирование пакетов<br />
<code># ufw allow log 22</code></p>
<p>С помощью этого правила файрвол будет логировать пакеты установки соединиения по указанному 22 порту. В логах появятся следующие записи:<br />
<code>Dec 28 23:04:18 fortress kernel: [273964.364715] [UFW ALLOW] IN=eth0 OUT= MAC=00:18:f3:67:85:9e:00:26:5e:46:40:86:08:00 SRC=192.168.1.156 DST=192.168.1.100 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=6564 DF PROTO=TCP SPT=58069 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=0</code></p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/nastrojka-ufw-v-ubuntu/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Распределенное управление с помощью dsh</title>
		<link>http://chooselinux.org.ua/raspredelennoe-upravlenie-s-pomoshhyu-dsh/</link>
		<comments>http://chooselinux.org.ua/raspredelennoe-upravlenie-s-pomoshhyu-dsh/#comments</comments>
		<pubDate>Thu, 24 Dec 2009 15:18:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Сервер]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=237</guid>
		<description><![CDATA[Я уже рассказывал в статье Настройка ssh авторизации по ключу о том как заходить на ваши наиболее часто используемые сервера не заморачиваясь вводом пароля. Сегодня речь пойдет о том, как удобно и быстро производить однотипные операции на множестве серверов одновременно. Итак, представим ситуацию, вы управляете 10 серверами, и на каждом к примеру вам надо установить [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://chooselinux.org.ua/wp-content/uploads/2009/12/cluster.jpeg" alt="linux dsh настройка" title="linux dsh настройка" width="600" height="450" class="aligncenter size-full wp-image-243" /><br />
Я уже рассказывал в статье <a href="http://chooselinux.org.ua/nastrojka-ssh-atvorizacii-po-klyuchu/">Настройка ssh авторизации по ключу</a> о том как заходить на ваши наиболее часто используемые сервера не заморачиваясь вводом пароля. Сегодня речь пойдет о том, как удобно и быстро производить однотипные операции на множестве серверов одновременно.<br />
<span id="more-237"></span></p>
<p>Итак, представим ситуацию, вы управляете 10 серверами, и на каждом к примеру вам надо установить одинаковый софт. Что первое приходит в голову? Заходить на каждый из серверов и вставлять из буфера обмена команды для установки нужного вам ПО? Но ведь это не Linux Style!</p>
<p>Добрые люди давно придумали средство для распределенного администрирования серверов &#8212; dsh (Distributed shell). Другими словами &#8212; это программа которая получает на вход команду и распространяет ее по необходимому количеству серверов, выполняет там и выдает вам результат. </p>
<p>Для начала надо определится с какого сервера мы будет давать команды. Этот сервер я буду называть главным. Именно на нем и надо поставить пакет dsh:</p>
<pre><code>sudo apt-get install dsh</code></pre>
<p>Дальше необходимо на каждом из серверов, которым мы будем управлять поставить сертификаты для входа по ssh без пароля (желаетельно сертификаты делять для полтьзователя root, тогда не возникнет проблем, к примеру, при установке ПО или перезапуске Apache):</p>
<pre><code>$ sudo -i
# ssh-keygen -t rsa
# scp id_rsa.pub server1:~/.ssh/authorized_keys
# scp id_rsa.pub server2:~/.ssh/authorized_keys
...
# scp id_rsa.pub server10:~/.ssh/authorized_keys
</code></pre>
<p>Теперь с главного должно быть возможным логинится на подчиненные по ssh без пароля. Если не получилось, обратитесь к статье <a href="http://chooselinux.org.ua/nastrojka-ssh-atvorizacii-po-klyuchu/">Настройка ssh атворизации по ключу</a>.</p>
<p>Далее необходимо настроить группы серверов.<br />
В файле <em>/etc/dsh/group/all</em> перечисляем все наши сервера:<br />
<code>server1<br />
server2<br />
server3<br />
server4<br />
server5<br />
server6<br />
server7<br />
server8<br />
server9<br />
server10</code></p>
<p>К примеру сервера 1,2 &#8212; сервера баз данных, 3,4 &#8212; файловые сервера, а 5-10 &#8212; веб ноды. Тогда есть смысл сгрпировать их по предназначению. Для этого создаем файлики:<br />
<code>/etc/dsh/group/db:<br />
server1<br />
server2</code></p>
<p><code>/etc/dsh/group/ftp<br />
server3<br />
server4</code></p>
<p><code>/etc/dsh/group/web<br />
server5<br />
server6<br />
server7<br />
server8<br />
server9<br />
server10</code></p>
<p>Когда dsh настроен, приступаем к использованию.<br />
Пробуем выполнить:<br />
<code>dsh -g all uptime</code><br />
если установка сертификатов прошла успешно, dsh выполнит uptime на всех серверах и выведет вам результат. Если вы увидите запрос на ввод пароля, значит сертификаты не поставились правильно и их желательно поправить.</p>
<p>По умолчанию, dsh выводит просто результат выполнения команды. Очень часто важно видеть с какого-же сервера пришел ответ. Для этого нужен ключ -M, который в начале строки будет отображать имя машины, на которой выполнена команда (имя берется из конфигурационного файла dsh, а не из hostname машины).</p>
<p><code># dsh -g web -M "/etc/init.d/apache2 status"<br />
server5:  * Apache is running (pid 26433).<br />
server6:  * Apache is running (pid 24787).<br />
server7:  * Apache is running (pid 21304).<br />
server8:  * Apache is running (pid 19856).<br />
server9:  * Apache is running (pid 17266).<br />
server10:  * Apache is running (pid 26343).</code></p>
<p>Ну вот и все, это и есть основы dsh. Немножко больше можно научится делать, почитав man.</p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/raspredelennoe-upravlenie-s-pomoshhyu-dsh/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Разворачиваем свой VPS на основе OpenVZ + Ubuntu</title>
		<link>http://chooselinux.org.ua/razvorachivaem-svoj-vps-na-osnove-openvz-ubuntu/</link>
		<comments>http://chooselinux.org.ua/razvorachivaem-svoj-vps-na-osnove-openvz-ubuntu/#comments</comments>
		<pubDate>Sat, 26 Sep 2009 18:53:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Сервер]]></category>
		<category><![CDATA[openvz]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[vps]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=173</guid>
		<description><![CDATA[Порой каждый задумывается начать зарабатывать деньги своим умом в интернете. Один из самых простых вариантов для человека обладающего базовыми навыками в администрировании Linux &#8212; предоставление виртуального хостинга. Для этого достаточно взять в аренду выделенный сервер, желательно помощнее, и установить на нем ОС + OpenVZ. 0. Введение А теперь по порядку. Для начала необходимо установить операционную [...]]]></description>
			<content:encoded><![CDATA[<p>Порой каждый задумывается начать зарабатывать деньги своим умом в интернете. Один из самых простых вариантов для человека обладающего базовыми навыками в администрировании Linux &#8212; предоставление виртуального хостинга. Для этого достаточно взять в аренду выделенный сервер, желательно помощнее, и установить на нем ОС + OpenVZ.<br />
<span id="more-173"></span><br />
<img src="http://chooselinux.org.ua/wp-content/uploads/2009/09/openvz.jpg" alt="openvz" title="openvz" width="152" height="147" class="aligncenter size-full wp-image-177" /><br />
<strong>0. Введение</strong><br />
А теперь по порядку. Для начала необходимо установить операционную систему на сервер. Мой выбор пал на Ubuntu 9.04 Server, так как это самая свежая стабильная версия. Далее необходимо установить на нее виртуальную машину &#8212; OpenVZ. Особенностью OpenVZ является то, что виртуализация происходит на очень низком уровне, за счет чего достигается высокая производительность гостевых систем. Однако для достижения высокой производительности придется использовать специальную версию ядра, так что не бойтесь если при установке OpenVZ предложит скачать новую версию ядра. Далее необходимо скачать образ гостевой системы, которая и будет разворачиваться на виртуальной(гостевой) машине. И еще, для полноценной работы VPS как сервиса, который будет приносить деньги, необходимо каждому виртуальному серверу выдать по IP адресу.</p>
<p>Итак, преимущества виртуальных серверов в том, что они предоставляют изолированное окружение, и клиенты получают рутовый пароль на систему. Так-же следует отметить что в таком случае безопасность внутри виртуальных машин будут отвечать сами клиенты, а злоумышленник с рутовым доступом на виртуальной машине не сможет навредить физическому серверу или соседним виртуальным машинам. </p>
<p>Важно постараться поставить как можно меньше программного обеспечения на физический сервер, в идеале это только OpenVZ и OpenSSH.</p>
<p>Ну а теперь непосредственно процедура установки и настройки OpenVZ (в моих примерах предполагается что у вас установлена свежая Ubuntu 9.04 Server, без дополнительного ПО):</p>
<p><strong>1. Подготовка места на диске для хранения виртуальных машин</strong><br />
Для удобства работы и масштабируемости сервера рекомендуется иметь отдельный жесткий диск ( а лучше два, в рейде, для зеркалирования данных пользователя). Предлагаю в корне создать директорию /vz. В эту директорию монтировать жесткий диск. Для этого в /etc/fstab необходимо добавить строчку:<br />
<code>/dev/sdb1 /vz               ext3    defaults 0       0</code><br />
где /dev/sdb1 &#8212; ваш жесткий диск для хранения виртуальных машин.</p>
<p><strong>2. Установка ядра системы с поддержкой виртуализации</strong><br />
Для этого стоит выполнить команду:<br />
<code># apt-get install vzctl</code><br />
пакетный менеджер автоматически подтянет ядро с поддержкой openvz нужной версии. В моем случае был установлен linux-image-2.6.26-2-openvz.<br />
После перезагрузки необходимо произвести настройку ядра, редактируем файл /etc/sysctl.conf и меняем следующие строки:<br />
<code><br />
net.ipv4.ip_forward=1<br />
net.ipv4.conf.default.forwarding=1<br />
net.ipv4.conf.default.proxy_arp = 0<br />
net.ipv4.conf.all.rp_filter = 1<br />
net.ipv4.conf.default.send_redirects = 1<br />
net.ipv4.conf.all.send_redirects = 0<br />
kernel.sysrq = 1<br />
</code><br />
После сохранения файла необходимо применить новые параметры ядра:<br />
<code># sysctl -p </code></p>
<p><strong>3. Установка виртуальной машины (гостевой системы)</strong><br />
Для начала необходимо скачать образ операционной системы, которая будет использоваться в гостевой системе. Для этого выбираем на образ на сайте <a href="http://openvz.org/download/template/cache/">http://openvz.org/download/template/cache/</a> и скачиваем его в директорию /vz/template/cache:<br />
<code><br />
# mkdir -p /vz/template/cache<br />
# cd /vz/template/cache<br />
# wget http://download.openvz.org/template/precreated/ubuntu-9.04-x86_64.tar.gz<br />
</code><br />
В моем случае для гостевой операционной системы была выбрана Ubuntu  9.04.</p>
<p>Далее необходимо создать непосредственно виртуальную машину, на основе нашего образа. Так как на VPS хостинге эту задачу надо будет повторять неоднократно, удобно использовать скрипт:<br />
<code><br />
root_pw="root_password"              # пароль пользователя root в гостевой системе<br />
os_template="ubuntu-9.04-x86_64" # имя образа ОС для гостевой системы<br />
vm_id="1"                      # идентификатор гостевой системы<br />
/usr/sbin/vzctl create ${vm_id} --ostemplate ${os_template} --config vps.basic #создание гостевой системы на основе образа<br />
/usr/sbin/vzctl set ${vm_id} --onboot yes --save # запускать гостевую при старте системы<br />
/usr/sbin/vzctl set ${vm_id} --hostname vps${vm_id}.domain.com --save #установить hostname гостевой<br />
/usr/sbin/vzctl set ${vm_id} --ipadd 192.168.1.190 --save #установить IP адрес<br />
/usr/sbin/vzctl set ${vm_id} --nameserver 192.168.1.12 --save #установить адрес ДНС сервера<br />
/usr/sbin/vzctl set ${vm_id} --userpasswd root:${root_pw} --save #установить пароль пользователя root<br />
/usr/sbin/vzctl set ${vm_id} --cpulimit 15 --save #установка процессорной квоты 15%<br />
#установка дисковой квоты 9 GB (10 GB в течении промежутка 600 секунд)<br />
/usr/sbin/vzctl set ${vm_id} --diskspace 9000000:10000000 --save<br />
/usr/sbin/vzctl set ${vm_id} --quotatime 600 --save<br />
#установка квоты на виртуальную память 160M (168M в течение quotatime - см.выше)<br />
#с гарантией выделения до 120M (128M)<br />
/usr/sbin/vzctl set ${vm_id} --privvmpages 160M:168M --save<br />
/usr/sbin/vzctl set ${vm_id} --vmguarpages 120M:128M --save<br />
/usr/sbin/vzctl start ${vm_id} #запуск новой гостевой системы<br />
</code></p>
<p>Все, теперь в гостевую систему можно логинится по ssh.</p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/razvorachivaem-svoj-vps-na-osnove-openvz-ubuntu/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Настройка ssh авторизации по ключу</title>
		<link>http://chooselinux.org.ua/nastrojka-ssh-atvorizacii-po-klyuchu/</link>
		<comments>http://chooselinux.org.ua/nastrojka-ssh-atvorizacii-po-klyuchu/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 06:30:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Сервер]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=100</guid>
		<description><![CDATA[В ситуации, когда каждый день по долгу службы или увлечения вы ходите по ssh на один и тот-же сервер, очень удобно использовать ssh авторизацию по ключу(без ввода пароля). Метод заключается в том, что на машине, с которой вы осуществляете подключение, необходимо сгенерировать два ключа (private и public), один из которых (public) вам надо положить на [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chooselinux.org.ua/nastrojka-ssh-atvorizacii-po-klyuchu/ssh/" rel="attachment wp-att-110"><img src="http://chooselinux.org.ua/wp-content/uploads/2009/09/ssh.jpg" alt="ssh" title="ssh" width="512" height="512" class="alignnone size-full wp-image-110" /></a><br />
В ситуации, когда каждый день по долгу службы или увлечения вы ходите по ssh на один и тот-же сервер, очень удобно использовать ssh авторизацию по ключу(без ввода пароля). Метод заключается в том, что на машине, с которой вы осуществляете подключение, необходимо сгенерировать два ключа (private и public), один из которых (public) вам надо положить на удаленной машине, а второй (private) &#8212; держать у себя и никому не показывать.<br />
<span id="more-100"></span><br />
Процедура настройки ssh авторизации по ключам:<br />
Генерируем свои ключи. Файл для ключа можем оставить по умолчанию, на запрос секретной фразы надо просто нажать Enter:<br />
<code>boffin@fortress:~/.ssh$ ssh-keygen -t rsa<br />
Generating public/private rsa key pair.<br />
Enter file in which to save the key (/home/boffin/.ssh/id_rsa):<br />
Enter passphrase (empty for no passphrase):<br />
Enter same passphrase again:<br />
Your identification has been saved in /home/boffin/.ssh/id_rsa.<br />
Your public key has been saved in /home/boffin/.ssh/id_rsa.pub.<br />
The key fingerprint is:<br />
34:c2:42:35:d4:2c:3c:59:f0:9d:f2:fe:1d:81:d1:df<br />
boffin@fortress</code></p>
<p>Далее необходимо скопировать открытый ключ на удаленную машину в файл ~/.ssh/authorized_keys. Если такой файл уже существует рекомендуется дописать новый ключ в конец этого файла, таким образом будет возможно логинится на сервер с разных компьютеров по ключу.<br />
<code>boffin@fortress:~/.ssh$ scp id_rsa.pub einstein:~/.ssh/authorized_keys<br />
boffin@einstein's password:<br />
id_rsa.pub                                                                                                                                                          100%  397     0.4KB/s   00:00<br />
</code></p>
<p>В общем, если настройки sshd на удаленной машине установлены по умолчанию, то уже можно логинится:<br />
<code>boffin@fortress:~/.ssh$ ssh einstein<br />
  System information as of Mon Sep 14 09:00:01 EEST 2009<br />
  System load: 0.18              Memory usage: 35%   Processes:       87<br />
  Usage of /:  6.3% of 71.98GB   Swap usage:   5%    Users logged in: 1<br />
Last login: Mon Sep 14 09:03:44 2009 from remotehost.com<br />
boffin@einstein:~$<br />
</code></p>
<p>Если с первого раза удаленная машина не пускает по ключу, следует проверить настройки sshd, убедитесь что в /etc/ssh/sshd_config параметры выставлены следующим образом:<br />
<code>RSAAuthentication yes<br />
PubkeyAuthentication yes<br />
AuthorizedKeysFile     %h/.ssh/authorized_keys<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/nastrojka-ssh-atvorizacii-po-klyuchu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Настройка exim4</title>
		<link>http://chooselinux.org.ua/nastrojka-exim4/</link>
		<comments>http://chooselinux.org.ua/nastrojka-exim4/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 13:08:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Сервер]]></category>
		<category><![CDATA[exim]]></category>
		<category><![CDATA[sendmail]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=52</guid>
		<description><![CDATA[Никогда не помешает иметь под рукой настроенный SMTP сервер. В этих целях я решил поставить exim4. Письма будут отправлятся через вне шний SMTP сервер. А сделать надо не так уж и много: 1. Установить exim # apt-get install exim4 2. Настройка В файле /etc/exim4/update-exim4.conf.conf изменить: dc_eximconfig_configtype=’smarthost’ dc_smarthost=’smtp.gmail.com::587′ 3. Настройка авторизации для аккаунта внешнего SMTP, для [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chooselinux.org.ua/nastrojka-exim4/20040925-exim_logo/" rel="attachment wp-att-53"><img src="http://chooselinux.org.ua/wp-content/uploads/2009/09/20040925-exim_logo-300x187.png" alt="20040925-exim_logo" title="20040925-exim_logo" width="300" height="187" class="aligncenter size-medium wp-image-53" /></a></p>
<p>Никогда не помешает иметь под рукой настроенный SMTP сервер. В этих целях я решил поставить exim4. Письма будут отправлятся через вне шний SMTP сервер.<br />
<span id="more-52"></span><br />
А сделать надо не так уж и много:</p>
<p>1. Установить exim</p>
<p><code># apt-get install exim4</code></p>
<p>2. Настройка</p>
<p>В файле /etc/exim4/update-exim4.conf.conf изменить:</p>
<p><code>dc_eximconfig_configtype=’smarthost’<br />
dc_smarthost=’smtp.gmail.com::587′</code></p>
<p>3. Настройка авторизации для аккаунта внешнего SMTP, для этого в файл /etc/exim4/passwd.client добавляем</p>
<p><code>*.google.com:username@gmail.com:password<br />
smtp.gmail.com:username@gmail.com:password<br />
gmail-smtp.l.google.com:username@gmail.com:password</code></p>
<p>Где вместо username и password вписываем свои данные.</p>
<p>4. Просим exim перечитать конфигурацию:</p>
<p><code># update-exim4.conf</code></p>
<p>Проверить работоспособность можно выполнив</p>
<p><code>#echo test message | sendmail test@mail.com</code></p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/nastrojka-exim4/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Скрипт резервного копирования баз данных mysql</title>
		<link>http://chooselinux.org.ua/backup-mysql-baz-dannyx/</link>
		<comments>http://chooselinux.org.ua/backup-mysql-baz-dannyx/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 12:55:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Сервер]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[crontab]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=30</guid>
		<description><![CDATA[Итак, нет в мире важнее предмета чем информация. И очень тяжело бывает восстановить ее в случае потери. А так как большое количество информации хранится в базах данных, сейчас расскажу о том, как их можно бэкапить! 1. Предисловие Так как опасностей которые предостерегают информацию очень много (ошибка человека, выход из строя накопителя&#8230;), я давно обзавелся дополнительным [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chooselinux.org.ua/backup-mysql-baz-dannyx/mysql1-296x300/" rel="attachment wp-att-31"><img src="http://chooselinux.org.ua/wp-content/uploads/2009/09/mysql1-296x300.png" alt="mysql1-296x300" title="mysql1-296x300" width="296" height="300" class="alignleft size-full wp-image-31" /></a><br />
Итак, нет в мире важнее предмета чем информация. И очень тяжело бывает восстановить ее в случае потери. А так как большое количество информации хранится в базах данных,  сейчас расскажу о том, как их можно бэкапить!<br />
<span id="more-30"></span><br />
<strong>1. Предисловие</strong><br />
Так как опасностей которые предостерегают информацию очень много (ошибка человека, выход из строя накопителя&#8230;), я давно обзавелся дополнительным жестким диском, который я использую только для бэкапов. Для бэкапов баз данных я решил использовать такую схему:<br />
1) Примонтирование бэкапного жесткого диска<br />
2) Получение списка баз данных mysql<br />
3) Циклический дамп баз данных во временную директорию<br />
4) Архивирование директории с дампами баз<br />
5) Удаление временной директории<br />
6) Отмонтирование бэкапного раздела</p>
<p><strong>2. Скрипт</strong><br />
<code><br />
#!/bin/bash<br />
#выводим текущюю дату и время<br />
date<br />
#указываем бэкапный раздел<br />
DEVICE=/dev/sdc1<br />
#указываем точку монтирования бэкапного раздела<br />
MOUNTPOINT=/mnt/backup<br />
#указываем название временной директории<br />
date=`date +"%Y%m%d"`<br />
DIR=$MOUNTPOINT/dbs_$date<br />
#монтируем бэкапный раздел<br />
echo "Mounting backup device"<br />
mount $DEVICE $MOUNTPOINT<br />
echo "Dumping MySQL databases"<br />
mkdir $DIR<br />
#получаем список баз данных<br />
for i in `mysql -uroot -ppassword -e "show databases" | grep -v information_schema | grep -v Database`<br />
do<br />
#дампим каждую базу в файл во временной директории<br />
 mysqldump -uroot -ppassword $i > $DIR/$i.sql<br />
done<br />
#архивируем директорию с дампами<br />
echo "Gzipping databases dumps"<br />
tar czvf $DIR.tar.gz $DIR<br />
#удаляем временную директорию<br />
echo "Removing tmp db dumps"<br />
rm -r $DIR<br />
#отмонтируем бэкапный раздел<br />
echo "Backup finished!"<br />
umount $MOUNTPOINT<br />
date<br />
</code></p>
<p><strong>3. Восстановление</strong><br />
В результате работы скрипта на бэкапном разделе мы будем иметь файлы с видом dbs_20081203.tar.gz.  Чтобы восстановить базы надо разархивировать их дампы:<br />
<code>tar zxvf dbs_20081203.tar.gz</code><br />
и заинсертить эти дампы в базу<br />
<code>mysql -uroot -ppassword db_name < dbs_20081203/db_name.sql</code></p>
<p><strong>4. Автоматизация</strong><br />
Ну и какой же это бэкап если его надо делать руками =).  Добавляем этот скрипт на автоматическое выполнение каждый понедельник в 01:01  в <em>/etc/crontab</em>:<br />
<code>1 1     * * 1 root /bin/bash /root/backuper.sh</code></p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/backup-mysql-baz-dannyx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Настройка Samba в Ubuntu 9.04</title>
		<link>http://chooselinux.org.ua/nastrojka-samba-v-ubuntu-9-04/</link>
		<comments>http://chooselinux.org.ua/nastrojka-samba-v-ubuntu-9-04/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 12:53:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Сервер]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[samba]]></category>
		<category><![CDATA[smdb]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://chooselinux.org.ua/?p=26</guid>
		<description><![CDATA[На днях возникла необходимость предоставить удобный доступ к файлам сервера Windows машинам. Установка и настройка Samba севрера достаточно проста и быстра. 1. Установка Samba apt-get install samba 2. Настройка демона Samba Главный конфигурационный файл демона /etc/samba/smb.conf. Его я отредактировал следующим образом: [global] workgroup = HOMEWORKGROUP server string = Boffin home server ; Для того что [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chooselinux.org.ua/nastrojka-samba-v-ubuntu-9-04/folder/" rel="attachment wp-att-27"><img src="http://chooselinux.org.ua/wp-content/uploads/2009/09/folder-278x300.jpg" alt="folder" title="folder" width="278" height="300" class="alignleft size-medium wp-image-27" /></a></p>
<p>На днях возникла необходимость предоставить удобный доступ к файлам сервера Windows машинам.  Установка и настройка Samba севрера достаточно проста и быстра.<br />
<span id="more-26"></span><br />
<strong>1. Установка Samba</strong><br />
<code>apt-get install samba</code></p>
<p><strong>2. Настройка демона Samba</strong><br />
Главный конфигурационный файл демона <em>/etc/samba/smb.conf</em>. Его я отредактировал следующим образом:<br />
<code><br />
[global]<br />
        workgroup = HOMEWORKGROUP<br />
        server string = Boffin home server<br />
        ; Для того что б слушать самбой не на всех интерфейсах<br />
        bind interfaces only = yes<br />
        interfaces = eth0 192.168.1.100<br />
        ; Список хостов которым разрешен доступ<br />
        hosts deny = ALL<br />
        hosts allow = 192.168.1.100 192.168.1.150 127.0.0.1<br />
        announce version = 5.0<br />
        socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192<br />
        passdb backend = tdbsam<br />
        security = user<br />
        null passwords = true<br />
        ; Файл с адиасами имен юзеров<br />
        username map = /etc/samba/smbusers<br />
        name resolve order = hosts wins bcast<br />
        wins support = yes<br />
        printing = CUPS<br />
        printcap name = CUPS<br />
        log file = /var/log/samba/log.%m<br />
        syslog = 0<br />
        syslog only = no<br />
        unix charset = utf8<br />
        dos charset = cp1251<br />
        display charset = cp1251<br />
;название под которым будет доступна директория<br />
[Storage]<br />
        ; Путь к расшареной директории<br />
        path = /mnt/storage<br />
        ; Разрешен ли просмотр<br />
        browseable = yes<br />
        read only = no<br />
        guest ok = no<br />
        create mask = 0644<br />
        directory mask = 0755<br />
</code></p>
<p><strong>3. Добавляем пользователей которым разрешён доступ и устанавливаем пароль</strong><br />
<code>smbpasswd -a boffin</code></p>
<p><strong>4. Активируем пользователя</strong><br />
<code>smbpasswd -e boffin</code></p>
<p>5. <strong>В <em>/etc/samba/smbusers</em> помещаем алиасы</strong> (имена пользователей виндовых систем, которым будет предоставлен доступ от имени boffin):<br />
<code>boffin = Admin Administrator</code></p>
<p><strong>6. Перезапускаем Samba</strong><br />
<code>/etc/init.d/samba restart</code></p>
<p><strong>7. Проверка работоспособности</strong><br />
<code>boffin@boffin-desktop:~$ smbclient //192.168.1.100/Storage<br />
Enter boffin's password:<br />
Domain=[FORTRESS-SERVER] OS=[Unix] Server=[Samba 3.2.5]<br />
smb: \> ls<br />
  .                                   D        0  Wed Dec  3 11:02:08 2008<br />
  ..                                  D        0  Thu Sep 11 11:22:07 2008<br />
  downloads                           D        0  Tue Dec  2 13:45:26 2008<br />
  restore                             D        0  Thu Oct 30 12:29:36 2008<br />
  trash                               D        0  Wed Dec  3 11:02:25 2008<br />
  lost+found                          D        0  Wed Oct 29 20:20:07 2008<br />
  photo                               D        0  Sun Nov 30 20:38:23 2008<br />
  multimedia                          D        0  Wed Dec  3 10:50:06 2008<br />
  install                             D        0  Thu Nov 13 09:34:14 2008<br />
  docs                                D        0  Wed Dec  3 10:59:18 2008<br />
  UkraineAuto.rar                            131  Thu Nov  6 15:52:03 2008<br />
  .Trash-1000                        DH        0  Wed Nov 12 21:39:53 2008<br />
                59146 blocks of size 16777216. 48672 blocks available<br />
smb: \></code></p>
]]></content:encoded>
			<wfw:commentRss>http://chooselinux.org.ua/nastrojka-samba-v-ubuntu-9-04/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
