<?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>ITCore Tech</title>
	<atom:link href="http://tech.itcore.com.pl/feed/" rel="self" type="application/rss+xml" />
	<link>http://tech.itcore.com.pl</link>
	<description>Blog techniczny firmy ITCore</description>
	<lastBuildDate>Tue, 25 Oct 2011 11:23:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<item>
		<title>ownCloud &#8211; dostęp do plików przez DAV</title>
		<link>http://tech.itcore.com.pl/2011/10/19/owncloud-dostep-do-plikow-przez-dav/</link>
		<comments>http://tech.itcore.com.pl/2011/10/19/owncloud-dostep-do-plikow-przez-dav/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 08:30:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Chmura]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[ownCloud]]></category>
		<category><![CDATA[tips&tricks]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=446</guid>
		<description><![CDATA[Tak jak napisałem poprzednio w ownCloud, poprzez protokół DAV, można wygodnie zarządzać plikami korzystając z aplikacji desktopowych. Poniżej przykłady jak skonfigurować takie połączenie w Gnome (Nautilus) oraz w KDE (Dolphin). Nautilus Konfiguracja bardzo prosta, musimy wpisać tylko adres serwera, użytkownika, &#8230; <a href="http://tech.itcore.com.pl/2011/10/19/owncloud-dostep-do-plikow-przez-dav/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Tak jak napisałem <a href="http://tech.itcore.com.pl/2011/10/13/owncloud-wlasna-chmura-od-kde/">poprzednio</a> w <b>ownCloud</b>, poprzez protokół <i>DAV</i>, można wygodnie zarządzać plikami korzystając z aplikacji desktopowych. Poniżej przykłady jak skonfigurować takie połączenie w <i>Gnome</i> (<i>Nautilus</i>) oraz w <i>KDE</i> (<i>Dolphin</i>).<br />
<span id="more-446"></span></p>
<h3>Nautilus</h3>
<p>Konfiguracja bardzo prosta, musimy wpisać tylko adres serwera, użytkownika, hasło oraz odpowiednią ścieżkę. Zgodnie z opisem na oficjalnej stronie jako ścieżkę podajemy <code>/files/webdav.php</code>. Klikamy na <i>Connect</i> i mamy dostęp do naszych plików w chmurze. </p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/gnome-dav00.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/gnome-dav00-300x258.png" alt="" title="gnome-dav00" width="300" height="258" class="aligncenter size-medium wp-image-448" /></a><br />
<a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/gnome-dav01.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/gnome-dav01-300x176.png" alt="" title="gnome-dav01" width="300" height="176" class="aligncenter size-medium wp-image-449" /></a></p>
<h3>Dolphin</h3>
<p>Tutaj oczywiście ustawienia są dokładnie takie same. Konfiguracja krok po kroku na poniższych zrzutach.</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/dolphin-dav01.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/dolphin-dav01-300x196.png" alt="" title="dolphin-dav01" width="300" height="196" class="aligncenter size-medium wp-image-450" /></a><br />
<a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/dolphin-dav02.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/dolphin-dav02-300x204.png" alt="" title="dolphin-dav02" width="300" height="204" class="aligncenter size-medium wp-image-451" /></a><br />
<a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/dolphin-dav03.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/dolphin-dav03-300x211.png" alt="" title="dolphin-dav03" width="300" height="211" class="aligncenter size-medium wp-image-452" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/10/19/owncloud-dostep-do-plikow-przez-dav/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ownCloud &#8211; własna chmura od KDE</title>
		<link>http://tech.itcore.com.pl/2011/10/13/owncloud-wlasna-chmura-od-kde/</link>
		<comments>http://tech.itcore.com.pl/2011/10/13/owncloud-wlasna-chmura-od-kde/#comments</comments>
		<pubDate>Thu, 13 Oct 2011 13:44:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Chmura]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[ownCloud]]></category>
		<category><![CDATA[tips&tricks]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=409</guid>
		<description><![CDATA[ownCloud to aplikacja która umożliwia nam przeglądanie oraz synchronizację własnych plików, zakładek, kontaktów. Dostęp do naszych danych uzyskujemy przez interfejs WWW a synchronizacja między urządzeniami następuje przez protokół DAV. 11 października 2011r swoją premierę miała kolejna wersja &#8211; ownCloud 2. &#8230; <a href="http://tech.itcore.com.pl/2011/10/13/owncloud-wlasna-chmura-od-kde/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><b>ownCloud</b> to aplikacja która umożliwia nam przeglądanie oraz synchronizację własnych plików, zakładek, kontaktów. Dostęp do naszych danych uzyskujemy przez interfejs WWW a synchronizacja między urządzeniami następuje przez protokół DAV. 11 października 2011r swoją premierę miała kolejna wersja &#8211; <a href="http://owncloud.org/announcement/">ownCloud 2</a>.<br />
<span id="more-409"></span></p>
<h3>Instalacja</h3>
<p>Aplikacja wymaga serwera <em>Apache</em>,<em> PHP 5</em> oraz bazy danych (<em>MySQL</em> lub <em>SQLite</em>). Ściągamy paczkę <i>ownCloud 2</i> z oficjalnej strony (<a href="http://owncloud.org">www.owncloud.org</a>):</p>
<pre class="brush: plain; title: ;">
root@itcore owncloud]# wget http://owncloud.org/releases/owncloud-2.tar.bz2
</pre>
<p>Rozpakowane pliki umieszczamy w odpowiednim katalogu (wskazanym przez <code>DocumentRoot</code> w konfiguracji <i>Apache</i>). Teraz musimy nadać właściwe uprawnienia dla katalogów <code>data</code> i <code>config</code> (prawa zapisu dla serwera <i>Apache</i>, w systemie CentOS jest to użytkownik <code>apache</code>).</p>
<pre class="brush: plain; title: ;">
root@itcore owncloud]# chmod 750 data
root@itcore owncloud]# chmod 755 config
root@itcore owncloud]# chown apache.apache data/
root@itcore owncloud]# chown apache.apache config/
</pre>
<p><i>ownCloud</i> korzysta także z pliku <code>.htaccess</code>, dlatego musimy włączyć opcję <code>AllowOverride All</code> w konfiguracji <i>Apache</i>!</p>
<pre class="brush: plain; title: ;">
[root@itcore owncloud]# cat .htaccess
ErrorDocument 404 /owncloud/core/templates/404.php
&lt;IfModule mod_php5.c&gt;
php_value upload_max_filesize 16M
php_value post_max_size 16M
php_value memory_limit 128M
SetEnv htaccessWorking true
&lt;/IfModule&gt;
Options -Indexes
</pre>
<p>Kolejnym krokiem jest utworzenie użytkownika i bazy w MySQL:</p>
<pre class="brush: plain; title: ;">
mysql&gt; create database db_owncloud;
Query OK, 1 row affected (0.01 sec)
mysql&gt; GRANT ALL PRIVILEGES ON db_owncloud.* TO user_owncloud@localhost IDENTIFIED BY 'secretpassword';
mysql&gt; flush privileges;
</pre>
<p>Następnie wpisujemy w przeglądarce adres pod którym zainstalowaliśmy <i>ownCloud</i>. Na stronie ustawiamy użytkownika/hasło dla administratora oraz podajemy poprawne dane dla bazy <i>MySQL</i>. </p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud01.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud01-300x273.png" alt="" title="owncloud01" width="300" height="273" class="aligncenter size-medium wp-image-416" /></a></p>
<p>Po wszystkim możemy się już zalogować do systemu.</p>
<h3>Możliwości</h3>
<p>Po zalogowaniu się po lewej stronie widoczne jest menu z sekcjami:</p>
<ul>
<strong>- Files</strong> (pliki)<br />
<strong>- Music</strong> (muzyka)<br />
<strong>- Calendar</strong> (kalendarz)<br />
<strong>- Contacts</strong> (kontakty)<br />
<strong>- Bookmarks</strong> (zakładki)
</ul>
<p>W sekcji <b>Files</b> możemy zarządzać naszymi plikami. Wrzucać, usuwać oraz udostępniać określonym grupom lub wszystkim (<i>make public</i>). W tym przypadku system automatycznie wygeneruje link, który odnosi się do danego pliku. Jeśli chodzi o <i>Upload</i> to maksymalny rozmiar pliku definiujemy w pliku <code>.htaccess</code> (<code>upload_max_filesiz</code> i <code>post_max_size</code>).</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud02.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud02-300x82.png" alt="" title="owncloud02" width="300" height="82" class="aligncenter size-medium wp-image-417" /></a></p>
<p>Jeżeli na serwerze znajdują się pliki muzyczne możemy ich posłuchać w sekcji <i>Music</i></p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud03.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud03-300x82.png" alt="" title="owncloud03" width="300" height="82" class="aligncenter size-medium wp-image-418" /></a></p>
<p>Administracja kalendarzem, dodawanie zdarzeń, widok tygodniowy/miesięczny oraz lista zdarzeń, te opcje dostępne są po kliknięciu w <i>Calendar</i>. Każde zdarzenie możemy przypisać do kilku kategorii, określić  czas trwania itd. Oczywiście kalendarz możemy też wyeksportować (format <i>ics</i>). Niestety brakuje opcji importu&#8230;</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud04.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud04-300x139.png" alt="" title="owncloud04" width="300" height="139" class="aligncenter size-medium wp-image-419" /></a></p>
<p><i>Contacts</i> czyli administracja kontaktami. Tutaj też  brak importu/eksportu.</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud05.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud05-300x176.png" alt="" title="owncloud05" width="300" height="176" class="aligncenter size-medium wp-image-420" /></a></p>
<p>Ostatnia sekcja to <i>Bookmarks</i>. Także brakuje importu/eksportu. Ciekawostką jest to że po wpisaniu adresi zakładki system automatycznie uzupełnia pole <i>Title</i>. </p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud06.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud06-300x123.png" alt="" title="owncloud06" width="300" height="123" class="aligncenter size-medium wp-image-421" /></a></p>
<p>W lewym dolnym rogu mamy jeszcze dostęp do ustawień. Zarządzanie użytkownikami i grupami, edycja własnych ustawień (hasło, email, język etc). Tutaj też można aktywować dodatkowe pluginy/aplikacje (<i>Apps</i>), na przykład logowanie przy użyciu <i>OpenID</i> lub <i>LDAP</i>. Miejmy nadzieję że z czasem na stronie <a href="http://apps.owncloud.com/">apps.owncloud.com</a> pojawi się więcej dodatków. </p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud07.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud07-300x243.png" alt="" title="owncloud07" width="300" height="243" class="aligncenter size-medium wp-image-422" /></a><br />
<a href="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud08.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/10/owncloud08-300x147.png" alt="" title="owncloud08" width="300" height="147" class="aligncenter size-medium wp-image-423" /></a></p>
<h3>Podsumowanie</h3>
<p>Aplikacja oferuje szereg ciekawych możliwości. Miejmy nadzieję, że braki zostaną szybko uzupełnione. Developerzy obiecują m.in galerię obrazków, rozbudowanie aktualnych sekcji, synchronizację. Premiera <i>ownCloud 3</i> zapowiedziana jest na 31 Stycznia 2012 roku. Kto chce być na bieżąco może też ściągnąć <a href="http://gitorious.org/owncloud/owncloud/archive-tarball/master">najnowszą wersję rozwojową</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/10/13/owncloud-wlasna-chmura-od-kde/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Monitoring interfejsów z ifstated</title>
		<link>http://tech.itcore.com.pl/2011/08/31/monitoring-interfejsow-z-ifstated/</link>
		<comments>http://tech.itcore.com.pl/2011/08/31/monitoring-interfejsow-z-ifstated/#comments</comments>
		<pubDate>Wed, 31 Aug 2011 13:20:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpieczeństwo]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[ifstated]]></category>
		<category><![CDATA[monitoring]]></category>
		<category><![CDATA[OpenBSD]]></category>
		<category><![CDATA[tips&tricks]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=392</guid>
		<description><![CDATA[Daemon ifstated monitoruje status interfejsów sieciowych w systemie OpenBDS oraz umożliwia wykonanie odpowiedniej akcji (polecenia) w przypadku wykrycia zmian. Zmianą taką może być włączenie/wyłączenie karty sieciowej lub brak odpowiedzi na ping. Przykładowa konfiguracja W poniższym przykładzie korzystamy z dwóch połączonych &#8230; <a href="http://tech.itcore.com.pl/2011/08/31/monitoring-interfejsow-z-ifstated/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Daemon <code>ifstated</code> monitoruje status interfejsów sieciowych w systemie OpenBDS oraz umożliwia wykonanie odpowiedniej akcji (polecenia) w przypadku wykrycia zmian. Zmianą taką może być włączenie/wyłączenie karty sieciowej lub brak odpowiedzi na <i>ping</i>.<br />
<span id="more-392"></span></p>
<h3>Przykładowa konfiguracja</h3>
<p>W poniższym przykładzie korzystamy z dwóch połączonych ze sobą maszyn (redundancja przy użyciu <code>carp</code>). Firewall <i>fw-m</i> korzysta też z modemu DSL. Więcej informacji na temat redundancji w OpenBSD znaleźć można we wpisie <a href="http://tech.itcore.com.pl/2011/03/08/redundantny-firewall-w-openbsd/">&#8222;Redundantny Firewall w OpenBSD&#8221;</a>, natomiast o konfiguracji DSL w OpenBSD można przeczytać <a href="http://tech.itcore.com.pl/2011/08/05/openbsd-i-dsl-pppoe/">tutaj</a>. Będziemy monitorować zarówno stan interfejsów <code>carp</code>, jak i łącza DSL (<code>pppoe0</code>). Schemat poniżej:</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/08/openbsd-ifstated.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/08/openbsd-ifstated.png" alt="" title="openbsd-ifstated" width="641" height="309" class="aligncenter size-full wp-image-394" /></a><br />
<code>ifstated</code> używa pliku <code>/etc/ifstated.conf</code> do konfiguracji:</p>
<pre class="brush: plain; title: ;">
root@fw-m:/&gt;cat /etc/ifstated.conf
init-state master 

carp_up = &quot;carp0.link.up &amp;&amp; carp2.link.up&quot;
carp_init = &quot;carp0.link.unknown || carp2.link.unknown&quot;
pppoe0_up = &quot;pppoe0.link.up &amp;&amp; vr1.link.up&quot;
pppoe0_down = &quot;!pppoe0.link.up || !vr1.link.up&quot;

state master {
        init {
                run &quot;echo fw-m is now in MASTER state | mail -s 'fw-m ifstated state: MASTER' root@localhost&quot;
        }
        if ($carp_init)
          run &quot;sleep 2&quot;
        if (! $carp_up)
         set-state backup
        if ($pppoe0_up)
        {
          run &quot;echo fw-m DSL is UP | mail -s 'fw-m ifstated DSL up' root@localhost&quot;
          run &quot;pfctl -f /etc/pf.conf&quot;
        }
        if ($pppoe0_down)
        {
	   run &quot;echo fw-m DSL is DOWN | mail -s 'fw-m ifstated DSL down' root@localhost&quot;
           run &quot;pfctl -f /etc/pf.conf-nodsl&quot;
        }

}
state backup {
        init {
          run &quot;echo fw-m is now in BACKUP state | mail -s 'fw-m ifstated state: BACKUP' root@localhost&quot;
        }
        if ($carp_init)
          run &quot;sleep 2&quot;
        if ($carp_up)
          set-state master
}
</pre>
<p>W powyższym przykładzie <i>fw-m</i> działa domyślnie w stanie <i>master</i> (<i>init-state master</i>). Definiujemy po 2 zdarzenia dla interfejsów <code>carp</code> oraz <code>pppoe</code>. <code>carp_up</code> jeżeli obydwa interfejsy <code>carp</code> są włączone oraz <code>carp_init</code> jeżeli ich stan nie jest jeszcze zdefiniowany. Podobnie dla interfejsu <code>pppoe1</code> (który jest połączony z <code>vr1</code>). Jeżeli wszystko działa poprawnie system wyśle na wybrany adres 2 maile oraz zrestartuje firewall&#8217;a.<br />
Gdy <code>ifstated</code> wykryje, że interfejs <code>pppoe0</code> lub <code>vr1</code> nie działają, ponownie prześle odpowiedniego maila oraz dodatkowo włączy firewall&#8217;a bez obsługi DSL (<code>/etc/pf.conf-nodsl</code>).<br />
W przypadku usterki któregoś z interfejsów <code>carp</code> system zmieni status na <i>backup</i> oraz oczywiście prześle maila. </p>
<p>Konfigurację można przetestować wpisując:</p>
<pre class="brush: plain; title: ;">
root@fw-m:/&gt;ifstated -n -v
carp_up = &quot;carp0.link.up &amp;&amp; carp2.link.up&quot;
carp_init = &quot;carp0.link.unknown || carp2.link.unknown&quot;
pppoe0_up = &quot;pppoe0.link.up &amp;&amp; vr1.link.up&quot;
pppoe0_down = &quot;!pppoe0.link.up || !vr1.link.up&quot;
ifstated: configuration OK
</pre>
<p>Jeżeli wszystko się zgadza możemy włączyć daemona wpisując po prostu polecenie <code>ifstated</code>.<br />
Jak widać konfiguracja jest bardzo prosta, a możliwość uruchamiania poleceń/skryptów podczas wykrycia zmiany na interfejsach daje szerokie pole do popisu oraz pozwala na zbudowanie niezawodnego systemu. </p>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/08/31/monitoring-interfejsow-z-ifstated/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenBSD i DSL (pppoe)</title>
		<link>http://tech.itcore.com.pl/2011/08/05/openbsd-i-dsl-pppoe/</link>
		<comments>http://tech.itcore.com.pl/2011/08/05/openbsd-i-dsl-pppoe/#comments</comments>
		<pubDate>Fri, 05 Aug 2011 13:39:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[dsl]]></category>
		<category><![CDATA[OpenBSD]]></category>
		<category><![CDATA[pppoe]]></category>
		<category><![CDATA[tips&tricks]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=368</guid>
		<description><![CDATA[W poniższym wpisie opiszemy jak w systemie OpenBSD połączyć się z modemem DSL, używając protokołu PPPoE (Point-to-Point Protocol over Ethernet). W tym przypadku mamy dwie możliwości: używając aplikacji ppp lub korzystając bezpośrednio z pseudo-urządzenia pppoe (pseudo-device pppoe). Aplikacja ppp Pliki &#8230; <a href="http://tech.itcore.com.pl/2011/08/05/openbsd-i-dsl-pppoe/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>W poniższym wpisie opiszemy jak w systemie OpenBSD połączyć się z modemem DSL, używając protokołu <i>PPPoE</i> (<i>Point-to-Point Protocol over Ethernet</i>). W tym przypadku mamy dwie możliwości: używając aplikacji <code>ppp</code> lub korzystając bezpośrednio z pseudo-urządzenia <code>pppoe</code> (<i>pseudo-device pppoe</i>).<br />
<span id="more-368"></span></p>
<h3>Aplikacja ppp</h3>
<p>Pliki konfiguracyjne znajdziemy w katalogu <code>/etc/ppp</code>, a główny plik konfiguracyjny to <code>ppp.conf</code>. Cały plik jest podzielony na sekcje z różnymi przykładami. Nas interesuje protokół <i>pppoe</i>, znajdziemy go w sekcji <code>pppoe:</code>. Właściwie jedyne co należy wpisać to nasz login (<code>set authname</code>) i hasło (<code>set authkey</code>) oraz podać nazwę interfejsu do którego podłączony jest modem DSL (<code>set device</code>) :</p>
<pre class="brush: plain; title: ;">
root@fw-s:/etc/ppp&gt;tail -n 20 /etc/ppp/ppp.conf
pppoe:
 set device &quot;!/usr/sbin/pppoe -i vr1&quot;
 set mtu max 1492
 set mru max 1492
 set speed sync
 set crtscts off
 disable acfcomp protocomp vjcomp pred1 deflate
 disable ipv6cp
 deny acfcomp
 enable lqr
 accept lqr
 set lqrperiod 30
 set cd 5
 set login
 set authname &quot;LOGIN&quot;
 set authkey &quot;HASLO&quot;
 enable mssfixup
</pre>
<p>Aby nawiązać połączenie wpisujemy:</p>
<pre class="brush: plain; title: ;">
root@fw-s:/etc/ppp&gt;ppp -ddial pppoe
Working in ddial mode
Using interface: tun1
</pre>
<p>W systemie zostanie utworzony nowy interfejs (w tym przypadku <code>tun1</code>), który jest połączony z fizycznym interfejsem <code>vr1</code> (<i>bridge</i>). Jeśli nasza konfiguracja jest poprawna, otrzymamy od naszego providera adres IP, który zostanie przypisany do interfejsu:</p>
<pre class="brush: plain; title: ;">
root@fw-s:/etc/ppp&gt;ifconfig tun1
tun1: flags=8051&lt;UP,POINTOPOINT,RUNNING,MULTICAST&gt; mtu 1492
        priority: 0
        groups: tun
        status: active
        inet X.X.X.X --&gt; Y.Y.Y.Y netmask 0xffffffff
</pre>
<p>Gdzie X.X.X.X to nasz adres IP. W razie problemów, możemy zawsze zajrzeć do logów:</p>
<pre class="brush: plain; title: ;">
root@fw-s:/etc/ppp&gt;grep &quot;ppp&quot; /var/log/daemon.lg
Aug  5 12:20:13 fw-s ppp[24801]: Phase: Using interface: tun1
Aug  5 12:20:13 fw-s ppp[24801]: Phase: deflink: Created in closed state
Aug  5 12:20:13 fw-s ppp[24801]: tun1: Command: default: set device /dev/cua01
Aug  5 12:20:13 fw-s ppp[24801]: tun1: Command: default: set speed 115200
Aug  5 12:20:13 fw-s ppp[24801]: tun1: Command: pppoe: set device !/usr/sbin/pppoe -i vr1
</pre>
<p>Dodatkowo <code>ppp</code> może uruchomić dowolny skrypt podczas włączenia/wyłączenia interfejsu. W takim wypadku w katalogu <code>/etc/ppp</code> musimy utworzyć pliki <code>ppp.linkup</code> i <code>ppp.linkdown</code>:</p>
<pre class="brush: plain; title: ;">
root@fw-s:/etc/ppp&gt;cat /etc/ppp/ppp.linkup
MYADDR:
    !bg sh -c &quot;echo $(date &quot;+%Y%m%d-%H%M&quot;) LINK UP &gt;&gt; /tmp/ppp.txt&quot;
</pre>
<p>Niestety podczas połączenia przez <code>ppp</code> transfer był bardzo niestabilny i zauważalne były bardzo częste spadki prędkości nawet do kilkudziesięciu kilobitów na sekundę. Przykład poniżej (plik pobierany ze strony <a href="http://kernel.org">kernel.org</a>):</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/08/dsl-ppp.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/08/dsl-ppp-1024x144.png" alt="" title="dsl-ppp" width="640" height="90" class="aligncenter size-large wp-image-376" /></a></p>
<p>Sytuacja ta ma miejsce zarówno w wersji 4.8 jak i 4.9 systemu. Na szczęście problem ten nie występuje jeśli łączymy się używając pseudo-urządzenia <code>pppoe</code>.</p>
<h3>pseudo-device pppoe</h3>
<p>W tym przypadku cała konfiguracja zamyka się w pliku <code>/etc/hostname.pppoe0</code>:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;cat /etc/hostname.pppoe0
inet 0.0.0.0 255.255.255.255 NONE \
   pppoedev vr1 authproto pap \
   authname 'LOGIN' authkey 'HASLO' up
   dest 0.0.0.1
!/sbin/route add default -ifp pppoe0 0.0.0.1
</pre>
<p>Tutaj podobnie łączymy interfejs <code>pppoe0</code> z fizycznym interfejsem <code>vr1</code>. Ważnym jest, żeby <code>vr1</code> był włączony (UP):</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;cat /etc/hostname.vr1
up
</pre>
<p>Połączenie zostanie automatycznie podniesione podczas uruchomienia systemu. Można też sprawdzić konfigurację od razu , korzystając ze skryptu <code>/etc/netstart</code> a jako parametr podać nazwę interfejsu:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;sh /etc/netstart pppoe0
</pre>
<p>Podobnie jak w przypadku aplikacji <code>ppp</code> powinniśmy otrzymać adres adres IP od naszego providera:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;ifconfig pppoe0
pppoe0: flags=8851&lt;UP,POINTOPOINT,RUNNING,SIMPLEX,MULTICAST&gt; mtu 1484
        priority: 0
        dev: vr1 state: session
        sid: 0x8ad PADI retries: 6 PADR retries: 0 time: 04:30:14
        sppp: phase network authproto pap authname &quot;LOGIN&quot;
        groups: pppoe egress
        status: active
        inet6 fe80::200:24ff:fecb:d110%pppoe0 -&gt;  prefixlen 64 scopeid 0xf
        inet X.X.X.X --&gt; Y.Y.Y.Y netmask 0xffffffff
</pre>
<p>Warto jeszcze ustawić maksymalny rozmiar segmentu (<i>MSS</i>) w pliku <code>/etc/pf.conf</code> dla interfejsu <code>pppoe0</code>:</p>
<pre class="brush: plain; title: ;">
match on pppoe0 scrub (max-mss 1440)
</pre>
<p>Opcja ta jest równoważna z ustawieniem <code>enable mssfixup</code> w pliku <code>ppp.conf</code> w przypadku połączenia przez aplikację <code>ppp</code>.</p>
<p>Tym razem nie było żadnych problemów z transferem, wszystko działało bardzo stabilne:</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/08/dsl-pppoe-kernel.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/08/dsl-pppoe-kernel-1024x143.png" alt="" title="dsl-pppoe-kernel" width="640" height="89" class="aligncenter size-large wp-image-377" /></a></p>
<p>Więcej informacji znajdziemy jak zawsze w manualu. Dla <code>ppp<code> wpisujemy (<code>man pppoe</code>), a dla pseudo-urządzenia <code>pppoe</code>: <code>man 4 pppoe</code></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/08/05/openbsd-i-dsl-pppoe/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>OpenBSD 4.9 i GNOME 2.32</title>
		<link>http://tech.itcore.com.pl/2011/07/07/openbsd-4-9-i-gnome-2-32/</link>
		<comments>http://tech.itcore.com.pl/2011/07/07/openbsd-4-9-i-gnome-2-32/#comments</comments>
		<pubDate>Thu, 07 Jul 2011 11:35:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Wirtualizacja]]></category>
		<category><![CDATA[GNOME]]></category>
		<category><![CDATA[OpenBSD]]></category>
		<category><![CDATA[tips&tricks]]></category>
		<category><![CDATA[Virtualbox]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=339</guid>
		<description><![CDATA[W poprzednim wpisie pokazaliśmy jak zainstalować system OpenBSD w VirtualBox&#8217;ie. W systemie domyślnie zainstalowaliśmy środowisko graficzne Xorg. Jednak fvwm (domyślny menadżer okien) jest daleki od ideału i dla wielu po prostu niewygodny. Pokażemy teraz jak zainstalować w systemie środowisko graficzne &#8230; <a href="http://tech.itcore.com.pl/2011/07/07/openbsd-4-9-i-gnome-2-32/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>W <a href="http://tech.itcore.com.pl/2011/06/22/instalacja-openbsd-4-9-w-virtualboxie-krok-po-kroku/">poprzednim wpisie</a> pokazaliśmy jak zainstalować system OpenBSD w VirtualBox&#8217;ie. W systemie domyślnie zainstalowaliśmy środowisko graficzne Xorg. Jednak <i>fvwm</i> (domyślny menadżer okien) jest daleki od ideału i dla wielu po prostu niewygodny. Pokażemy teraz jak zainstalować w systemie środowisko graficzne GNOME (wersja 2.32). Jeżeli ktoś chce sprawdzić menadżer okien dostarczony w pakiecie Xorg wystarczy że w konsoli wpisze polecenie <code>xdm</code>:<span id="more-339"></span></p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;xdm
</pre>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen00.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen00-300x226.png" alt="" title="screen00" width="300" height="226" class="aligncenter size-medium wp-image-342" /></a><br />
<a href="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen01.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen01-300x225.png" alt="" title="screen01" width="300" height="225" class="aligncenter size-medium wp-image-343" /></a></p>
<h3>Instalacja środowiska GNOME</h3>
<p>Zaczniemy od pakietu <i>gnome-desktop</i>. System automatycznie doinstaluje zależności:</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;pkg_add -i gnome-desktop
gnome-desktop-2.32.1p0:libexecinfo-1.1p2:ok
gnome-desktop-2.32.1p0:startup-notification-0.10: ok
gnome-desktop-2.32.1p0:desktop-file-utils-0.17: ok
gnome-desktop-2.32.1p0:sqlite3-3.7.4: ok
gnome-desktop-2.32.1p0:python-2.6.6p0: ok
....
</pre>
<p>Po instalacji zostaniemy poinformowani, że nowe skrypty zostały zainstalowane w katalogu </code>/etc/rc.d</code>. Do poprawnego działania daemona <code>avahi</code> musimy włączyć opcję <code>multicast_host=YES</code> w pliku <code>/etc/rc.conf.local</code>. Tworzymy też łącza symboliczne dla <code>python'a</code>:</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;cat /etc/rc.conf.local
multicast_host=YES
root@obsd49:~&gt;ls /etc/rc.d/
avahi_daemon   avahi_dnsconfd dbus_daemon    rc.subr
root@obsd49:~&gt;ln -sf /usr/local/bin/python2.6 /usr/local/bin/python
root@obsd49:~&gt;ln -sf /usr/local/bin/python2.6-config /usr/local/bin/python-config
root@obsd49:~&gt;ln -sf /usr/local/bin/pydoc2.6  /usr/local/bin/pydoc
</pre>
<p>Teraz czas na <code>gnome-session</code>:</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;pkg_add -i gnome-session
gnome-session-2.32.1p1:eggdbus-0.6p1: ok
gnome-session-2.32.1p1:polkit-0.97p3: ok
gnome-session-2.32.1p1:consolekit-0.4.1p2: ok
gnome-session-2.32.1p1:gnome-icon-theme-2.30.3p0: ok
....
</pre>
<p>System ponownie instaluje wszystkie niezbędne zależności. Sugeruje nam także, aby doinstalować <code>notification-daemon</code>:</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;pkg_add -i notification-daemon
</pre>
<p>Gnome jest już zainstalowany, jednak do normalnej pracy brakuje nam jeszcze wielu jego komponentów:</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;pkg_add -i eog file-roller gedit \
&gt; gnome-control-center gnome-applets2 gnome-icon-theme \
&gt; gnome-menus gnome-panel gnome-audio \
&gt; gnome-backgrounds gnome-utils gnome-terminal gnome-themes
....
Ambiguous: choose dependency for file-roller-2.32.1p0:
 a       0: gtar-1.25p0
         1: gtar-1.25p0-static
Your choice: 0
...
</pre>
<p>W niektórych przypadkach mamy możliwość wyboru różnych wersji tego samego pakietu. Bezpiecznie możemy zostać przy domyślnej opcji (wybór <i>'0'</i>). </p>
<h3>Instalacja GDM</h3>
<p>Ostatnim krokiem jest instalacja pakietu GDM (<i>GNOME Display Manager</i>):</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;pkg_add -i gdm
gdm-2.20.11p18:libmagic-5.00: ok
gdm-2.20.11p18:libid3tag-0.15.1bp3: ok
gdm-2.20.11p18:libmad-0.15.1bp3: ok
gdm-2.20.11p18:sox-14.3.0p0: ok
gdm-2.20.11p18:libgee-0.6.0: ok
gdm-2.20.11p18:gksu-polkit-0.0.2p0: ok
gdm-2.20.11p18: ok
The following new rcscripts were installed: /etc/rc.d/gdm
</pre>
<p>Jeżeli chcemy aby GDM uruchamiał sie automatycznie podczas startu systemu musimy wpisać go do pliku <code>/etc/rc.conf.local</code> do zmiennej <code>rc_scripts</code>:</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;cat /etc/rc.conf.local
ntpd_flags=             # enabled during install
multicast_host=YES
rc_scripts=&quot;dbus_daemon avahi_daemon avahi_dnsconfd gdm&quot;
</pre>
<p>Możemy teraz zrestartować system lub jako root wpisać polecenie:</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;/etc/rc.d/gdm start
</pre>
<p>Po chwili pokaże nam się ekran logowania do środowiska. Upewniamy się jeszcze czy w zakładce <i>Session</i> jest wybrane środowisko <i>GNOME</i>.</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen02.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen02-300x226.png" alt="" title="screen02" width="300" height="226" class="aligncenter size-medium wp-image-344" /></a></p>
<h3>Pierwsze uruchomienie</h3>
<p>Po zalogowaniu się możemy zacząć naszą pracę w środowisku <i>GNOME 2.32</i>:</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen03.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen03-300x226.png" alt="" title="screen03" width="300" height="226" class="aligncenter size-medium wp-image-345" /></a><br />
<a href="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen04.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen04-300x226.png" alt="" title="screen04" width="300" height="226" class="aligncenter size-medium wp-image-346" /></a></p>
<p>Doinstalujemy jeszcze na szybko <i>firefox'a</i>:</p>
<pre class="brush: plain; title: ;">
root@obsd49:~&gt;pkg_add -i mozilla-firefox firefox-i18n-pl
mozilla-firefox-3.6.13p3: ok
firefox-i18n-pl-3.6.13: ok
</pre>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen05.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/07/screen05-300x227.png" alt="" title="screen05" width="300" height="227" class="aligncenter size-medium wp-image-347" /></a></p>
<p>Jak widać cały proces instalacji jest całkiem prosty i nie powinien zając więcej niż godzinę.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/07/07/openbsd-4-9-i-gnome-2-32/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Instalacja OpenBSD 4.9 w Virtualbox&#8217;ie -&gt; krok po kroku</title>
		<link>http://tech.itcore.com.pl/2011/06/22/instalacja-openbsd-4-9-w-virtualboxie-krok-po-kroku/</link>
		<comments>http://tech.itcore.com.pl/2011/06/22/instalacja-openbsd-4-9-w-virtualboxie-krok-po-kroku/#comments</comments>
		<pubDate>Wed, 22 Jun 2011 12:33:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Wirtualizacja]]></category>
		<category><![CDATA[OpenBSD]]></category>
		<category><![CDATA[tips&tricks]]></category>
		<category><![CDATA[Virtualbox]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=284</guid>
		<description><![CDATA[Wersja 4.9 systemu OpenBSD miala swoją premierę 1. Maja 2011 roku. Zmian jest bardzo dużo, ich dokładna lista znajduje się tutaj. Poniżej mały poradnik jak zainstalować system OpenBSD pod VirtualBox&#8217;em. Przygotowanie maszyny wirtualnej Na początku utworzymy nową maszynę wirtualną. Przydzielimy &#8230; <a href="http://tech.itcore.com.pl/2011/06/22/instalacja-openbsd-4-9-w-virtualboxie-krok-po-kroku/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Wersja 4.9 systemu OpenBSD miala swoją premierę 1. Maja 2011 roku. Zmian jest bardzo dużo, ich dokładna lista znajduje się <a href="http://openbsd.org/plus49.html">tutaj</a>. Poniżej mały poradnik jak zainstalować system OpenBSD pod <a href="http://www.virtualbox.org/">VirtualBox&#8217;em</a>.</p>
<h3>Przygotowanie maszyny wirtualnej</h3>
<p>Na początku utworzymy nową maszynę wirtualną. Przydzielimy systemowi 512MB pamięci, do tego dysk twardy o rozmiarze 8GB. </p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen01.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen01-300x230.png" alt="" title="screen01" width="300" height="230" class="aligncenter size-medium wp-image-287" /></a><span id="more-284"></span><br />
<a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen02.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen02-300x226.png" alt="" title="screen02" width="300" height="226" class="aligncenter size-medium wp-image-288" /></a><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen03.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen03-300x226.png" alt="" title="screen03" width="300" height="226" class="aligncenter size-medium wp-image-289" /></a><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen04.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen04-300x226.png" alt="" title="screen04" width="300" height="226" class="aligncenter size-medium wp-image-290" /></a><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen05.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen05-300x226.png" alt="" title="screen05" width="300" height="226" class="aligncenter size-medium wp-image-291" /></a></p>
<h3>Instalacja systemu</h3>
<p>Po przygotowaniu maszyny wirtualnej, można przystąpić do instalacji. Na początek musimy ściągnąć obraz ISO systemu (plik <i>install49.iso</i>). Lista wszystkich serwerów lustrzanych znajduje się pod adresem <a href="http://openbsd.org/ftp.html">openbsd.org/ftp.html</a>. Plik ten następnie dodajemy do naszej maszyny wirtualnej jako napęd CD (<i>Storage</i> -> <i>IDE Controller</i>):</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen06.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen06-300x244.png" alt="" title="screen06" width="300" height="244" class="aligncenter size-medium wp-image-298" /></a></p>
<p>Teraz możemy uruchomić już maszynę i naszym oczom ukaże się <i>bootloader</i> systemu. Po wciśnięciu klawisza enter, wczyta się instalator systemu. Na początku musimy zdecydować czy chcemy system zainstalowac (<i>&#8216;I&#8217;</i>), zaaktualizowac (<i>&#8216;U&#8217;</i>) czy chcemy uruchomić tylko powłokę (<i>&#8216;S&#8217;</i>). My oczywiście wciskamy <i>&#8216;I&#8217;</i>.  Zostawiamy domyślny układ klawiatury, ustawiamy nazwę hosta i decydujemy się na automatyczną konfigurację sieci.</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen07.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen07-300x166.png" alt="" title="screen07" width="300" height="166" class="aligncenter size-medium wp-image-305" /></a></p>
<p>W kolejnym kroku ustawiamy hasło dla konta <i>root</i> oraz dzecydujemy się na automatyczny start demona <i>sshd</i> i <i>ntpd</i> wraz z systemem. Ustawiamy też konto dla zwykłego użytkownika (<i>testuser</i>)</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen08.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen08-300x167.png" alt="" title="screen08" width="300" height="167" class="aligncenter size-medium wp-image-306" /></a></p>
<p>Teraz czas na podział dysku na partycje. Instalator automatycznie przygotuje dysk:</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen09.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen09-300x169.png" alt="" title="screen09" width="300" height="169" class="aligncenter size-medium wp-image-307" /></a></p>
<p>jednak my utworzymy własny schemat (guzik <i>&#8216;C&#8217;</i>):</p>
<pre class="brush: plain; title: ;">
/ -&gt; 5000MB
swap -&gt; 256MB
/home -&gt; reszta
</pre>
<p>Partycje dodajemy używając <i>&#8216;a&#8217;</i>, określamy jej rozmiar (np 5000M), punkt montowania (np. <i>/home</i>) oraz typ plików (zostawiamy domyślne). Po wszystkim wychodzimy zapisujemy schemat (<i>&#8216;w&#8217;</i>) i wychodzimy z programu (<i>&#8216;q&#8217;</i>). Podział na partycje jest pokazany poniżej:</p>
<p><a href="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen10.png"><img src="http://tech.itcore.com.pl/wp-content/uploads/2011/06/screen10-300x171.png" alt="" title="screen10" width="300" height="171" class="aligncenter size-medium wp-image-308" /></a></p>
<p>Teraz pora na wybór pakietów które chcemy mieć zainstalowane w systemie. Do wyboru mamy kilka tzw. <i>set&#8217;ów</i>, są to m.in. jądro systemu (<i>bsd, bsd.rd, bsd.mp</i>), pliki konfiguracyjne (<i>etc</i>), bibioteki, manuale, kompilatory, X-serwer, czcionki. My zostawimy domyślny zestaw. Odznaczyć dany <i>set</i> moża wpisując znak <i>&#8216;-&#8217;</i> wraz z jego nazwą (np. <code>-game49.tgz</code>), a dodajemy używając <i>&#8216;+&#8217;</i>.<br />
Na koniec pozostaje nam wybór strefy czasowej (<code>Europe/Warsaw</code>) i system jest już gotowy. Wpisujemy polecenie <code>reboot</code>, usuwamy wirtualną płytę i bootujemy nasz nowy system.</p>
<h3>Konfiguracja</h3>
<p>Po instalacji dodamy kilka podstawowych pakietów, które ułatwią nam pracę. Na początku musimy ustawić zmienną <code>PKG_PATH</code>:</p>
<pre class="brush: plain; title: ;">
export PKG_PATH=ftp://ftp.piotrkosoft.net/pub/OpenBSD/4.9/packages/i386/
</pre>
<p>Zmienną <code>PKG_PATH</code> warto dodać to pliku <code>~/.profile</code>. Teraz możemy już zainstalować interesujące nas aplikacje (<i>bash, screen, bzip2, mc</i>):</p>
<pre class="brush: plain; title: ;">
# pkg_add -i bash
bash-4.1.9p0:partial-libiconv-1.13p2-&gt;libiconv-1.13p2: ok
bash-4.1.9p0:gettext-0.18.1p0: ok
bash-4.1.9p0: ok
# pkg_add -i screen
Ambiguous: choose package for screen
 a       0: &lt;None&gt;
         1: screen-4.0.3p2
         2: screen-4.0.3p2-shm
         3: screen-4.0.3p2-static
Your choice: 1
screen-4.0.3p2: ok
# pkg_add -i screen
Ambiguous: choose package for screen
 a       0: &lt;None&gt;
         1: screen-4.0.3p2
         2: screen-4.0.3p2-shm
         3: screen-4.0.3p2-static
Your choice: 1
screen-4.0.3p2: ok
# pkg_add -i bzip2
bzip2-1.0.6: ok
# pkg_add -i mc
mc-4.7.0.8:pcre-8.02p1: ok
mc-4.7.0.8:oniguruma-5.9.1: ok
mc-4.7.0.8:libslang-2.2.2: ok
mc-4.7.0.8:zip-3.0: ok
mc-4.7.0.8:unzip-6.0: ok
mc-4.7.0.8:libgamin-0.1.10p3: ok
mc-4.7.0.8:glib2-2.26.1p0: ok
mc-4.7.0.8: ok
</pre>
<p>Więcej na temat zarządzania pakietami w systemie OpenBSD można przeczytać w <a href="http://tech.itcore.com.pl/2011/03/18/zarzadzanie-pakietami-w-openbsd/">naszym starszym wpisie</a>. Na koniec jescze dla użytkownika <i>testuser</i> ustawimy powłokę <code>bash</code> jako domyślną:</p>
<pre class="brush: plain; title: ;">
# usermod -s /usr/local/bin/bash testuser
# su - testuser
-bash-4.1$ echo $SHELL
/usr/local/bin/bash
</pre>
<p>Nasza &#8222;bazowa&#8221; wersja systemu jest już gotowa. W <a href="http://tech.itcore.com.pl/2011/07/07/openbsd-4-9-i-gnome-2-32/">kolejnym artykule</a> opiszemy jak zainstalować i skonfigurować na niej środowisko Gnome 2.32.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/06/22/instalacja-openbsd-4-9-w-virtualboxie-krok-po-kroku/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Packet filter i DNSBL</title>
		<link>http://tech.itcore.com.pl/2011/06/08/packet-filter-i-dnsbl/</link>
		<comments>http://tech.itcore.com.pl/2011/06/08/packet-filter-i-dnsbl/#comments</comments>
		<pubDate>Wed, 08 Jun 2011 12:30:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Bezpieczeństwo]]></category>
		<category><![CDATA[bezpieczeństwo]]></category>
		<category><![CDATA[DNSBL]]></category>
		<category><![CDATA[OpenBSD]]></category>
		<category><![CDATA[packet filter]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=261</guid>
		<description><![CDATA[DNSBL (DNS-based Blacklist) czyli lista adresów IP podejrzanych o spamowanie. Listy takie bardzo często są używane przez serwery pocztowe, jako jedna z metod zabezpieczenia się przed spamem. Jest ich dostępnych wiele w internecie, część z nich jest zupełnie darmowa. Ich &#8230; <a href="http://tech.itcore.com.pl/2011/06/08/packet-filter-i-dnsbl/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><B>DNSBL</b> (<i>DNS-based Blacklist</i>) czyli lista adresów IP podejrzanych o spamowanie. Listy takie bardzo często są używane przez serwery pocztowe, jako jedna z metod zabezpieczenia się przed spamem. Jest ich dostępnych wiele w internecie, część z nich jest zupełnie darmowa. Ich porównanie można znaleźć np na <a href="http://en.wikipedia.org/wiki/Comparison_of_DNS_blacklists">angielskiej Wikipedii</a>.  W podanym niżej przykładzie użyjemy takiej listy w połączeniu z <code>packet filter</code> w systemie OpenBSD.<br />
<span id="more-261"></span></p>
<h3>Pobranie listy</h3>
<p>Posłużymy się plikiem udostępnianym na stronie <a href="http://www.heise.de/ix/NiX-Spam-DNSBL-and-blacklist-for-download-499637.html">heise.de</a>. Jak można przeczytać lista jest uaktualniana co 15 minut, a w pliku znajduje się 40000 adresów IP. Po 12h dany adres jest automatycznie usuwany z listy, jeśli nie wysyła już spamu. Plik zapiszemy i rozpakujemy w katalogu <code>/tmp</code>:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;wget http://www.dnsbl.manitu.net/download/nixspam-ip.dump.gz -O /tmp/spamips_list.gz
root@fw-s:~&gt;gunzip /tmp/spamips_list.gz
</pre>
<p>Każda linika w pliku składa się z 2 pól: czasu i adresu IP. My potrzebujemy tylko kolumnę nr 2:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;cd /tmp &amp;&amp; cat spamips_list | cut -d&quot; &quot; -f2 &gt; spamips_list.txt
root@fw-s:~&gt;wc -l /tmp/spamips_list
   40000 /tmp/spamips_list
</pre>
<h3>Konfiguracja packet filter</h3>
<p>Tak przygotowany plik można już wrzucić do firewall&#8217;a. W tym celu stworzymy nową tablicę <code>spamips_list</code>, która będzie wskazywać na nasz plik. Następnie zablokujemy cały ruch z tych adresów IP na interfejsie WAN dla portów 25, 110, 465 etc.</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;cat /etc/pf.conf
table &lt;spamips_list&gt; persist file &quot;/tmp/spamips_list.txt&quot;
block in log quick on $WAN proto tcp from &lt;spamips_list&gt; to any port {25,110,465}
</pre>
<p>Teraz wystarczy tylko zrestartować <code>pfctl</code>:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;pfctl -t spamips_list -T kill &amp;&amp; pfctl -f /etc/pf.conf
</pre>
<p>Warto jeszcze zobaczyć czy tablica została utworzona i czy jakieś adresy IP zostały już zablokowane:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;pfctl -t spamips_list -T show  | wc -l
   39785
root@fw-s:~&gt;pfctl -sr -vv | grep -A2 spamips
@20 block drop in log quick on vr0 inet proto tcp from &lt;spamips_list:33285&gt; to any port = smtp
  [ Evaluations: 2177      Packets: 5         Bytes: 300         States: 0     ]
</pre>
<p>Tablica <code>spamips_list</code> zawiera 39785 adresów IP (zdublowane adresy są automatyczne usuwane), a nasz firewall zablokował już 5 pakietów na porcie 25 z adresów IP znajdujących się w tablicy. Czyli wszystko gra.<br />
Jako że lista jest aktualizowana co 15 minut, warto napisać skrypt który automatycznie pobiera nowe adresy, a następnie restartuje firewall&#8217;a.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/06/08/packet-filter-i-dnsbl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kopia dysku przy użyciu polecenia dd</title>
		<link>http://tech.itcore.com.pl/2011/05/20/kopia-dysku-przy-uzyciu-polecenia-dd/</link>
		<comments>http://tech.itcore.com.pl/2011/05/20/kopia-dysku-przy-uzyciu-polecenia-dd/#comments</comments>
		<pubDate>Fri, 20 May 2011 11:14:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenBSD]]></category>
		<category><![CDATA[tips&tricks]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=249</guid>
		<description><![CDATA[Używając polecenia dd możemy zrzucić zawartość całego dysku (lub partycji) do np. pliku. Zrobimy kopię dysku /dev/sda, a następnie zapiszemy ja na drugim dysku zamontowanym w katalogu /mnt. [root@itcore ~]# dd if=/dev/sda of=/mnt/sda-dump.img 19999490048 bytes (20 GB) copied, 2335.69 s, &#8230; <a href="http://tech.itcore.com.pl/2011/05/20/kopia-dysku-przy-uzyciu-polecenia-dd/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Używając polecenia <code>dd</code> możemy zrzucić zawartość całego dysku (lub partycji) do np. pliku. Zrobimy kopię dysku <code>/dev/sda</code>, a następnie zapiszemy ja na drugim dysku zamontowanym w katalogu <code>/mnt</code>.<br />
<span id="more-249"></span></p>
<pre class="brush: plain; title: ;">
[root@itcore ~]# dd if=/dev/sda of=/mnt/sda-dump.img
19999490048 bytes (20 GB) copied, 2335.69 s, 8.6 MB/s
</pre>
<p>Taka kopię najlepiej wykonać na nie zabotowanym systemie, używając na przykład dystrybucji <i>LiveCD</i> (<a href="http://www.knoppix.org/">Knoppix</a>). Warto ustawić też większą wartość dla opcji <code>bs</code> (ile bajtów jest odczytywanych/zapisywanych naraz) przez co zyskamy na czasie, przykładowo 15MB:</p>
<pre class="brush: plain; title: ;">
[root@itcore ~]# dd bs=15M if=/dev/sda of=/mnt/sda-dump.img
19999490048 bytes (20 GB) copied, 875.233 s, 22.9 MB/s
</pre>
<p>Różnica w szybkości jest znaczna, z 8.6MB/s dla domyślnych wartości do 22.9MB/s przy ustawieniu <code>bs=15MB</code>.</p>
<h3>Zrzut dysku na zdalny serwer</h3>
<p>Łącząc polecenie <code>dd</code> z <code>ssh</code> można w prosty sposób umieścić kopię dysku na zdalnym serwerze:</p>
<pre class="brush: plain; title: ;">
[root@itcore ~]# dd if=/dev/sda bs=15M conv=sync,noerror | ssh -o TCPKeepAlive=yes root@REMOTE_SERVER “dd of=/root/sda-dump.img”
</pre>
<p>Aby zaoszczędzić cenny transfer, można użyć polecenia <code>gzip</code>. Dodatkowo używając polecenia <code>pv</code> ograniczymy prędkość wysyłania do 1MB na sekundę:</p>
<pre class="brush: plain; title: ;">
[root@itcore ~]# dd if=/dev/sda bs=10M conv=sync,noerror | gzip -c | pv -L 1m -r | ssh -o TCPKeepAlive=yes root@REMOTE_SERVER &quot;cat &gt; root/sda-dump.img.gz&quot;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/05/20/kopia-dysku-przy-uzyciu-polecenia-dd/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>chmod -x chmod</title>
		<link>http://tech.itcore.com.pl/2011/05/16/chmod-x-chmod/</link>
		<comments>http://tech.itcore.com.pl/2011/05/16/chmod-x-chmod/#comments</comments>
		<pubDate>Mon, 16 May 2011 14:46:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[tips&tricks]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=247</guid>
		<description><![CDATA[chmod dobrze znana komenda przy pomocy której możemy zmieniać prawa plików (zapis, odczyt, wykonanie). Pytanie, co zrobić jeśli usuniemy prawo do wykonywania dla komendy chmod? Problem na szczęście da się rozwiązać, a sposobów jest wiele. Zaczynamy od usunięcia bitu executable &#8230; <a href="http://tech.itcore.com.pl/2011/05/16/chmod-x-chmod/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><code>chmod</code> dobrze znana komenda przy pomocy której możemy zmieniać prawa plików (zapis, odczyt, wykonanie). Pytanie, co zrobić jeśli usuniemy prawo do wykonywania dla komendy <code>chmod</code>? Problem na szczęście da się rozwiązać, a sposobów jest wiele.<br />
<span id="more-247"></span><br />
Zaczynamy od usunięcia bitu <i>executable</i> z polecenia <code>chmod</code>:</p>
<pre class="brush: plain; title: ;">
[root@itcore bin]# ls -l /bin/chmod
-rwxr-xr-x 1 root root 40024 Oct 27  2009 /bin/chmod
[root@itcore bin]# chmod -x /bin/chmod
[root@itcore bin]# /bin/chmod
bash: /bin/chmod: Permission denied
-rw-r--r-- 1 root root 40024 Oct 27  2009 /bin/chmod
</pre>
<p>Operacji nie da się już naprawić w prosty sposób:</p>
<pre class="brush: plain; title: ;">
[root@itcore bin]# /bin/chmod +x /bin/chmod
bash: /bin/chmod: Permission denied
</pre>
<h3>Naprawa</h3>
<p>Tak jak pisaliśmy sposobów jest wiele. Możemy użyć linkera <code>ld.so</code>, który pozwoli nam uruchomić dowolny program:</p>
<pre class="brush: plain; title: ;">
[root@itcore ~]# /lib64/ld-2.5.so /bin/chmod +x /bin/chmod
[root@itcore ~]# ls -l /bin/chmod
-rwxr-xr-x 1 root root 40024 Oct 27  2009 /bin/chmod
</pre>
<p>W zależności od wersji systemu (32 lub 64bity) należy użyć katalogu <code>lib</code> lub <code>lib64</code>. Plik <code>chmod</code> można też naprawić używając dowolnego pliku, który aktualnie posiada prawa wykonywania. Wystarczy skopiować go gdzieś (np. jako <code>/bin/chmod2</code), wyczyścić jego zawartość i wkopiować do niego oryginalnego <code>chmod'a</code>:</p>
<pre class="brush: plain; title: ;">
[root@itcore ~]# cp /bin/ls  /bin/chmod2
[root@itcore ~]# cat /bin/chmod &gt; /bin/chmod2
[root@itcore ~]# /bin/chmod2
[root@itcore ~]# /bin/chmod2 +x /bin/chmod
[root@itcore ~]# ls -l /bin/chmod
-rwxr-xr-x 1 root root 40024 Oct 27  2009 /bin/chmod
[root@itcore ~]# rm /bin/chmod2
rm: remove regular file `/bin/chmod2'? y
</pre>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/05/16/chmod-x-chmod/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sendmail i plik /etc/hosts</title>
		<link>http://tech.itcore.com.pl/2011/05/11/sendmail-i-plik-etchosts/</link>
		<comments>http://tech.itcore.com.pl/2011/05/11/sendmail-i-plik-etchosts/#comments</comments>
		<pubDate>Wed, 11 May 2011 14:47:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[OpenBSD]]></category>
		<category><![CDATA[sendmail]]></category>
		<category><![CDATA[tips&tricks]]></category>

		<guid isPermaLink="false">http://tech.itcore.com.pl/?p=242</guid>
		<description><![CDATA[Sendmail w domyślnej konfiguracji (OpenBSD) ignoruje plik /etc/hosts i korzysta tylko z serwera DNS. Zmienić to można tworząc plik service.switch w katalogu /etc/mail, a następnie dodając odpowiedni wpis: root@fw-s:~&#62;cat /etc/mail/service.switch hosts files dns W tym przypadku sendmail najpierw sprawdzi zawartość &#8230; <a href="http://tech.itcore.com.pl/2011/05/11/sendmail-i-plik-etchosts/">Czytaj dalej <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Sendmail w domyślnej konfiguracji (OpenBSD) ignoruje plik <code>/etc/hosts</code> i korzysta tylko z serwera DNS. Zmienić to można tworząc plik <code>service.switch</code> w katalogu <code>/etc/mail</code>, a następnie dodając odpowiedni wpis:<br />
<span id="more-242"></span></p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;cat /etc/mail/service.switch
hosts       files dns
</pre>
<p>W tym przypadku <i>sendmail</i> najpierw sprawdzi zawartość pliku <code>/etc/hosts</code>, a dopiero później skorzysta z serwera DNS (jeżeli nie znajdzie potrzebnej domeny w pliku). Jeśli chcemy, żeby korzystał tylko z pliku <i>hosts</i> wystarczy usunąć słowo <i>dns</i>:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;cat /etc/mail/service.switch
hosts       files
</pre>
<p>Na koniec musimy zrestartować proces <code>sendmail</code>:</p>
<pre class="brush: plain; title: ;">
root@fw-s:~&gt;kill -HUP `head -1 /var/run/sendmail.pid`
</pre>
]]></content:encoded>
			<wfw:commentRss>http://tech.itcore.com.pl/2011/05/11/sendmail-i-plik-etchosts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

