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

<channel>
	<title>по стопам webkill&#039;а &#187; конфигурация</title>
	<atom:link href="http://blog.lukmus.ru/tag/%d0%ba%d0%be%d0%bd%d1%84%d0%b8%d0%b3%d1%83%d1%80%d0%b0%d1%86%d0%b8%d1%8f/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.lukmus.ru</link>
	<description>это наш химический дом для печальных жителей Земли</description>
	<lastBuildDate>Sat, 21 Oct 2023 19:10:13 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
		<item>
		<title>собственная конфигурация (свои опции) rails-приложения</title>
		<link>http://blog.lukmus.ru/2012/02/08/sobstvennaya-konfiguratsiya-svoi-optsii-ra/</link>
		<comments>http://blog.lukmus.ru/2012/02/08/sobstvennaya-konfiguratsiya-svoi-optsii-ra/#comments</comments>
		<pubDate>Wed, 08 Feb 2012 17:52:29 +0000</pubDate>
		<dc:creator>lukmus</dc:creator>
				<category><![CDATA[ruby & ruby on rails]]></category>
		<category><![CDATA[ruby on rails 3]]></category>
		<category><![CDATA[settingslogic]]></category>
		<category><![CDATA[YML]]></category>
		<category><![CDATA[конфигурация]]></category>

		<guid isPermaLink="false">http://blog.lukmus.ru/?p=1235</guid>
		<description><![CDATA[В названии я имею ввиду не настройку Rails, которая в config/application.rb и некоторых других файлах, а место, где следует хранить конфигурацию приложения с опциями типа &#8216;количество новостей на странице&#8217; или &#8216;количество символов в отрывке текста на странице списка новостей&#8217; итд, короче говоря, свои собственные конкретные для данного приложения настройки. Хранить некоторые из таких настроек в [...]]]></description>
			<content:encoded><![CDATA[<p>В названии я имею ввиду не настройку Rails, которая в config/application.rb и некоторых других файлах, а место, где следует хранить конфигурацию приложения с опциями типа &#8216;количество новостей на странице&#8217; или &#8216;количество символов в отрывке текста на странице списка новостей&#8217; итд, короче говоря, свои собственные конкретные для данного приложения настройки.<br />
<img class="aligncenter size-full wp-image-1236" title="p_16_6_6" src="http://blog.lukmus.ru/wp-content/uploads/2012/02/p_16_6_6.jpg" alt="" width="517" height="321" /><span id="more-1235"></span><br />
Хранить некоторые из таких настроек в БД не вариант, т.к., несмотря на все кэширование запросов и прочих штук, если настройка очень часто используется есть вариант уронить сервер БД, еще раз подчеркну, что это далеко не всегда и далеко не для всех опций. Вообщем, в местах где это возможно я храню конфигурацию в файле и в не простом файле, а YML.<br />
Для таких интересных целей я использую гем <a rel="nofollow" href="https://github.com/binarylogic/settingslogic" target="_blank">settingslogic</a>. Дальше не будет ничего другого как перевод текста по ссылке выше.</p>
<h3>установка</h3>
<p>Ничего нового. Кидаем в Gemfile:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="" style="font-family:monospace;">gem 'settingslogic'</pre></td></tr></table></div>

<p>и бандлим:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="" style="font-family:monospace;">bundle install</pre></td></tr></table></div>

<p>Теперь создаем файл <code>app/models/settings.rb</code>:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#9966CC; font-weight:bold;">class</span> Settings <span style="color:#006600; font-weight:bold;">&lt;</span> Settingslogic
  source <span style="color:#996600;">&quot;#{Rails.root}/config/application.yml&quot;</span>
  namespace Rails.<span style="color:#9900CC;">env</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></td></tr></table></div>

<h3>где записывать настройки</h3>
<p>Создаем файл <code>config/application.yml</code> и в соответствии с форматом YML прописываем настройки, получиться что-то типа (взял с вышеуказанной офстранице гема):</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code"><pre class="yml" style="font-family:monospace;">defaults: &amp;defaults
  cool:
    saweet: nested settings
  neat_setting: 24
  awesome_setting: &lt;%= &quot;Did you know 5 + 5 = #{5 + 5}?&quot; %&gt;
&nbsp;
development:
  &lt;&lt;: *defaults
  neat_setting: 800
&nbsp;
test:
  &lt;&lt;: *defaults
&nbsp;
production:
  &lt;&lt;: *defaults</pre></td></tr></table></div>

<h3>как использовать в приложении</h3>
<p>В представлении, например, использовать настройку можно так:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
</pre></td><td class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#006600; font-weight:bold;">&lt;%</span>=Settings.<span style="color:#9900CC;">neat_setting</span><span style="color:#006600; font-weight:bold;">%&gt;</span> # 800 - development, 24 - остальные
<span style="color:#006600; font-weight:bold;">&lt;%</span>=Settings.<span style="color:#9900CC;">cool</span>.<span style="color:#9900CC;">saweet</span><span style="color:#006600; font-weight:bold;">%&gt;</span> # &quot;nested settings&quot;</pre></td></tr></table></div>

<p>Ну и так далее. Короче, весело и вкусно.<br />
<meta property="og:image" content="http://blog.lukmus.ru/wp-content/uploads/2012/02/p_16_6_6.jpg" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lukmus.ru/2012/02/08/sobstvennaya-konfiguratsiya-svoi-optsii-ra/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>настройка privoxy 3.0.16 под tor</title>
		<link>http://blog.lukmus.ru/2010/08/03/nastroyka-privoxy-3-0-16-pod-tor/</link>
		<comments>http://blog.lukmus.ru/2010/08/03/nastroyka-privoxy-3-0-16-pod-tor/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 01:57:50 +0000</pubDate>
		<dc:creator>lukmus</dc:creator>
				<category><![CDATA[настройка и установка]]></category>
		<category><![CDATA[fedora 13 x64]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[privoxy]]></category>
		<category><![CDATA[standart.action]]></category>
		<category><![CDATA[tor]]></category>
		<category><![CDATA[конфигурация]]></category>

		<guid isPermaLink="false">http://blog.lukmus.ru/?p=334</guid>
		<description><![CDATA[Я тут приобрел новый аппарат и поэтому возникла необходимость установить туда ОС со всеми примочками заново, и я решил раз уж обновляться, то поставлю все новое и собственно поставил свою любимую Fedora x64 последней 13-ой версии (на старой машине стояла 11-я). Чтобы не конфигурировать все прикладное ПО заново я просто копировал конфиги со старой машины. [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" style="margin: 5px 10px;" src="http://www.torproject.org/images/top-left.png" alt="tor+privoxy" width="193" height="79" /> Я тут приобрел новый аппарат и поэтому возникла необходимость установить туда ОС со всеми примочками заново, и я решил раз уж обновляться, то поставлю все новое и собственно поставил свою любимую Fedora x64 последней 13-ой версии (на старой машине стояла 11-я).</p>
<p>Чтобы не конфигурировать все прикладное ПО заново я просто копировал конфиги со старой машины. И сегодня вдруг обнаружил, что мой privoxy не пашет как надо т.е. старый конфиг под privoxy 3.0.10 и меньше ей не подошел, и новую актуальную конфигурацию и весь процесс установки я опишу здесь. Напомню, что все что здесь будет описано 100% подходит только для Red Hat Linux&#8217;ов, возможно это подойдет и для других, однако такие варианты не тестировались.<span id="more-334"></span></p>
<div style="font-size: 1.3em;"><strong>установка</strong></div>
<p>Здесь ничего не изменилось, ставим под root&#8217;ом через yum:</p>
<blockquote><p><code>yum install privoxy</code></p></blockquote>
<p>Теперь нужно дать права privoxy на создание файла /var/run/privoxy.pid, а то он будет орать</p>
<blockquote><p><code># service privoxy start<br />
No /var/run/privoxy.pid file found, exiting.<br />
Starting Privoxy, Failed.</code></p></blockquote>
<p>Лично я не страдал фигней с вычислением под каким пользователем работает privoxy и добавлению его в группу, после чего было бы возможно грамотно выставить права на директорию, поэтому я просто разрешил писать в /var/run всем.</p>
<blockquote><p><code># chmod 0777 /var/run</code></p></blockquote>
<div style="font-size: 1.3em;"><strong>конфигурация под tor</strong></div>
<p>Предыдущую конфигурацию я приводил в статье про <a href="http://blog.lukmus.ru/?p=14" target="_blank">брутфорс</a>. Так вот открываем наш конфиг /etc/privoxy/config и начинаем его править.</p>
<p><strong>/etc/privoxy/config</strong></p>
<p>Во-первых нужно добавить к именам всех так называемых экшенфайлов (actionsfile) расширение т.е. заменим</p>
<blockquote><p><code>actionsfile standard  # Internal purpose, recommended<br />
actionsfile default   # Main actions file<br />
actionsfile user      # User customizations</code></p></blockquote>
<p>на следующий конфиг</p>
<blockquote><p><code>actionsfile standard.action # Internal purpose, recommended<br />
actionsfile default.action   # Main actions file<br />
actionsfile user.action       # User customizations</code></p></blockquote>
<p>в противном случае в логах будет записано что-то вроде</p>
<blockquote><p><code>Aug 03 03:27:46.455 7f049cde2700 Info: Privoxy version 3.0.16<br />
Aug 03 03:27:46.455 7f049cde2700 Info: Program name: privoxy<br />
Aug 03 03:27:46.456 7f049cde2700 Fatal error: can't load actions file '/etc/privoxy/standard': No such file or directory. Note that beginning with Privoxy 3.0.7, actions files have to be specified with their complete file names.</code></p></blockquote>
<p>Таким образом наш конфигурационный файл /etc/privoxy/config будет выглядеть так:</p>
<blockquote><p><code># Generally, this file goes in /etc/privoxy/config<br />
#<br />
# Tor listens as a SOCKS4a proxy here:<br />
forward-socks4a / 127.0.0.1:9050 .<br />
confdir /etc/privoxy<br />
logdir /var/log/privoxy<br />
actionsfile standard.action # Internal purpose, recommended<br />
actionsfile default.action   # Main actions file<br />
actionsfile user.action       # User customizations<br />
filterfile default.filter<br />
#<br />
# Если хотите чтобы логи велись, то разкомментируйте две следующие строки<br />
#logfile logfile<br />
#jarfile jarfile<br />
#debug   0    # show each GET/POST/CONNECT request<br />
debug   4096 # Startup banner and warnings<br />
debug   8192 # Errors - *we highly recommended enabling this*<br />
#<br />
user-manual /usr/share/doc/privoxy/user-manual<br />
listen-address  127.0.0.1:8118<br />
toggle  1<br />
enable-remote-toggle 0<br />
enable-edit-actions 0<br />
enable-remote-http-toggle 0<br />
buffer-limit 4096</code></p></blockquote>
<p><strong>/etc/privoxy/standart.action</strong></p>
<p>Вторая проблема &#8211; по непонятным причинам в пакете с privoxy yum не нашел или не установил экшенфайл standart.action поэтому нам надо его взять из прошлого конфига или увидеть ниже.</p>
<blockquote><p><code>################<br />
#<br />
# Cautious settings -- safe for all sites, but offer little privacy protection<br />
#<br />
{ \<br />
+change-x-forwarded-for \<br />
+hide-from-header{block} \<br />
+set-image-blocker{pattern} \<br />
}<br />
standard.Cautious<br />
#<br />
################<br />
#<br />
# Medium settings -- safe for most sites, with reasonable protection/damage tradeoff<br />
#<br />
{ \<br />
+deanimate-gifs{last} \<br />
+filter{refresh-tags} \<br />
+filter{img-reorder} \<br />
+filter{banners-by-size} \<br />
+filter{webbugs} \<br />
+filter{jumping-windows} \<br />
+filter{ie-exploits} \<br />
+change-x-forwarded-for \<br />
+hide-from-header{block} \<br />
+hide-referrer{conditional-block} \<br />
+session-cookies-only \<br />
+set-image-blocker{pattern} \<br />
}<br />
standard.Medium<br />
#<br />
################<br />
#<br />
# Advanced settings -- reasonable privacy protection but<br />
# require some exceptions for trusted sites, most likely<br />
# because of cookies or SSL. Also testing ground for<br />
# new options.<br />
#<br />
# CAUTION: These settings can still be subverted by a<br />
# misconfigured client that executes code from untrusted<br />
# sources.<br />
#<br />
{ \<br />
+client-header-tagger{css-requests} \<br />
+client-header-tagger{image-requests} \<br />
+crunch-if-none-match \<br />
+crunch-outgoing-cookies \<br />
+crunch-incoming-cookies \<br />
+deanimate-gifs{last} \<br />
+fast-redirects{check-decoded-url} \<br />
+filter{html-annoyances} \<br />
+filter{content-cookies} \<br />
+filter{refresh-tags} \<br />
+filter{img-reorder} \<br />
+filter{banners-by-size} \<br />
+filter{banners-by-link} \<br />
+filter{webbugs} \<br />
+filter{jumping-windows} \<br />
+filter{frameset-borders} \<br />
+filter{quicktime-kioskmode} \<br />
+hide-if-modified-since{-60} \<br />
+change-x-forwarded-for \<br />
+hide-from-header{block} \<br />
+hide-referrer{conditional-block} \<br />
+limit-connect{,} \<br />
+overwrite-last-modified{randomize} \<br />
+set-image-blocker{pattern} \<br />
}<br />
standard.Advanced</code></p></blockquote>
<p>Если вы будете брать старый standart.action, то там нужно заменить все</p>
<blockquote><p><code>hide-forwarded-for-headers</code></p></blockquote>
<p>на</p>
<blockquote><p><code>change-x-forwarded-for</code></p></blockquote>
<p>в противном случае в логе /var/log/privoxy/logfile будет</p>
<blockquote><p><code>Aug 03 03:35:23.228 7f5a05657700 Info: Privoxy version 3.0.16<br />
Aug 03 03:35:23.228 7f5a05657700 Info: Program name: privoxy<br />
Aug 03 03:35:23.228 7f5a05657700 Fatal error: The action 'hide-forwarded-for-headers' is no longer valid in this Privoxy release. Use 'change-x-forwarded-for' instead</code>.</p></blockquote>
<div style="font-size: 1.3em;"><strong>запуск</strong></div>
<p>Тут все по старому: под рутом запускаем tor и privoxy:</p>
<blockquote><p><code># service privoxy start<br />
Starting Privoxy, OK.<br />
# service tor start<br />
Starting /usr/bin/tor:                                     [  OK  ]</code></p></blockquote>
<p>Для пользователей других веток Linux следует помнить, что у вас команда запуска демонов выглядит иначе, например в Slackware запуск privoxy будет так:</p>
<blockquote><p><code># service start privoxy</code></p></blockquote>
<p>Подробнее про конфигурацию privoxy можно прочитать на их оффсайте на русском языке <a href="http://privoxy.org.ru/user-manual/config.html" target="_blank">privoxy.org.ru</a> или же на полностью оффсайте <a href="http://www.privoxy.org/" target="_blank">privoxy.org</a>. А о конфингурации tor все шикарно написано на <a href="https://www.torproject.org/" target="_blank">torproject.org</a>, там, кстати, есть документация и на русском.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lukmus.ru/2010/08/03/nastroyka-privoxy-3-0-16-pod-tor/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
