<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Готовые решения в Debian GNU/Linux]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=903</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=903&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Готовые решения в Debian GNU/Linux».]]></description>
		<lastBuildDate>Tue, 17 Jun 2014 09:42:50 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=413228#p413228</link>
			<description><![CDATA[<p><span class="bbu"><span style="color: #33CC00">Возвращаем монтирование в /media вариант2</span></span><br />Тоже столкнулся с проблемой монтирования устройств udisks2.<br />Решение от <a href="http://linuxforum.ru/viewtopic.php?pid=359143#p359143">http://linuxforum.ru/viewtopic.php?pid=359143#p359143</a> меня не устроило.<br />Нашел на <a href="https://wiki.archlinux.org/index.php/Udev#udisks2_-_mount_to_.2Fmedia">https://wiki.archlinux.org/index.php/Ud … o_.2Fmedia</a> простое решение<br /></p><div class="codebox"><pre><code>/etc/udev/rules.d/99-udisks2.rules

ENV{ID_FS_USAGE}==&quot;filesystem|other|crypto&quot;, ENV{UDISKS_FILESYSTEM_SHARED}=&quot;1&quot;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (stalker_tk)]]></author>
			<pubDate>Tue, 17 Jun 2014 09:42:50 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=413228#p413228</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=386354#p386354</link>
			<description><![CDATA[<p><strong>Идеальные шрифты в Debian</strong><br />Привет. Почти во всех дистрибутивах шрифты из коробки так себе (в плане их прорисовки и сглаживания), исключения составляют Ubuntu и ее производные. Сейчас я расскажу вам как это исправить в Debian (эта же инструкция применима к производным дистрибутивам от Debian).<br />Мы будем собирать сами .deb пакет, но ничего сложного в этом нет!<br />Для начала установим пакеты <em>gcc</em> и <em>devscripts</em>. Это можно выполнить следующей командой:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> aptitude install gcc devscripts</div><br />Теперь мы идем по этой ссылке: <a href="https://github.com/chenxiaolong/Debian-Packages.git">https://github.com/chenxiaolong/Debian-Packages.git</a>, находим в нижнем углу кнопку <strong>Download ZIP</strong>.<br />Распаковываем. после того как мы распаковали архив, открываем консоль, набираем команду (при условии, что утилита sudo установлена и настроена):<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: user</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#3191FF">[user@linuxforum.tech ~]$</span> sudo -i</div><br />Вводим пароль и выполняем следующие команды:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> cd Debian-Packages-master/</div><br />Потом надо проверить и установить зависимости, иначе готовые пакеты работать не будут. Для этого воспроизводим команды:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> cd freetype-infinality/</div><br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> dpkg-checkbuilddeps</div><br />Последняя команда выдаст неразрешенные зависимости. Их надо будет установить используя <em>aptitude</em>.<br />Проделаем то же самое но теперь с папкой Fontconfig-infinality:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> cd ../fontconfig-infinality/</div><br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> dpkg-checkbuilddeps</div><br />Установим указанные пакеты. Если последняя команда ничего не выдала, значит все в порядке и можно приступать к сборке пакетов. Выполните следующие команды:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> cd ../freetype-infinality/</div><br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> ./build.sh</div><br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> cd ../fontconfig-infinality/</div><br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> ./build.sh</div><br />Можно установить выбранные пакеты, но сначала их надо найти:<br />2 .deb пакета в папке <em>freetype-infinality</em> и 1 .deb пакет в папке <em>fontconfig-infinality</em>.<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль: root</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><span style="color:#FF6A6A">[root@linuxforum.ru ~]#</span> cd .. &amp;&amp; dpkg -i freetype-infinality/*.deb fontconfig-infinality/*.deb</div><br />Вот пример до и после установки пакетов:<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p><a href="http://itmages.ru/image/view/1425492/84462a91"><span class="postimg"><img src="http://storage6.static.itmages.ru/i/14/0111/h_1389437270_9415832_84462a9159.png" alt="http://storage6.static.itmages.ru/i/14/0111/h_1389437270_9415832_84462a9159.png" /></span></a> <a href="http://itmages.ru/image/view/1424446/c837329d"><span class="postimg"><img src="http://storage5.static.itmages.ru/i/14/0110/h_1389360440_7931468_c837329d6a.png" alt="http://storage5.static.itmages.ru/i/14/0110/h_1389360440_7931468_c837329d6a.png" /></span></a></p></div></div><p><hr style=' border-color: #0000; border-top-width:1px; display: block;' /><br />Источник: <a href="http://forums.debian.net/viewtopic.php?f=16&amp;t=88545">http://forums.debian.net/viewtopic.php?f=16&amp;t=88545</a></p>]]></description>
			<author><![CDATA[null@example.com (kirillov3798)]]></author>
			<pubDate>Fri, 10 Jan 2014 10:34:45 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=386354#p386354</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=365637#p365637</link>
			<description><![CDATA[<p>Бывает так,что в Debian,по разным причинам&nbsp; (преимущественно,из разряда совместимости с оборудованием) проще поставить готовые ядра от Ubuntu,чем собирать самом,но это связанно с запуском браузера,поиском и переходом на сайт,скачиванием с последующей установкой...и всё это в Х-сах,а бывает,что и нет доспупа к иксам и нужно поставить ядро,чтобы завести видеокарту (например),а уже потом ,нормально загрузившись и все настроив,переустановить на на аутентичное дебиановское ядро &quot;trunk&quot; ,из экперементальной ветки,если кто не в курсе...</p><p>&nbsp; И вот,при столкновении с подобной проблемкой были написанны два простых скрипта,которые позволяют сходить на сайт и стянуть нужные ядра и заголовки в готовых *.deb пакетах,и отсеяв ненужное установитьс пересборкой DKMS всех основных модулей ядра (видео,фреймбуффер,и всё что должно быть пересобранно...),с пересозданием образов initrd и обновлением grub,разумеется...<br />&nbsp; Итак,первый скрипт &quot;<strong>kernup</strong>&quot; можно легко создать парой команд ниже:<br /></p><div class="codebox"><pre><code>echo &quot;#&quot;&#039;!&#039;&quot;/bin/bash&quot;  | sudo tee /usr/local/bin/kernup
echo -e &quot;dpkg -i *.deb &amp;&amp; apt-get install --reinstall nvidia-alternative nvidia-glx nvidia-driver nvidia-kernel-common nvidia-kernel-dkms nvidia-vdpau-driver nvidia-settings nvidia-xconfig xserver-xorg-video-nvidia vhba-dkms cdemu-daemon initramfs-tools aufs-tools unionfs-fuse grub-customizer &amp;&amp; ldconfig -v &amp;&amp; update-initramfs -vuk all &amp;&amp; update-grub&quot; | sudo tee -a /usr/local/bin/kernup
sudo chmod +x /usr/local/bin/kernup</code></pre></div><p>Ну а второй будет проще скопировать в любимый текстовый редактор и сделать исполняемым,как и первый,не забудьте...</p><p><strong>kupdater</strong><br /></p><div class="codebox"><pre><code>sudo nano /usr/local/bin/kupdater
copy/past
...
#!/bin/sh
mkdir /tmp/kernel
cd /tmp/kernel
DIALOG=${DIALOG=dialog}
tempfile=`tempfile 2&gt;/dev/null` || tempfile=/tmp/test$$
w3m  http://kernel.ubuntu.com/~kernel-ppa/mainline

$DIALOG --title &quot;Выберите версию ядра по имени подкаталога&quot; --clear \
        --inputbox &quot;Введите желаемую версию:&quot; 16 51 2&gt; $tempfile

wget -i  http://kernel.ubuntu.com/~kernel-ppa/mainline/$(cat $tempfile)
sleep 3
rm -f *.patch *.LOG BUILT CHANGES COMMIT *.gif* *.html* *_amd64.deb
ls -la 
echo &quot; Сделайте Ctrl+C ,чтобы отменить установку&quot;
sleep 10
kernup
cd
rm -rf /tmp/kernel
echo &quot;Установленна последняя версия ядра,перезагрузитесь и выполните  &quot;sudo service vboxdrv setup&quot;,если установлен VirtualBox &quot;
sleep 10
exit 0
...
Ctrl+X -&gt;Shift+Y -&gt;Enter
sudo chmod +x /usr/local/bin/kupdater</code></pre></div><p>&nbsp; Собственно,скрипт &quot;kupdater&quot; открывает в консольном браузере w3m страницу <a href="http://kernel.ubuntu.com/~kernel-ppa/mainline">http://kernel.ubuntu.com/~kernel-ppa/mainline</a>,которую вы можете спокойно пролистать,выбирая подходящую версию ядра и запомнив полное имя подкаталога&nbsp; выбранной версии,например &quot;v3.11.2-saucy/&quot;,спокойно закрыть,нажав последовательно &quot;q&quot; &amp; &quot;y&quot; в окне браузера и затем просто ввести это имя в чекбокс&nbsp; окна dialog [v3.11.2-saucy/] и нажав Ввод наблюдать,как будет производиться скачивание содержимого избранного подкаталога с ядрами,отсев ненужного и установка с помощью скрипта &quot;<strong>kernup</strong>&quot;,причём у вас будет время прервать работу скрипта простым нажатием Ctrl + C непосредственно перед началом установки ядер,если,вдруг,передумаете...<br /> Пример для последующего использования в связке с aptitude:<br /></p><div class="codebox"><pre><code>sudo aptitude full-upgrade &amp;&amp; sudo kupdater</code></pre></div><p>Enjoy!</p>]]></description>
			<author><![CDATA[null@example.com (deblanck)]]></author>
			<pubDate>Fri, 27 Sep 2013 22:52:58 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=365637#p365637</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=359143#p359143</link>
			<description><![CDATA[<p><strong>Возвращаем монтирование в /media после обновления до udisks2 в Debian/Ubuntu</strong></p><p>&nbsp; &nbsp; В последних версиях <strong>Ubuntu (12.10,13.04)</strong> и выходом последнего обновления кед (KDE-4.11) для <strong>Ubuntu 12.04</strong> из <strong>kubuntu-ppa-backpots-precise</strong>,как и в <strong>testing/unstable/experimental</strong> <strong>Debian</strong> по зависимостям <strong>kde-plasma-desktop</strong> (в Ubuntu) и,как минимум,новых версий <strong>gvfs-*</strong> в <strong>Debian</strong>,ставится новая версия автомонтировщика дисков и флешек <strong>udisks</strong> -&gt; <strong>udisks2</strong>,после установки которого многие с неудовольствием заметили изменение точки монтирования по дефолту с <strong>/media/LABEL</strong> на <strong>/media/$USER/LABEL</strong>.Зачем это сделали разработчики пакета для меня остаётся тайной,но,коль скоро мне удобнее монтировать всё в <strong>/media/*</strong>,по старому,то я,после 10-ти минутного гуглинга и медитаций решил эту проблему так:<br /></p><div class="codebox"><pre><code>mkdir build;cd build;apt-get source udisks2;cd udisks2*</code></pre></div><p>Так мы создадим локальный каталог для пересборки,перейдём туда,скачаем исходники пакета (записи <strong>deb-src ***</strong> должны быть раскомментированы в <strong>/etc/apt/sources.list &amp; /etc/apt/sources.list.d/*.list</strong>) и перейдём в каталог автоматически распакованных и пропатченных исходников пакета.Всё делается от пользователя.</p><div class="codebox"><pre><code>nano src/udiskslinuxfilesystems.c</code></pre></div><p>Откроем для редактирования файл описания основных действий по монтированию поддерживаемых ФС udisks2 и удалим/закомментируем выделенную зелёным часть кода под спойлером ниже<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p><span style="color: green"><br />...<br />&nbsp; /* If we know the user-name and it doesn&#039;t have any &#039;/&#039; character in<br />&nbsp; &nbsp;* it, mount in /media/$USER<br />&nbsp; &nbsp;*/<br />&nbsp; if (!fs_shared &amp;&amp; (user_name != NULL &amp;&amp; strstr (user_name, &quot;/&quot;) == NULL))<br />&nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; mount_dir = g_strdup_printf (&quot;/media/%s&quot;, user_name);<br />&nbsp; &nbsp; &nbsp; if (!g_file_test (mount_dir, G_FILE_TEST_EXISTS))<br />&nbsp; &nbsp; &nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /* First ensure that /media exists */<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (!g_file_test (&quot;/media&quot;, G_FILE_TEST_EXISTS))<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (g_mkdir (&quot;/media&quot;, 0755) != 0)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; g_set_error (error,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;UDISKS_ERROR,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;UDISKS_ERROR_FAILED,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot;Error creating directory /media: %m&quot;);<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; goto out;<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /* Then create the per-user /media/$USER */<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (g_mkdir (mount_dir, 0700) != 0)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; g_set_error (error,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;UDISKS_ERROR,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;UDISKS_ERROR_FAILED,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot;Error creating directory `%s&#039;: %m&quot;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;mount_dir);<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; goto out;<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /* Finally, add the read+execute ACL for $USER */<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (!add_acl (mount_dir, uid, error))<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (rmdir (mount_dir) != 0)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; udisks_warning (&quot;Error calling rmdir() on %s: %m&quot;, mount_dir);<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; goto out;<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br />&nbsp; &nbsp; &nbsp; &nbsp; }<br />&nbsp; &nbsp; }<br />...<br /></span></p></div></div><p>А заголовок следующей секции кода приведём к виду<br /></p><div class="codebox"><pre><code>/* otherwise to mounting in /media */</code></pre></div><p>Сохраним файл с изменениями и соберём пакет стандартными средствами debian-based систем<br /></p><div class="codebox"><pre><code>dpkg-buildpackage -rfakeroot</code></pre></div><p>Если сборка пройдёт без ошибок с первого раза,то в каталоге выше появятся *.deb пакеты udisks2 иже либы,доки и пр.<br />Если же в системе будет нехватка каких либо библиотек и зависимостей для сборки,то список недостающего будет виден в конце вывода сборки и нужно будет их доустановить.Например мне пришлось делать:<br /></p><div class="codebox"><pre><code>sudo aptitude install libpolkit-gobject-1-dev libpolkit-agent-1-dev libacl1-dev gobject-introspection libatasmart-dev</code></pre></div><p>но вам,возможно придётся установить немного больше - просто напечатайте &quot;sudo aptitude install ...&quot;,а затем выделите список недостающих сборочных зависимостей курсором <strong>gpm</strong> и вставьте по ПКМ,и нажмите Ввод,а когда все установится повторите:<br /></p><div class="codebox"><pre><code>dpkg-buildpackage -rfakeroot</code></pre></div><p>Пока не получите сообщение,что,дескать,содержимое пакета было измененно и сборка отменена...Тогда делаем: <br /></p><div class="codebox"><pre><code>dpkg-source --commit &amp;&amp; dpkg-buildpackage -rfakeroot</code></pre></div><p> <br />И после успешного завершения сборки чуть-чуть наводим лоску:<br /></p><div class="codebox"><pre><code>mkdir pkg &amp;&amp; mv -vf udisks2_2.1.0-4~ubuntu12.04~ppa1_i386.deb pkg &amp;&amp; cd pkg;dpkg -x udisks2_2.1.0-4~ubuntu12.04~ppa1_i386.deb debdir</code></pre></div><p>Cоздаём новый подкаталог,перемещаем туда <strong>только</strong> пакет самого udisks2 и распаковываем,затем делаем:<br /></p><div class="codebox"><pre><code>sed -i &#039;s/auth_admin/yes/g&#039; debdir/usr/share/polkit-1/actions/org.freedesktop.udisks2.policy
sed -i &#039;s/yes_keep/yes/g&#039; debdir/usr/share/polkit-1/actions/org.freedesktop.udisks2.policy
nano debdir/DEBIAN/control</code></pre></div><p>Т.е меняем настройки политик монтирования/размонтирования/доступа к устройствам для всех возможных пользователей вообще,что бы не морочить голову в дальнейшем и открываем для редактирования основной файл описания пакета.Следует поменять версию пакета на более высокую,например <strong>udisks2_2.9.9-9+custom</strong> и при желании изменить запись о мейнтейнере пакета.Затем соберем это дело с внесёнными правками и установим:<br /></p><div class="codebox"><pre><code>dpkg-deb -b debdir udisks2_2.9.9-9+custom_i386.deb &amp;&amp; sudo dpkg -i udisks2_2.9.9-9+custom_i386.deb &amp;&amp; cd ..;sudo dpkg -i *.deb</code></pre></div><p>Вот,собственно,и все - пересобрали и установили самую последнюю версию udisks2 и теперь все что мы будем монтировать в файловых менеджерах завязанных на него,будет монтироваться/размонтироваться в <strong>/media/*</strong>,от пользователя и без запроса пароля,но - ведь прилетят обновления и udisks2 снова вернется к &quot;неправильному&quot; поведению?А вот тут есть,как минимум два варианта,либо просто заморозить пересобранный пакет:<br /></p><div class="codebox"><pre><code>echo &quot;udisks2 hold&quot; | sudo dpkg --set-selections &amp;&amp; sudo apt-get update &amp;&amp; sudo aptitude full-upgrade</code></pre></div><p>либо организовать свой маленький репозиторий с помощью <strong>reprepro</strong> - <a href="http://anosov.org.ru/tag/reprepro/">http://anosov.org.ru/tag/reprepro/</a>,расшарить каталог с этой репой в Wuala,UbuntuOne или Dropbox,добавить в список источников (/etc/apt/sources.list),добавить туда пересобранный пакет&nbsp; и написать в файле /etc/apt/preferences ,к примеру следующее:<br /></p><div class="codebox"><pre><code>Package: *
Pin: origin &quot;dl.dropbox.com&quot;
Pin-Priority: 990</code></pre></div><p>Затем:<br /></p><div class="codebox"><pre><code>sudo apt-get update &amp;&amp; sudo aptitude full-upgrade</code></pre></div><p>И в последствии просто ложить все собираемые нужные пакеты в эту свою репу,что бы они всегда были доступны по сети с любого компа с debian-based системой на борту.Удобно,ИМХО!</p>]]></description>
			<author><![CDATA[null@example.com (deblanck)]]></author>
			<pubDate>Tue, 20 Aug 2013 00:35:02 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=359143#p359143</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=334987#p334987</link>
			<description><![CDATA[<p><strong>Wi-Fi на ноутбуке Dell inspirion 5720 с ОС Debian Squeeze</strong><br />Замечание:<em> пользователям особо не искушенным в системах, лучше позвать помощника.</em></p><p><strong>1.</strong> Если отсутствует подключение к репозиторию backports Debian Squeeze, то это нужно сделать. Любым текстовым редактором занесите в файл<strong> /etc/apt/sources.list</strong> строку <strong>deb <a href="http://backports.debian.org/debian-backports/">http://backports.debian.org/debian-backports/</a> squeeze-backports main contrib non-free</strong><br />и в консоли под рутом выполните команду:<br /></p><div class="codebox"><pre><code># aptitude update</code></pre></div><p><strong>2.</strong> Скачиваем и устанавливаем прошивки <strong> firmware-realtek_0.28+squeeze1_all.deb</strong> с <a href="http://packages.debian.org/stable/firmware-realtek">http://packages.debian.org/stable/firmware-realtek</a> и <strong>firmware-realtek_0.36+wheezy.1_all.deb</strong> с <a href="http://packages.debian.org/sid/all/firmware-realtek/download">http://packages.debian.org/sid/all/firm … k/download</a>. Это делаем для того, что бы при компиляции ядра и модуля Wi-Fi исключить сообщения об ошибках типа <br /></p><div class="codebox"><pre><code>W: Possible missing firmware /lib/firmware/rtl_nic/rtl8105e-1.fw for module r8169</code></pre></div><p>Устанавливаем прошивки:<br /></p><div class="codebox"><pre><code># dpkg -i firmware-realtek_0.28+squeeze1_all.deb
# dpkg -i firmware-realtek_0.36+wheezy.1_all.deb</code></pre></div><p><strong>3.</strong> Обновляем ядро. Я выбрал версию ядра от 3.4.0 до 3.6.0 лишь потому, что гугление меня вывело на сайт &quot;<strong>Собираем Broadcom драйвера wifi в Linux ядрах версий 3.4 и 3.5</strong>&quot;. Пересборка ядра хорошо описана на сайте <a href="http://www.alexor.ru/kak_eto_rabotaet/215/">http://www.alexor.ru/kak_eto_rabotaet/215/</a>. К работе с инструкцией подходите с пониманием темы и вниманием, т.к. пути, версии и т.п. могут отличаться от Ваших. Ядро скачиваем из архива ядер <a href="https://www.kernel.org/">https://www.kernel.org/</a> на Ваше усмотрение,&nbsp; свежее ядро можно забрать в <a href="http://oscar.aptosid.com/debian/pool/main/l/linux-aptosid/">http://oscar.aptosid.com/debian/pool/ma … x-aptosid/</a>. В операции сборки ядра <strong>make menuconfig</strong>, ничего не меняя в опциях, я использовал команду <strong>Load an Alternate Configuration File.</strong> Процесс компиляции долгий и по завершении его делаем reboot.<br /><strong>4.</strong> Теперь собираем модуль. Как это сделать подробно описано здесь <a href="http://lsoft.daraba.ru/content/broadcom-драйвера-wifi-в-linux-ядрах-версий-34-и-35">http://lsoft.daraba.ru/content/broadcom … ий-34-и-35</a>. Тут я не стал выполнять цепочку команд:<br /></p><div class="codebox"><pre><code># rmmod ssb
# rmmod bcma
# rmmod wl
# insmod wl</code></pre></div><p>Перегружаемся для того, чтобы посмотреть - есть-ли автозагрузка модуля <strong>wl.ko</strong>. Если этого не произошло, то его нужно вновь установить командой:<br /></p><div class="codebox"><pre><code># insmod wl</code></pre></div><p>и вручную прописать в автозагрузку.<br /><strong>5.</strong> Устанавливаем драйвер<strong> wireless broadcom</strong>, используя deb-пакет <strong>wireless-bcm43142-dkms_6.20.55.19-1_amd64.deb</strong>. Скачиваем его с сайта <strong>Jasmine&#039;s Debian Repository</strong> <a href="http://jas.gemnetworks.com/debian/pool/main/w/wireless-bcm43142/wireless-bcm43142-dkms_6.20.55.19-1_amd64.deb">http://jas.gemnetworks.com/debian/pool/ … _amd64.deb</a> и устанавливаем драйвер:<br /></p><div class="codebox"><pre><code># dpkg -i wireless-bcm43142-dkms_6.20.55.19-1_amd64.deb</code></pre></div><p>Перегружаемся. И либо Wi-Fi радаром видим список точек подключения, или с консоли командой:<br /></p><div class="codebox"><pre><code># ifconfig -a</code></pre></div><p>видим устройство wlan0. Вот и все.<br />Далее стандартная сетевая настройка под конкретный Ваш маршрутизатор (роутер).</p>]]></description>
			<author><![CDATA[null@example.com (AnaStas)]]></author>
			<pubDate>Mon, 18 Mar 2013 18:35:04 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=334987#p334987</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=323854#p323854</link>
			<description><![CDATA[<p><strong>Debian + Squid + NTLM + Samba + SAMS2</strong></p><p>Настроим kerberos:<br /></p><div class="codebox"><pre><code># apt-get install krb5-doc krb5-user krb5-config</code></pre></div><p>Правим /etc/krb5.conf:<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>[libdefaults] <br />&nbsp; &nbsp;default_realm = DOMAIN.LOCAL <br />&nbsp; &nbsp;krb4_config = /etc/krb.conf <br />&nbsp; &nbsp;krb4_realms = /etc/krb.realms <br />&nbsp; &nbsp;kdc_timesync = 1 <br />&nbsp; &nbsp;ccache_type = 4 <br />&nbsp; &nbsp;forwardable = true <br />&nbsp; &nbsp;proxiable = true <br />&nbsp; &nbsp; <br />... ... ... </p><p>[realms] <br />&nbsp; &nbsp;DOMAIN.LOCAL = { <br />&nbsp; &nbsp; &nbsp; kdc = pdc.domain.local <br />&nbsp; &nbsp; &nbsp; master_kdc = pdc.domain.local <br />&nbsp; &nbsp; &nbsp; admin_server = pdc.domain.local <br />&nbsp; &nbsp; &nbsp; default_domain = domain.local <br />&nbsp; &nbsp;} </p><p>[domain_realm] <br />&nbsp; &nbsp;domain.local = DOMAIN.LOCAL <br />&nbsp; &nbsp;.domain.local = DOMAIN.LOCAL </p><p>[login] <br />&nbsp; &nbsp;krb4_convert = true <br />&nbsp; &nbsp;krb4_get_tickets = false </p><p>[logging] <br />&nbsp; &nbsp;default = FILE:/var/log/krb5libs.log <br />&nbsp; &nbsp;kdc = FILE:/var/log/krb5dc.log <br />&nbsp; &nbsp;admin_server = FILE:/var/log/ksadmind.log</p></div></div><p>Проверяем работу, авторизуемся в домене.<br /></p><div class="codebox"><pre><code># kinit administrator@DOMAIN.LOCAL 
Password for administrator@DOMAIN.LOCAL:</code></pre></div><div class="codebox"><pre><code># klist</code></pre></div><p>Должно быть примерно следующее:<br /></p><div class="codebox"><pre><code>Ticket cache: FILE:/tmp/krb5cc_0 
Default principal: administrator@DOMAIN.LOCAL 
 
Valid starting     Expires            Service principal 
03/20/12 14:33:54  03/21/12 00:34:05  krbtgt/DOMAIN.LOCAL@DOMAIN.LOCAL 
        renew until 03/21/12 14:33:54</code></pre></div><p>Поставим winbind и samba<br /></p><div class="codebox"><pre><code># apt-get install winbind samba</code></pre></div><p>Правим файл /etc/samba/smb.conf <br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p># NetBIOS-имя хоста (должно совпадать с значением в hosts)<br />netbios name = PDC</p><p># NetBIOS имя домена<br />workgroup = DOMAIN</p><p># область работы kerberos \<br /># (совпадает с именем домена и записывается прописными буквами)<br />realm = DOMAIN.LOCAL</p><p># имена сервера паролей - КД<br />password server = pdc.domain.local</p><p># уровень безопасности (ads - член домена AD)<br />security = ads</p><p># метод аутентификации smbd (с помощью winbind)<br />auth methods = winbind</p><p># НЕ заставлять nmbd-сервер быть мастер-сервером Wins<br />preferred master = No</p><p># оприеделить лог-файл (по умолчанию - сислог)<br />log file = /var/log/samba/smb.log</p><p># уровень логирования (можно менять от 0-минимальный до 9 - максимальный)<br />log level = 0 vfs:2</p><p># не писать в syslog<br />syslog = 0</p><p># действие при крушении демона<br />panic action = /usr/share/samba/panic-action %d</p><p># принтеры нам не нужны<br />load printers = no<br />show add printer wizard = no<br />disable spoolss = yes<br />printing = cups<br />printcap name = /dev/null</p><p># использовать только порт 139<br /># (немного ускоряет обращения и избавляет от некоторых ошибок в логе)<br />smb ports = 139</p><p># файл ручного мапинга пользователей (создать файл вручную)<br />username map = /etc/samba/smbusers</p><p># ускорим работу самба (у меня отключено)<br />#socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192</p><p># кодировки<br />dos charset = cp866<br />unix charset = UTF-8</p><p># авторизация клиента<br />client NTLMv2 auth = Yes<br />client lanman auth = No<br />client plaintext auth = No<br />encrypt passwords = yes</p><p># настройки демона winbind:<br /># мапить пользователей на следующий диапазон ЮИД<br />idmap uid = 10000-20000</p><p># мапить группы на следующий диапазон ГИД<br />idmap gid = 10000-20000</p><p># разделитель домена и объекта (по желанию)<br />winbind separator = ^</p><p># разрешить приложениям (например passwd) перечислять пользователей<br /># и группы из домена AD (необязательно)<br />winbind enum users = Yes<br />winbind enum groups = Yes</p><p># разрешить сторонним приложениям ссылаться на пользователей AD<br /># как на локальных, не указывая имя домена и символ-разделитель<br />winbind use default domain = yes</p><p># разрешить кэширование авторизованных пользователей<br /># (на случай, если КД станет недоступен) - на время настройки лучше отключить<br />winbind offline logon = Yes<br />winbind cache time = 900</p><p># не помню зачем добавил, были какие то проблемы<br />winbind:forcesamlogon = True</p></div></div><p>Проверяем конфиг:<br /></p><div class="codebox"><pre><code># testparm</code></pre></div><p>Правим файл /etc/nsswitch.conf </p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>passwd: compat winbind <br />group: compat winbind <br />shadow: compat winbind <br />hosts: files dns <br />networks: files <br />protocols: db files <br />services: db files <br />ethers: db files <br />rpc: db files <br />netgroup: nis</p></div></div><p>Рестартанем samba и winbind.<br />Теперь необходимо завести машину в домен. <br /></p><div class="codebox"><pre><code># net ads join -U administrator</code></pre></div><p>Потестим winbind: <br /></p><div class="codebox"><pre><code># wbinfo -p
Ping to winbindd succeeded</code></pre></div><p>Ставим squid: <br /></p><div class="codebox"><pre><code># apt-get install squid</code></pre></div><p>Пишем конфигурационный файл /etc/squid/squid.conf <br />Обязательно использовать наименования секций, самс по ним ориентируется, когда правит конфиг.</p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>#&nbsp; ПАРАМЕТРЫ АУТЕНТИФИКАЦИИ (AUTHENTIFICATION)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: auth_param<br />#&nbsp; -------------------------------------<br />#&nbsp; Тег используется для определения параметров для различных схем аутентификации<br />#&nbsp; поддерживаемых Squid.</p><p>auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp<br />auth_param ntlm children 70<br />auth_param ntlm keep_alive off</p><p>#&nbsp; КОНТРОЛЬ ДОСТУПА (ACCESS CONTROLS)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: acl<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг позволяет задавать ACL.</p><p>acl ALL src 0.0.0.0/0 <br />acl MANAGER proto cache_object <br />acl DOMAIN src 192.168.0.0/16 <br />acl LOCALHOST src 127.0.0.1/32 <br />acl TO_LOCALHOST src 127.0.0.0/8 <br />acl PASSWORD proxy_auth REQUIRED <br />acl PURGE method PURGE <br />acl CONNECT method CONNECT </p><p>#&nbsp; Порты <br />acl Safe_ports port 21&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # ftp <br />acl Safe_ports port 70&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # gopher <br />acl Safe_ports port 80&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # http <br />acl Safe_ports port 81&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # http <br />acl Safe_ports port 210&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# wais <br />acl Safe_ports port 280&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# http-mgmt <br />acl Safe_ports port 443&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# https <br />acl Safe_ports port 488&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# gss-http <br />acl Safe_ports port 554&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# kamera <br />acl Safe_ports port 563&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# snews <br />acl Safe_ports port 591&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# filemaker <br />acl Safe_ports port 777&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# multiling http <br />acl Safe_ports port 1863&nbsp; &nbsp; &nbsp; &nbsp; # msn <br />acl Safe_ports port 2042&nbsp; &nbsp; &nbsp; &nbsp; # mail.ru agent <br />acl Safe_ports port 5222&nbsp; &nbsp; &nbsp; &nbsp; # jabber <br />acl Safe_ports port 5223&nbsp; &nbsp; &nbsp; &nbsp; # jabber SSL <br />acl Safe_ports port 4500&nbsp; &nbsp; &nbsp; &nbsp; # kamera <br />acl Safe_ports port 8006&nbsp; &nbsp; &nbsp; &nbsp; # proxmox <br />acl Safe_ports port 9000&nbsp; &nbsp; &nbsp; &nbsp; # java, kamera <br />acl Safe_ports port 1025-65535&nbsp; # unregistered ports <br />acl SSL_ports port 443 563 1863 2083 5222 8006 8443 10443 33333-33335 30003 9000 44443-44445&nbsp; &nbsp;# SSL </p><p>#&nbsp; TAG: http_access <br />#&nbsp; ------------------------------------- <br />#&nbsp; Этот тэг разрешает или запрещает доступ основываясь на имеющихся ACL </p><p>#&nbsp; Разрешаем доступ cachemgr с локального хоста <br />http_access allow MANAGER LOCALHOST <br />http_access deny MANAGER </p><p>#&nbsp; Разрешаем PURGE запросы только с локального хоста <br />http_access allow PURGE LOCALHOST <br />http_access deny PURGE </p><p>#&nbsp; Запрещаем доступ по незнакомым портам <br />http_access deny !Safe_ports </p><p>#&nbsp; Запрещаем метод CONNECT к другим портам кроме SSL портов <br />http_access allow IBANK_DST <br />http_access deny CONNECT !SSL_ports </p><p>#&nbsp; Настоятельно рекомендуется, чтобы к сервисам localhost имели только локальные <br />#&nbsp; пользователи и локальные программы. Из этих соображений следует запретить <br />#&nbsp; доступ к localhost службам и сервисам <br />http_access deny TO_LOCALHOST </p><p>#&nbsp; Пишем сюда свои собственные правила <br />http_access allow LOCALHOST <br />http_access allow PASSWORD </p><p>#&nbsp; А все остальные идут на <strong><span style="color: red">CENSORED</span></strong><br />http_access deny ALL </p><p>#&nbsp; TAG: icp_access<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг разрешает или запрещеает доступ по ICP порту основываясь на ACL.</p><p>icp_access allow LOCALHOST<br />icp_access deny ALL</p><p>#&nbsp; СЕТЕВЫЕ НАСТРОЙКИ (NETWORK OPTIONS)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: http_port<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг устанавливает порт на котором, Squid будет слушать HTTP запросы<br />#&nbsp; клиента.</p><p>http_port 3128</p><p>#&nbsp; ДРУГИЕ АРГУМЕНТЫ ВЫБОРА (NEIGHBOR SELECTION ALGORITHM)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: hierarchy_stoplist<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг задает список слов, которые при нахождении их (этих слов) в URL,<br />#&nbsp; сообщают Squid то, что объект расположенный по этому URL надо брать<br />#&nbsp; напрямую, а не из кэша.</p><p>hierarchy_stoplist cgi-bin ?</p><p>#&nbsp; НАСТРОЙКИ ПАМЯТИ КЭШИРОВАНИЯ (MEMORY CACHE OPTIONS)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: cache_mem&nbsp; &nbsp; (bytes)<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг определяет количество памяти для использования под:<br />#&nbsp; * In-Transit objects (Транзитные объекты)<br />#&nbsp; * Hot Objects (&quot;Горячие&quot; объекты, т.е. часто запрашиваемые)<br />#&nbsp; * Negative-Cached objects</p><p>cache_mem 8 MB</p><p>#&nbsp; TAG: maximum_object_size_in_memory&nbsp; &nbsp; (bytes)<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг задает размер объекта который может хранится в памяти.</p><p>maximum_object_size_in_memory 8 KB</p><p>#&nbsp; TAG: broken_posts<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг определяет дописывание дополнительных CRLF после тела PUT/POST запроса.</p><p>acl bad_hosts dstdomain portal.portal.ru<br />broken_posts allow bad_hosts</p><p>#&nbsp; ОПЦИИ ЛОГИРОВАНИЯ (LOGFILE OPTIONS)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: access_log<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг определяет местоположение журнала access.log в который будет<br />#&nbsp; производится запись клиентской активности.</p><p>access_log /var/log/squid/access.log squid<br />buffered_logs on</p><p>#&nbsp; URL REWRITING<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: location_rewrite_program<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг определяет местоположение исполнительного файла программы<br />#&nbsp; Location rewriter, которая используется для преобразования URL в ответах<br />#&nbsp; сервера.</p><p>url_rewrite_program /usr/bin/samsredir</p><p>#&nbsp; TAG: location_rewrite_concurrency<br />#&nbsp; -------------------------------------<br />#&nbsp; &nbsp;Этот тэг определяет возможное число запросов, к каждому экземпляру<br />#&nbsp; &nbsp;преобразователя, которые могут быть обрабатыватся одновременно (параллельно).</p><p>location_rewrite_concurrency 0</p><p>#&nbsp; TAG: location_rewrite_access<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг определяет список, содержащий запросы, которые будут<br />#&nbsp; перенаправлены к преобразователю.</p><br /><p>#&nbsp; ОПТИМИЗАЦИЯ КЭШИРОВАНИЯ (TUNING THE CACHE)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: cache<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг позволяет определить объекты, которые не будут кэшироватся.</p><p>acl QUERY urlpath_regex cgi-bin \?<br />cache deny QUERY</p><p>#&nbsp; TAG: refresh_pattern<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг позволяет настраивать дополнительные параметры оптимизации кэширования.</p><p>refresh_pattern ^ftp:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1440&nbsp; &nbsp; 20%&nbsp; &nbsp; 10080<br />refresh_pattern ^gopher:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1440&nbsp; &nbsp; 0%&nbsp; &nbsp; 1440<br />refresh_pattern -i (/cgi-bin/|\?)&nbsp; &nbsp; &nbsp; &nbsp; 0&nbsp; &nbsp; 0%&nbsp; &nbsp; 0<br />refresh_pattern (Release|Package(.gz)*)$&nbsp; &nbsp; 0&nbsp; &nbsp; 20%&nbsp; &nbsp; 2880<br />refresh_pattern .&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0&nbsp; &nbsp; 20%&nbsp; &nbsp; 4320</p><p>#&nbsp; НАСТРОЙКИ HTTP (HTTP)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: upgrade_http0.9<br />#&nbsp; -------------------------------------<br />#&nbsp; не знаю, по дефолту стоит, пусть будет пока что</p><p>acl SHOUTCAST rep_header X-HTTP09-First-Line ^ICY\s[0-9]<br />upgrade_http0.9 deny SHOUTCAST</p><p>#&nbsp; TAG: broken_vary_encoding<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг определяет запрещение использования ETag.</p><p>acl APACHE rep_header Server ^Apache<br />broken_vary_encoding allow APACHE</p><p>#&nbsp; TAG: extension_methods<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг позволяет добавить расширенные методы запросов.</p><p>extension_methods REPORT MERGE MKACTIVITY CHECKOUT</p><p>#&nbsp; TAG: header_access<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг является заменой старого тэга &#039;anonymize_headers&#039; и ещё более<br />#&nbsp; старого &#039;http_anonymizer&#039;.</p><p>#&nbsp; Куки - передача и прием, куда же без них...<br />header_access Cookie allow all<br />header_access Set-Cookie allow all</p><p>#&nbsp; некоторые странички-сайты требуют источник перехода в целях защиты от ботов<br />header_access Referer allow all</p><p>#&nbsp; ПРОЧЕЕ (MISCELLANEOUS)<br />#&nbsp; -----------------------------------------------------------------------------</p><p>#&nbsp; TAG: forwarded_for&nbsp; &nbsp; &nbsp;on|off<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг определяет, будет ли Squid вставлять IP адрес клиента в заголовок<br />#&nbsp; X-Forwarded-For.</p><p>forwarded_for off</p><p>#&nbsp; TAG: coredump_dir<br />#&nbsp; -------------------------------------<br />#&nbsp; Этот тэг определяет местоположение директории, которая будет содержать core файлы.</p><p>coredump_dir /var/spool/squid</p><p>error_directory /usr/share/squid/errors/Russian-koi8-r</p><p># Чтобы по фтп работал с ascii<br />ftp_telnet_protocol off</p><p># Дескрипторы (дефолт 1024)<br />max_filedesc 4096</p></div></div><p>Проверяем ntlm авторизацию: <br /></p><div class="codebox"><pre><code># ntlm_auth --username=USER --domain=DOMAIN --dianostics password</code></pre></div><p>Создаем кэш (squid должен быть остановлен): <br /></p><div class="codebox"><pre><code># squid -z</code></pre></div><p>Стартуем сквид.</p><p>Зависимости для sams2:<br /></p><div class="codebox"><pre><code># apt-get install apache2 apache2-doc apache2-utils ssl-cert mysql-server libmysqlclient-dev libapache2-mod-php5 php5 php5-common php5-dev php5-mcrypt php5-imagick php5-mysql libpcrecpp0 doxygen debhelper php5-gd libpcre3 libpcre3-dev libldap2-dev build-essential checkinstall</code></pre></div><p>Скачиваем .deb пакеты sams2, устанавливаем их, а дальше в веб-интерфейсе настраиваем под свои нужды. Так же следует проверить /etc/sams2.conf (не исключено другое расположение), скорректировать название базы, пользователя, пароль, а так же проверить пути. Как пример:</p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>;<br />; This is config file for sams2<br />; A line started with ; or # is a comment<br />;</p><p>; Database engine<br />; To use an engine it must be enabled during configuration<br />DB_ENGINE=MySQL<br />;DB_ENGINE=PostgreSQL<br />;DB_ENGINE=unixODBC</p><p>; Hostname where database is runing<br />; This parameter is not neccesary for unixODBC engine<br />DB_SERVER=localhost</p><p>; Database name<br />SAMS_DB=sams2db</p><p>; <br />ODBC=0<br />PDO=0<br />; Source as defined in odbc.ini<br />; This parameter is not neccesary for engine other than unixODBC<br />ODBCSOURCE=sams_mysql</p><p>; Username for database connection<br />DB_USER=sams</p><p>; Password for database connection<br />DB_PASSWORD=samspasswd</p><p>SQUIDCACHEFILE=access.log<br />SQUIDROOTDIR=/etc/squid<br />SQUIDLOGDIR=/var/log/squid<br />SQUIDCACHEDIR=/var/spool/squid</p><p>WBINFOPATH=/usr/bin<br />SAMSPATH=/usr<br />SQUIDPATH=/usr/sbin<br />SQUIDGUARDLOGPATH=/var/log<br />SQUIDGUARDDBPATH=/etc/squid<br />RECODECOMMAND=iconv -f KOI8-R -t 866 %finp &gt; %fout<br />REJIKPATH=/usr/local/rejik<br />SHUTDOWNCOMMAND=shutdown -h now</p><p>; Proxy id<br />; Identificator of proxy, starting from 1<br />CACHENUM=1</p></div></div>]]></description>
			<author><![CDATA[null@example.com (Sinder)]]></author>
			<pubDate>Tue, 29 Jan 2013 06:47:41 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=323854#p323854</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=301548#p301548</link>
			<description><![CDATA[<p><strong>Debian Wheezy MATE</strong></p><p>1) Устанавливаем Debian с CD netinst в любой expert mode, подняв сеть, снимаем в &quot;Выборе программного обеспечения&quot; галку с &quot;Графическая оболочка&quot;</p><p>2) Грузимся рутом</p><p>3) Ставим:<br />xorg (чтоб было)<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">apt-get install xorg</div><br />Midnight Commander (удобно)<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">apt-get install mc</div></p><p>4) Редактируем /etc/apt/source.list добавляя две строки:<br /></p><div class="codebox"><pre><code>deb http://repo.mate-desktop.org/debian wheezy main
deb http://packages.mate-desktop.org/repo/debian wheezy main</code></pre></div><p>5) Устанавливаем собственно MATE<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">apt-get update</p><p>apt-get install mate-archive-keyring</p><p>apt-get update</p><p>apt-get install mate-core</p><p>apt-get install mate-desktop-environment</div></p><p>6) Оконного менеджера разработчики не включили, поэтому устанавливаем lightdm:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">apt-get install lightdm</div></p><p>7) И конечно, поскольку у нас девственная ОС без ничего, ставим Synaptic:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">apt-get install synaptic</div></p><p>Всё, перегружаемся<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">reboot -f</div></p><p>Имеем чистый <strong>Debian MATE</strong></p><p><em>Примечание: Вместо lightdm можно (а если требуется несколько оболочек, то желательно) поставить kdm, а вот, к примеру, gdm3 нельзя, потянет кучу зависимостей и будет пытаться запустить неполный gnome3-classic</em></p><p><a href="http://wiki.mate-desktop.org/download">На основе материалов mate-desktop.org</a></p>]]></description>
			<author><![CDATA[null@example.com (karl_muenhgausen)]]></author>
			<pubDate>Thu, 04 Oct 2012 09:20:06 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=301548#p301548</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=269232#p269232</link>
			<description><![CDATA[<p><strong>Исправляем отображение загрузочной темы Plymouth&nbsp; при использовании проприетарных драйверов NVIDIA и AMD/ATI</strong><br />1. Ставим пакет v86d<br /></p><div class="codebox"><pre><code># apt-get install v86d</code></pre></div><p>2. Загружаем нужный модуль<br /></p><div class="codebox"><pre><code># modprobe uvesafb</code></pre></div><p>3. Смотрим список поддерживаемых разрешений экрана:<br /></p><div class="codebox"><pre><code># cat /sys/bus/platform/drivers/uvesafb/uvesafb.0/vbe_modes | sort</code></pre></div><p>4. В файле /etc/default/grub меняем строчку<br /></p><div class="codebox"><pre><code>GRUB_CMDLINE_LINUX_DEFAULT=&quot;quiet splash&quot;</code></pre></div><p>на <br /></p><div class="codebox"><pre><code>GRUB_CMDLINE_LINUX_DEFAULT=&quot;quiet splash nomodeset video=uvesafb:mode_option=1024x768-32,mtrr=3,scroll=ywrap&quot;</code></pre></div><p>и расскоментируем строчку GRUB_GFXMODE добавив нужное рарешение, к примеру 1024х768<br />5. Добавим тот же параметр и в initramfs-tools/modules :<br /></p><div class="codebox"><pre><code># echo &quot;uvesafb mode_option=1024x768-32 mtrr=3 scroll=ywrap&quot; &gt;&gt; /etc/initramfs-tools/modules</code></pre></div><p>6. Затем завершаем настройку командами<br /></p><div class="codebox"><pre><code> # echo FRAMEBUFFER=y &gt; /etc/initramfs-tools/conf.d/splash
# update-initramfs -u
# update-grub</code></pre></div><p>После этого необходимо перезагрузить систему и нашему взору предстванет исправленный и ровный&nbsp; Plymouth!</p><p><strong>Проверено на Debian Wheezy с ядром linux-3.3 и проприетарными драйверами 295.33.<br />Видеокарта NVIDIA GT 120/тема Plymouth - Solar</strong></p>]]></description>
			<author><![CDATA[null@example.com (Dr House)]]></author>
			<pubDate>Wed, 18 Apr 2012 12:06:44 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=269232#p269232</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=229534#p229534</link>
			<description><![CDATA[<p><strong>Установка MATE на debian sid:</strong><br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">nano /etc/apt/sources.list</div><br />Пишем там:<br /></p><div class="codebox"><pre><code>deb http://tridex.net/repo/debian sid main</code></pre></div><p><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">apt-get update</div><br />в конце получим ошибку о не определенном ключе, нам это не мешает, на сайте разработчиков нет ключа...<br />ставим:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">aptitude install mate-core mate-desktop-environment mate-desktop </div> <br />будет ругать о том что есть не разрешенные зависимости с пакетом <strong>libgucharmap7</strong>, в репах sid для процессоров i386 и x64 его нет... так что берем его из squeeze:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"><br />wget <a href="http://ftp.us.debian.org/debian/pool/main/g/gucharmap/libgucharmap7_2.30.3-1_i386.deb">http://ftp.us.debian.org/debian/pool/ma … 1_i386.deb</a> /home/ваше_имя<br />cd /home/ваше_имя<br />dpkg -i libgucharmap7_2.30.3-1_i386.deb<br /></div><br />и начинаем установку (или продолжаем если проблема была)<br />В mate почему то нет менеджера сессий, так что я ставил <strong>lightdm</strong> (потому что gdm3 тянет много зависимостей) а так выбирайте на свой вкус<br />Так же в mate автоматически не все пакеты ставятся, я ставил руками:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">aptitude search mate</div><br />и ставьте все пакеты без пометки <strong>i</strong> с началом <strong>mate-</strong></p><p>Вот и все, првоерено все работает отлично</p><p><strong>ВНИМАНИЕ!</strong> <span class="bbu">ставить только на debian sid так как разработчики не предоставили еще репозитория для веток stable и testing</span></p>]]></description>
			<author><![CDATA[null@example.com (foozzi)]]></author>
			<pubDate>Wed, 30 Nov 2011 03:51:54 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=229534#p229534</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=224254#p224254</link>
			<description><![CDATA[<p><strong>Шрифты в Debian Squeeze как в Ubuntu</strong></p><p>Готовые библиотеки для Debian Squeeze, позволяющие отображать шрифты со сглаживанием, как в Ubuntu.<br />Распаковываем архив, устанавливаем пакеты командой dpkg -i *.deb, после чего перегружаем XServer командой /etc/init.d/gdm3 restart (под рутом).</p><p><a href="http://letitbit.net/download/82328.824f956af441b0580e73ca13c7ae/Cairo.zip.html">http://letitbit.net/download/82328.824f … o.zip.html</a></p><p>Скриншоты выложены в ветке <a href="http://linuxforum.ru/viewtopic.php?pid=224209#p224209">http://linuxforum.ru/viewtopic.php?pid=224209#p224209</a></p><p><span style="color: red">Сообщения с обсуждением перенесены в тему<br /><a href="http://linuxforum.ru/viewtopic.php?id=1125">http://linuxforum.ru/viewtopic.php?id=1125</a><br />Напоминаю, эта тема только <strong>для готовых решений</strong>, для обсуждений есть своя тема.<br />(<strong>durc</strong>)</span></p>]]></description>
			<author><![CDATA[null@example.com (Michail_Ul)]]></author>
			<pubDate>Thu, 10 Nov 2011 07:21:02 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=224254#p224254</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=204086#p204086</link>
			<description><![CDATA[<p><strong>LNMP веб-сервер – nginx &amp; mysql &amp; php.</strong><br />Основная функциональность HTTP-сервера:<br />- обслуживание статических запросов, индексных файлов, автоматическое создание списка файлов, кэш дескрипторов открытых файлов;<br />- акселерированное проксирование с кэшированием, простое распределение нагрузки и отказоустойчивость;<br />- акселерированная поддержка удалённых FastCGI серверов с кэшированием, простое распределение нагрузки и отказоустойчивость;<br />- модульность, фильтры, в том числе сжатие (gzip), byte-ranges (докачка), chunked ответы, XSLT-фильтр, SSI-фильтр, преобразование изображений; несколько подзапросов на одной странице, обрабатываемые в SSI-фильтре через прокси или FastCGI, выполняются параллельно.<br />- поддержка SSL и расширения TLS SNI;<br />Функциональность почтового прокси-сервера:<br />- MAP и POP3: перенаправление пользователя на IMAP или POP3-бэкенд с использованием внешнего HTTP-сервера аутентификации;<br />- SMTP: проверка пользователя с помощью внешнего HTTP-сервера аутентификации и перенаправление соединения на внутренний SMTP-сервер;<br />методы аутентификации:<br />- POP3: USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;<br />- IMAP: LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;<br />- SMTP: AUTH LOGI/ PLAIN/CRAM-MD5;<br />- поддержка SSL;<br />- поддержка STARTTLS и STLS;<br />Официальный сайт Nginx <a href="http://sysoev.ru">http://sysoev.ru</a>/</p><p>Основное отличие от многих мануалов в сети, то что тут у нас обмен данными между Nginx и Php происходит через unix socket (unix:/tmp/php-fpm.sock), а не через порт tcp (upstream 127.0.0.1:9000).<br />Итак приступим.</p><ul><li><p><strong>Шаг 1:</strong> редактируем sources.list:</p></li></ul><div class="codebox"><pre><code>$ nano /etc/apt/sources.list</code></pre></div><div class="codebox"><pre><code># Официальный репозиторий Debian
deb ftp://ftp.ru.debian.org/debian/ stable main contrib non-free
# Debian Squeeze - обновления
deb ftp://ftp.ru.debian.org/debian squeeze-updates main
# Debian Squeeze - обновления безопасности
deb ftp://ftp.ru.debian.org/debian-security squeeze/updates main non-free contrib
# Debian Squeeze - backports
deb ftp://ftp.ru.debian.org/debian-backports squeeze-backports main contrib
# Debian Squeeze - proprsed - updates
deb ftp://ftp.ru.debian.org/debian squeeze-proposed-updates main contrib non-free
# Dotdeb - The repository for Debian-based LAMP servers
deb http://packages.dotdeb.org stable all</code></pre></div><p>Далее стандартно выполняем следующие:<br />Устанавливаем ключ для Dotdeb:<br /></p><div class="codebox"><pre><code>$ wget http://www.dotdeb.org/dotdeb.gpg
$ cat dotdeb.gpg | apt-key add -
$ rm -v dotdeb.gpg</code></pre></div><p>Обновляемся:<br /></p><div class="codebox"><pre><code>$ aptitude update
$ aptitude full-upgrade</code></pre></div><p>Теперь можно начать установку LNMP сервера:<br />Сам nginx:<br /></p><div class="codebox"><pre><code>$ aptitude install nginx</code></pre></div><p>Или nginx-common nginx-extras:<br /></p><div class="codebox"><pre><code>$ aptitude install nginx-common nginx-extras</code></pre></div><p>Php5 и модули (не обязательно ставить все главное поставить php5-fpm):<br /></p><div class="codebox"><pre><code>$ aptitude install php5 php5-cli php5-common php5-fpm php5-cgi php5-curl php5-gd php5-apc</code></pre></div><p>Mysql и php-mysql:<br /></p><div class="codebox"><pre><code>$ aptitude install mysql-server mysql-client php5-mysql</code></pre></div><p>Также если это «свежая» установка я обычно сразу ставлю необходимые мелочи:<br /></p><div class="codebox"><pre><code>$ aptitude install vim vsftpd grc zsh most mc firmware-linux-free zip unzip p7zip-full hwinfo unrar rar rsync</code></pre></div><ul><li><p><strong>Шаг 2:</strong> Подготовка каталога для нашего сервера. Создадим /var/www, если его нет, назначим владельца и выставим права на него:</p></li></ul><div class="codebox"><pre><code>$ mkdir /var/www
$ chmod 755 /var/www
$ chown www-data:www-data /var/www</code></pre></div><p>Создадим от имени пользователя www-data тестовый файл php, для проверки работоспособности:<br /></p><div class="codebox"><pre><code>$ su www-data -c &quot;echo &#039;&lt;?php phpinfo(); ?&gt; &#039; &gt; /var/www/index.php &amp;&quot;</code></pre></div><ul><li><p><strong>Шаг 3:</strong> Настраиваем php.</p></li></ul><p>Сам по себе nginx понимает только html, для того чтобы он начал понимать php существует модуль php-fpm (который мы уже установили), теперь необходимо его настроить. Есть два способа которыми этот обмен может происходить: через tcp порт (по умолчанию) или через юникс сокет.<br />Настраивается это в файле /etc/php5/fpm/pool.d/www.conf:<br /></p><div class="codebox"><pre><code>$ nano /etc/php5/fpm/pool.d/www.conf</code></pre></div><p>Если мы хотим чтобы обмен происходил через порт – просто убеждаемся что строчка listen = 127.0.0.1:9000 присутствует и не закоментирована.<br />Но я всё же рекомендую настроить через сокет, для этого поставим знак комментария (для php конф. файла это»;») перед listen = 127.0.0.1:9000 и добавим listen = /tmp/php-fpm.sock<br /></p><div class="codebox"><pre><code>; listen = 127.0.0.1:9000
listen = /tmp/php-fpm.sock</code></pre></div><ul><li><p><strong>Шаг 4:</strong> Конфигурация сервера /etc/nginx/sites-available/default:</p></li></ul><p>Соответсвенно с предидущими настройками редактируем строку fastcgi_pass unix:/tmp/php-fpm.sock; – для сокета или fastcgi_pass 127.0.0.1:9000; – для порта.<br />На выбор – две конфигурации, минимальная, и той которой пользуюсь сам:<br /></p><div class="codebox"><pre><code>$ nano /etc/nginx/sites-available/default</code></pre></div><p><em><strong>Минимальная:</strong></em><br /></p><div class="codebox"><pre><code>server {
    listen   80;
    server_name localhost;
    charset utf-8;
    access_log  /var/www/access.log;
    error_log /var/www/error_log;
    location = / {
        root   /var/www;
        index  index.php index.html;
    }
    # mod_rewrite - чтобы работали ЧПУ (постоянные ссылки) в различных CMS
    rewrite_log off;
    if (!-e $request_filename) {
       rewrite (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ /index.php last;
    }
    #  Images and static content is treated different
    location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|swf|flv)$ {
        access_log off;
        expires 30d;
        root /var/www;
        break;
    }
    location ~ \.php$ {
        fastcgi_pass   unix:/tmp/php-fpm.sock;
        # fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /var/www$fastcgi_script_name;
        include fastcgi_params;
    }
    # Запрещаем просмотр .htaccess &amp; .htpassword
    location ~ /\.ht {
        deny  all;
    }
}</code></pre></div><p><em><strong>Мой конфиг:</strong></em><br /></p><div class="codebox"><pre><code># -------------------------------------------------------------------------------- #
#                         Последние изменение 17.05.2011                           #
# -------------------------------------------------------------------------------- #
server {
    listen   80;                          ## listen for ipv4
    listen   [::]:80 default ipv6only=on; ## listen for ipv6
    server_name localhost;
    server_name_in_redirect off;
    root /var/www;
    index index.php;
    charset utf-8;
# -------------------------------------------------------------------------------- #
    # Логи доступа:
    # access_log /var/www/access_log;
    access_log /dev/null;
    # Error log&#039;s
    # error_log /var/www/error_log;
    error_log /dev/null;
# -------------------------------------------------------------------------------- #
    # страницы с ошибками, вместо стандартных, путь указывается от root (выше)
    # error_page      404     /error/404.html;
    # error_page      403     /error/403.html;
    # error_page      500     /error/500.html;
# -------------------------------------------------------------------------------- #
    # mod_rewrite - чтобы работали ЧПУ (постоянные ссылки) в различных CMS
    rewrite_log off;
    if (!-e $request_filename) {
       rewrite (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ /index.php last;
    }
# -------------------------------------------------------------------------------- #
    gzip_static on;
# -------------------------------------------------------------------------------- #
    #  Images and static content is treated different
    location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|swf|flv)$ {
        access_log off;
        expires 30d;
        root /var/www;
        break;
    }
# -------------------------------------------------------------------------------- #
    # Parse all .php file in the /var/www directory
    location ~* ^.+.(php|cgi)$ {
    # location ~ .php$ {
        include fastcgi_params;
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_index  index.php;
        fastcgi_pass   unix:/tmp/php-fpm.sock;
        # fastcgi_pass   127.0.0.1:9000;
        fastcgi_param  QUERY_STRING       $query_string;
        fastcgi_param  REQUEST_METHOD     $request_method;
        fastcgi_param  CONTENT_TYPE       $content_type;
        fastcgi_param  CONTENT_LENGTH     $content_length;
 
        fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
        fastcgi_param  REQUEST_URI        $request_uri;
        fastcgi_param  DOCUMENT_URI       $document_uri;
        fastcgi_param  DOCUMENT_ROOT      /var/www/$host;
        fastcgi_param  SERVER_PROTOCOL    $server_protocol;
 
        fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
        fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
 
        fastcgi_param  REMOTE_ADDR        $remote_addr;
        fastcgi_param  REMOTE_PORT        $remote_port;
        fastcgi_param  SERVER_ADDR        $server_addr;
        fastcgi_param  SERVER_PORT        $server_port;
        fastcgi_param  SERVER_NAME        $server_name;
        fastcgi_intercept_errors         off;
        fastcgi_ignore_client_abort      off;
        fastcgi_connect_timeout           60;
        fastcgi_send_timeout             180;
        fastcgi_read_timeout             180;
        fastcgi_buffer_size             128k;
        fastcgi_buffers               4 256k;
        fastcgi_busy_buffers_size       256k;
        fastcgi_temp_file_write_size    256k;
        # uwsgi_pass      127.0.0.1:3031;
        # include         uwsgi_params;
    }
# -------------------------------------------------------------------------------- #
    # Запрещаем просмотр .htaccess &amp; .htpassword
    location ~ /\.ht {
        deny  all;
    }
}
# -------------------------------------------------------------------------------- #
# Дальше установки по-умолчанию, (стандартная установка nginx),
# вдруг понадобяться.
# -------------------------------------------------------------------------------- #
# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
#       listen 8000;
#       listen somename:8080;
#       server_name somename alias another.alias;
#       root html;
#       index index.html index.htm;
#
#       location / {
#               try_files $uri $uri/ /index.html;
#       }
#}
 
# HTTPS server
#
#server {
#       listen 443;
#       server_name localhost;
#
#       root html;
#       index index.html index.htm;
#
#       ssl on;
#       ssl_certificate cert.pem;
#       ssl_certificate_key cert.key;
#
#       ssl_session_timeout 5m;
#
#       ssl_protocols SSLv3 TLSv1;
#       ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
#       ssl_prefer_server_ciphers on;
#
#       location / {
#               try_files $uri $uri/ /index.html;
#       }
#}
# -------------------------------------------------------------------------------- #</code></pre></div><p><em>Шаг 5: Рестарт для php5-fpm и nginx:</em><br /></p><div class="codebox"><pre><code>$ /etc/init.d/php5-fpm restart
$ /etc/init.d/nginx restart</code></pre></div><p>Теперь надо зайти на свой сайт, где должны лицизреть сгенерированную страницу с php- информацией:<br /><a href="http://itmages.ru/image/view/260324/69ebff73"><span class="postimg"><img src="http://storage1.static.itmages.ru/i/11/0818/s_1313627106_2300077_69ebff730a.jpeg" alt="http://storage1.static.itmages.ru/i/11/0818/s_1313627106_2300077_69ebff730a.jpeg" /></span></a><br />если что-то пошло не так, ошибки смотрим так:<br /></p><div class="codebox"><pre><code>$ tail /var/log/nginx/error.log
$ tail /var/www/error_log</code></pre></div><p>Например ошибки mysql ‘Access denied’ смотрим тут: <a href="http://www.mysql.ru/docs/man/Access_denied.html">http://www.mysql.ru/docs/man/Access_denied.html</a><br /><a href="http://&quot;http://sysoev.ru/nginx/&#039;">Официальная документация по nginx</a><br /><a href="http://linuxru.org/linux/26">Оригинал мануала у меня</a><br />Комментарии, мнение ошибки - в соответствующей теме.<br />Тестированием немного занимались в этой теме <a href="http://linuxforum.ru/viewtopic.php?id=13591">http://linuxforum.ru/viewtopic.php?id=13591</a></p>]]></description>
			<author><![CDATA[null@example.com (zenon)]]></author>
			<pubDate>Thu, 18 Aug 2011 00:34:59 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=204086#p204086</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=192002#p192002</link>
			<description><![CDATA[<p><strong>Установка и обновление драйверов Nvidia/ATI с помощью sgfxi (скачивает и устанавливает драйвера с оффициального сайта)</strong><br />Sgfxi — простой скрипт, позволяющий легко устанавливать и обновлять закрытые драйверы видеокарт. На сегодняшний день поддерживаются драйверы ATI fglrx и Nvidia.<br />Sgfxi поддерживает следующие дистрибутивы: Debian Stable, Debian Testing, Debian Unstable. Так же поддерживается текущая версия Ubuntu, а в последних версиях обеспечена работа на Archlinux. К сожалению не все функции скрипта работают на всех дистрибутивах одинаково. Так же нужно отметить, что поддержка ATI fglrx может меняться время от времени и в зависимости от дистрибутива.<br />Драйвер по-умолчанию — это драйвер, который устанавливается в случае, если не выбраны никакие дополнительные параметры. Если же ваша видеокарта достаточно старая, то может потребоваться в ручную указать старую версию драйвера для обеспечения её работы.<br />После запуска скрипта&nbsp; вам будет задан вопрос, нужная ли версия драйвера выбрана для установки. После этого вы сможете либо продолжить установку, либо прервать её и перезапустить скрипт с дополнительными параметрами.</p><p><strong>Установка скрипта sgfxi</strong><br />Существует много способов установки sgfxi. С ними можно познакомится на домашней странице проекта smxi <a href="http://smxi.org/site/install.htm">http://smxi.org/site/install.htm</a>. Однако, в подавляющем большинстве случаев вам будет достаточно ввести в терминале суперпользователя команду:<br /></p><div class="codebox"><pre><code>cd /usr/local/bin &amp;&amp; wget -Nc smxi.org/sgfxi &amp;&amp; chmod +x sgfxi</code></pre></div><p>Пользователям Archlinux вместо /usr/local/bin необходимо подставить /usr/bin</p><p><strong>Использование параметров скрипта sgfxi</strong><br />Sgfxi имеет множество различных параметров, некоторые из которых работают только с драйвером Nvidia или только ATI fglrx. Чтобы получить полный список параметров, введите в терминале команду:<br /></p><div class="codebox"><pre><code>sgfxi -h</code></pre></div><p>Скрипт sgfxi автоматически заменяет нужную секцию xorg.conf для работы установленного драйвера (создавая при этом резервную копию старого файла). В случае если скрипт не обнаружит файл xorg.conf в системе, он будет сгенерирован автоматически.</p><p><strong>Использование скрипта sgfxi</strong><br />Для начала установки или обновления драйвера вам необходимо переключится в виртуальную консоль с помощью сочетания клавиш Ctrl+Alt+F1. После этого получите права суперпользователя и запустите скрипт:<br /></p><div class="codebox"><pre><code>sgfxi </code></pre></div><p>В этом случае будет предложено установить последний доступный для вашей видеокарты драйвер. Для того чтобы указать другую версию, испоользуйте опцию -o<br /></p><div class="codebox"><pre><code>sgfxi -o &lt;версия драйвера&gt;</code></pre></div><p>Список доступных версий можно посмотреть с помощью команды:<br /></p><div class="codebox"><pre><code>sgfxi -h</code></pre></div><p><strong>ВАЖНО:</strong> в процессе установки закрытых драйверов скрипт завершает работу любых оконных менеджеров. Поэтому перед установкой необходимо завершить все работающие приложения с графическим интерфейсом.<br />По окончанию установки вы получите полностью готовую к использованию систему.</p><p><strong>Возможные проблемы</strong><br />На этапе установки скрипт выдал предупреждение о том, что не удалось удалить модуль&nbsp; Nouveau.<br />Решение: на самом деле sgfxi сразу удаляет модуль Nouveau из ядра, но для продолжения работы потребуется перезагрузка системы и повторный запуск скрипта. Так как модуль Nouveau уже удалён из системы, то вам не удастся запустить xserver. Его можно будет запустить по окончанию установки.<br />Происходит переключение в другую виртуальную консоль<br />Решение: просто переключитесь обратно с помощью сочетания клавиш Ctrl+Alt+F1<br />Скрипт выдаёт ошибку запуска.<br />Решение: в некоторых дистрибутивах скрипт не устанавливает автоматически необходимый для работы пакет build-essential. Для решения этой проблемы установите пакет в ручную с помощью команды:<br /></p><div class="codebox"><pre><code>aptitude install build-essential</code></pre></div><p><a href="http://linuxru.org/linux/79">Оригинал.</a></p><p>Полная версия руководства на английском языке <a href="http://smxi.org/docs/sgfxi-manual.htm">http://smxi.org/docs/sgfxi-manual.htm</a><br />Домашняя страница проекта <a href="http://smxi.org">http://smxi.org</a>/</p>]]></description>
			<author><![CDATA[null@example.com (zenon)]]></author>
			<pubDate>Fri, 01 Jul 2011 08:11:24 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=192002#p192002</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=176106#p176106</link>
			<description><![CDATA[<p><strong>Простой шлюз и firewall для Debian</strong></p><p>Вопросов стало много, поэтому решил написать заметку как сделать простой шлюз и firewall для Debian, критика, вопросы и указание ошибок приветствуется, в соответствующей теме.</p><p>Каждый выход в интернет не только дает возможность подключаться к различным серверам и сайтам, но и создает потенциальную опасность проникновения на наш компьютер извне. Не стоит пренебрегать этой опасностью. Ситуация усугубляется оттого, что в некоторых (пока еще) широко распространненных операционных системах по умолчанию остаются открытыми многие порты, что позволяет подключаться из интернета к пользователю незаметно для последнего.<br />Поэтому в основу любого firewall должны быть заложены правила по закрытию и контролированию портов.<br />В нашем случае действуют политики по умолчанию - всё закрыть, открыть извне только то что нам необходимо, а также сам шлюз и компьютеры локальной сети могут открывать порты в обратную сторону самостоятельно, вот как эти правила выглядят на языке iptables:<br /></p><div class="codebox"><pre><code># Закрываем изначально ВСЁ (т.е. изначально все что не разрешено - запрещено):
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
# Состояние ESTABLISHED говорит о том, что это не первый пакет в соединении.
# Пропускать все уже инициированные соединения, а также дочерние от них
iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT
# Пропускать новые, а так же уже инициированные и их дочерние соединения
iptables -A OUTPUT -p all -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Разрешить форвардинг для новых, а так же уже инициированных и их дочерних соединений
iptables -A FORWARD -p all -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT</code></pre></div><p>Исходные данные.<br />Компьютер подключенный к интернет через pppoe (для настройки лучше использовать pppoeconf - это скрипт входящий в стандартную установку Debian), интерфейс ppp0.<br />Шлюзом будет машина с ip = 192.168.0.1<br />Для того чтобы наш шлюз раздавал dns клиентам необходимо поствить dnsmasq, если у вас стоит какой-то другой кэшируюший dns-сервер то dnsmasq устанавливать нет необходимости:<br /></p><div class="codebox"><pre><code>$ aptitude install dnsmasq iptables</code></pre></div><p>Настраивать dnsmasq никак не надо.<br />Раздача интернета будет осуществлена на локальную сеть подключенную к интерфейсу eth1, ip адреса: 192.168.0.0/24.<br />Все это можно в принципе изменить, в скрипте введены для этого переменные в шапке - например если у вас интернет подключен напрямую к eth0 без pppoe, то достаточно изменить export WAN=ppp0 на export WAN=eth0, так же и с остальным.<br />В нашем случае вот примерно как будут выглядеть настройки сетевых интерфейсов:<br /></p><div class="codebox"><pre><code>$ cat /etc/network/interfaces
# Файл описывает сетевые интерфейсы доступные в системе
# и способы активирования их.
# The loopback network interface
auto lo
   iface lo inet loopback
# PPPoE
auto eth0
iface eth0 inet manual
   auto dsl-provider
iface dsl-provider inet ppp
   pre-up ifconfig eth0 up
   provider dsl-provider
# eth1 - Локальная сеть
auto eth1
iface eth1 inet static
   address 192.168.0.1
   netmask 255.255.255.0
   network 192.168.0.0
   broadcast 192.168.0.255</code></pre></div><p>Ну собственно вот наш скрипт:</p><div class="codebox"><pre><code>#!/bin/bash
# Тут в принципе может и не надо этого всего но не помеха вдруг какой модуль не подгружен или форвардинг не включен
echo &quot;1&quot; &gt; /proc/sys/net/ipv4/ip_forward
echo &quot;1&quot; &gt; /proc/sys/net/ipv4/ip_dynaddr
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp

# Объявление переменных
export IPT=&quot;iptables&quot;

# Интерфейс который смотрит в интернет
export WAN=ppp0

# Локальная сеть
export LAN=eth1
export LAN_IP_RANGE=192.168.0.0/24

# Очистка всех цепочек iptables
$IPT -F
$IPT -F -t nat
$IPT -F -t mangle
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X

# Закрываем изначально ВСЁ (т.е. изначально все что не разрешено - запрещено):
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP

# разрешаем локальный траффик для loopback и внутренней сети
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A INPUT -i $LAN -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
$IPT -A OUTPUT -o $LAN -j ACCEPT

# Состояние ESTABLISHED говорит о том, что это не первый пакет в соединении.
# Пропускать все уже инициированные соединения, а также дочерние от них
$IPT -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT
# Пропускать новые, а так же уже инициированные и их дочерние соединения
$IPT -A OUTPUT -p all -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Разрешить форвардинг для новых, а так же уже инициированных и их дочерних соединений
$IPT -A FORWARD -p all -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

# Включаем фрагментацию пакетов. Необходимо из за разных значений MTU
$IPT -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

# Отбрасывать все пакеты, которые не могут быть идентифицированы и поэтому не могут иметь определенного статуса.
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP

# Приводит к связыванию системных ресурсов, так что реальный обмен данными становится не возможным.
$IPT -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
$IPT -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP

# Разрешаем доступ из внутренней сети наружу
$IPT -A FORWARD -i $LAN -o $WAN -j ACCEPT

# Запрещаем доступ снаружи во внутреннюю сеть
$IPT -A FORWARD -i $WAN -o $LAN -j REJECT

# Маскарадинг
$IPT -t nat -A POSTROUTING -o $WAN -s $LAN_IP_RANGE -j MASQUERADE

# Далее дано как пример открытие портов извне:
# **********************************************************************
# Открываем порт для ssh
$IPT -A INPUT -i $WAN -p tcp --dport 22 -j ACCEPT

# Открытие портов для торрентов (такие же указать в torrent-клиенте)
$IPT -A INPUT -i $WAN -p tcp -m multiport --ports 50100:51100 -j ACCEPT

# Открытие 443 порта
$IPT -A INPUT -p tcp --dport 443 -j ACCEPT

# Открываем 80 порт для веб сайтов
$IPT -A INPUT -i $WAN -p all --dport 80 -j ACCEPT

# Открытие портов для игровых серверов
$IPT -A INPUT -i $WAN -p tcp --dport 27010:27030 -j ACCEPT
$IPT -A INPUT -i $WAN -p udp --dport 27010:27030 -j ACCEPT
# **********************************************************************
# Вывод информации о состоянии
$IPT -L</code></pre></div><p>Открытие портов приведено как пример. <br />Теперь сохраняем скрипт в файл, допустим /etc/firewall.sh, делаем его исполняемым.<br /></p><div class="codebox"><pre><code>$ chmod +x /etc/firewall.sh</code></pre></div><p>Для начала чтобы скрипт выполнялся во время загрузки можно поместить ссылку в rc.local до строчки exit 0:<br /></p><div class="codebox"><pre><code>$ cat rc.local
#!/bin/sh -e
# rc.local
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will &quot;exit 0&quot; on success or any other
# value on error.
# In order to enable or disable this script just change the execution
# bits.
# By default this script does nothing.
sh /etc/firewall.sh
exit 0</code></pre></div><p>Поместить запуск в rc.local не есть самое правильное решение, более правильно - это сохранить правила iptables перед выключением, потом перед поднятием&nbsp; сетевого интерфейса загрузить правила, объясню как это сделать:<br />Для сохранения правил iptables существует команда:<br /></p><div class="codebox"><pre><code>$ iptables-save &gt; /etc/ip_rulles.lst</code></pre></div><p>После этого правила будут сохранены в файле (имя произвольное) /etc/ip_rulles.lst<br />Для загрузки правил соответственно:<br /></p><div class="codebox"><pre><code>$ iptables-restore &lt; /etc/ip_rulles.lst</code></pre></div><p>Ну и самое интересное - в файле настроек сети /etc/network/interfaces в каждый из интерфейсов можно добавлять секции которые будут выполнятся до поднятия, после поднятия, до отключения и после отключения интерфейса - секции:<br /></p><div class="codebox"><pre><code>pre-up
up
post-down
down</code></pre></div><p>В нашем примере сохранение \ восстановление правил лучше поместить в секцию с loopback interface, вот как это будет выглядеть:<br /></p><div class="codebox"><pre><code># The loopback network interface
auto lo
  iface lo inet loopback
   pre-up echo &quot;1&quot; &gt; /proc/sys/net/ipv4/ip_forward  # Включаем форвардинг пакетов
   pre-up iptables-restore &lt; /etc/ip_rulles.lst     # Загружаем правила
   post-down iptables-save &gt; /etc/ip_rulles.lst     # Сохраняем правила</code></pre></div><p>После этого из rc.local необходимо лишнее убрать.<br />Теперь необходимо выполнить наш скрипт и сохранить правила<br /></p><div class="codebox"><pre><code>$ sh /etc/firewall.sh
$ iptables-save &gt; /etc/ip_rulles.lst</code></pre></div><p>Теперь все правила будут выставляться автоматически.<br />Также если сделать restart сети - правила сохраняться и сразу загрузятся.<br />Чтобы обновить можно принудительно сделать:<br /></p><div class="codebox"><pre><code>$ /etc/init.d/networking restart   # start | stop | force-reload</code></pre></div><p>или<br /></p><div class="codebox"><pre><code>$ ifdown lo
$ ifup lo</code></pre></div><p><a href="http://jodies.de/ipcalc">IP-калькулятор</a> <br /><a href="http://&quot;http://www.opennet.ru/docs/RUS/iptables/">Руководство по iptables</a> <br />По следам темы <a href="http://linuxforum.ru/viewtopic.php?id=13140">http://linuxforum.ru/viewtopic.php?id=13140</a><br />И многих других подобных.</p><p>И повторю - это простой вариант шлюза - целью было показать как это делается на примере.<br /><a href="http://linuxru.org/linux/24">Оригинал у меня.</a></p>]]></description>
			<author><![CDATA[null@example.com (zenon)]]></author>
			<pubDate>Wed, 04 May 2011 21:36:59 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=176106#p176106</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=167191#p167191</link>
			<description><![CDATA[<p>Ставим <strong>Zen ядро</strong> (<a href="http://zen-kernel.org">http://zen-kernel.org</a>) с&nbsp; <a href="http://liquorix.net">http://liquorix.net</a><br />Git: <a href="http://git.zen-kernel.org">http://git.zen-kernel.org</a><br />Докуметация: <a href="http://www.zen-kernel.org/documentation">http://www.zen-kernel.org/documentation</a><br />Зеркало в Бельгии <a href="http://ftp.belnet.be/mirror/liquorix.net">http://ftp.belnet.be/mirror/liquorix.net</a></p><p>Редактируем sources.list<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ nano /etc/apt/sources.list</div><br />Добовляем репозиторий:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">deb <a href="http://liquorix.net/debian">http://liquorix.net/debian</a> unstable main past<br /># Зеркало:<br /># deb <a href="http://ftp.belnet.be/mirror/liquorix.net/debian">http://ftp.belnet.be/mirror/liquorix.net/debian</a> unstable main past</div><br />В main сейчас находится ядро версии <strong>2.6.38</strong>, в past —<strong> 2.6.37</strong><br />Ставим pgp ключ:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ apt-get update &amp;&amp; apt-get install &#039;^liquorix-([^-]+-)?keyring.?&#039;</div><br />Ну и установка ядра (у меня AMD соответственно i686 - у кого Intel):<br />На сегодняшний момент (11-апрель-2011) это будет ядро 2.6.38-2.<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ aptitude install linux-image-2.6.38-2.dmz.2-liquorix-amd64 linux-headers-2.6.38-2.dmz.2-liquorix-amd64 </div><br />Для Intel:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ aptitude install linux-image-2.6.38-2.dmz.2-liquorix-686 linux-headers-2.6.38-2.dmz.2-liquorix-686</div><br />Себе поставил - встало безупречно:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ uname -a<br />Linux z4z 2.6.38-2.dmz.2-liquorix-amd64 #1 ZEN SMP PREEMPT Sun Apr 10 04:31:30 CDT 2011 x86_64 GNU/Linux</div></p><br /><p>ы. Для тех кто не в курсе:<br />Ядро Liquorix собрано с патчами от Zen Kernel, они ориентируются на повышение производительности на десктопах. <br />Среди патчей есть знаменитый Brain <span style="color: red"><strong>Кю</strong></span> Scheduler.&nbsp; <a href="http://ru.wikipedia.org/wiki/Brain_Fuck_Scheduler">http://ru.wikipedia.org/wiki/Brain_Fuck_Scheduler</a><br />Есть поддержка AUFS, reiser4 ну и много еще вкусностей...<br />.<br /><a href="http://linuxru.org/tips/zen-kernel-ot-liquorix-ustanovka-v-deb-based-distributivah">Обновил тут 9.04.2012</a></p>]]></description>
			<author><![CDATA[null@example.com (zenon)]]></author>
			<pubDate>Mon, 11 Apr 2011 09:54:32 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=167191#p167191</guid>
		</item>
		<item>
			<title><![CDATA[Re: Готовые решения в Debian GNU/Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=150265#p150265</link>
			<description><![CDATA[<p><strong>Русификации консоли:</strong> (всё выполняем с привилегиями суперпользователя).<br />Редактируем файл /etc/locale.gen, там указываются все доступные локали, неиспользуемые закоментированны:<br /></p><div class="codebox"><pre><code>$ nano /etc/locale.gen </code></pre></div><p>В принципе нам нужны только эти:<br /></p><div class="codebox"><pre><code>en_US ISO-8859-1
en_US.UTF-8 UTF-8
ru_RU.KOI8-R KOI8-R
ru_RU.UTF-8 UTF-8</code></pre></div><p>Далее выполняем:<br /></p><div class="codebox"><pre><code>$ locale-gen 
$ localedef -i ru_RU -f UTF-8 ru_RU.UTF-8
$ dpkg-reconfigure console-cyrillic
$ dpkg-reconfigure console-setup
$ dpkg-reconfigure console-data
$ dpkg-reconfigure keyboard-configuration</code></pre></div><p>Для полной красоты,<br />примерное содержание конфигурационных файлов, первый для консоли, второй для иксов (переключение рус/лат по alt+shift - индикация scroll, временное преключение - левая win клавиша):<br /><strong>/etc/default/console-setup</strong><br /></p><div class="codebox"><pre><code>VERBOSE_OUTPUT=no
ACTIVE_CONSOLES=&quot;/dev/tty[1-6]&quot;
CHARMAP=&quot;UTF-8&quot;
CODESET=&quot;CyrSlav&quot;
FONTFACE=&quot;Terminus&quot;
FONTSIZE=&quot;14&quot;
XKBMODEL=&quot;pc105&quot;
XKBLAYOUT=&quot;us,ru&quot;
XKBVARIANT=&quot;,winkeys&quot;
XKBOPTIONS=&quot;grp:alt_shift_toggle,grp:lwin_switch,lv3:ralt_switch,grp_led:scroll&quot;
BOOTTIME_KMAP_MD5=&quot;aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&quot;</code></pre></div><p><strong>/etc/default/keyboard</strong><br /></p><div class="codebox"><pre><code>XKBMODEL=&quot;pc105&quot;
XKBLAYOUT=&quot;us,ru&quot;
XKBVARIANT=&quot;,&quot;
XKBOPTIONS=&quot;grp:alt_shift_toggle,grp:lwin_switch,lv3:ralt_switch,grp_led:scroll&quot;</code></pre></div><p>Или всё вместе простым скриптом (сохранить в файл, название - как хотите, например mykeyboardconf.sh, запустить sh mykeyboardconf.sh)<br /></p><div class="codebox"><pre><code>#!/bin/sh
echo &#039;en_US ISO-8859-1
en_US.UTF-8 UTF-8
ru_RU.KOI8-R KOI8-R
ru_RU.UTF-8 UTF-8
     &#039;&gt; /etc/locale.gen 
locale-gen 
localedef -i ru_RU -f UTF-8 ru_RU.UTF-8

echo &#039;VERBOSE_OUTPUT=no
ACTIVE_CONSOLES=&quot;/dev/tty[1-6]&quot;
CHARMAP=&quot;UTF-8&quot;
CODESET=&quot;CyrSlav&quot;
FONTFACE=&quot;Terminus&quot;
FONTSIZE=&quot;14&quot;
XKBMODEL=&quot;pc105&quot;
XKBLAYOUT=&quot;us,ru&quot;
XKBVARIANT=&quot;,winkeys&quot;
XKBOPTIONS=&quot;grp:alt_shift_toggle,grp:lwin_switch,lv3:ralt_switch,grp_led:scroll&quot;
BOOTTIME_KMAP_MD5=&quot;aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&quot;
 &#039;&gt; /etc/default/console-setup

echo &#039;XKBMODEL=&quot;pc105&quot;
XKBLAYOUT=&quot;us,ru&quot;
XKBVARIANT=&quot;,&quot;
XKBOPTIONS=&quot;grp:alt_shift_toggle,grp:lwin_switch,lv3:ralt_switch,grp_led:scroll&quot;
 &#039;&gt; /etc/default/keyboard</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (zenon)]]></author>
			<pubDate>Sat, 26 Feb 2011 16:16:40 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=150265#p150265</guid>
		</item>
	</channel>
</rss>
