[OpenBSD]

8.0 - Obecné otázky




8.2 - Jak změním virtuální terminály?

Podívejte se do této sekce.

8.3 - Zapomněl jsem rootovo heslo... Co mám dělat?

Několik kroků vedoucích k nápravě:

  1. Nabootujte do single user módu. Pro i386 architekturu napište boot -s na boot promptu.
  2. připojte disky (mount).
  3. Pokud /usr není na tom samém oddílu jako / (a to by být neměl) pak ho budete muset také připojit, tedy
  4. spusťte passwd(1)
  5. nabootujte do multiuser módu.. a pamatujte si vaše heslo!

8.4 - Nestartují mi X, mám jen spoustu chybových hlášení

Pokud máte již X nastavené a používáte XF86Config o kterém víte, že je funkční, pak problém pravděpodobně leží v machdep.allowaperture. Měli byste se ujistit, že:

je v konfiguračním souboru jádra. [V GENERIC jádru to už je]

Poté potřebujete zeditovat /etc/sysctl.conf a nastavit machdep.allowaperture=2. Toto dovolí přístup X k aperture driveru. Tato volba by měla být již nastavena při instalaci, pokud jste správně odpovědeli na otázku, zda budete spouštět X server. OpenBSD požaduje pro všechny X servery, aby byl nastaven aperture driver, protože ten řídí přístup k I/O portům na video kartě.

Pro další problémy s X na i386 konzultujte FAQ na http://www.xfree86.org/support.html.

8.5 - Co je to CVS a jak ho mám používat?

CVS je prostředek, pomocí kterého projekt OpenBSD kontroluje změny ve zdrojovém kódu. CVS je zkratka za Concurrent Versions System, tedy systém pro udržování více verzí. Více si můžete o CVS přečíst na http://www.cvshome.org/. CVS mohou používat i koncoví uživatelé, pro update zdrojového kódu a změny v ports tree. CVS umožňuje neobyčejně jednodušše stáhnout zdrojový kód díky mnoha CVS mirorům projektu.

Jak nastavit prostředí CVS (environment)

Zdrojový kód můžete získat z některého z OpenBSD AnonCVS serverů. Tyto servery jsou vyjmenovány v http://www.openbsd.org/cs/anoncvs.html. Poté, co si vyberete server, musíte určit který modul hodláte stáhnout. K dispozici jsou tři hlavní moduly pro checkout v CVS stromu. Jsou to:

Poté co jste si vybrali modul pro stažení, je zde ještě jeden krok předtím než začnete stahovat. Musíte se rozhodnout, kterou metodu použijete. CVS implicitně stahuje soubory pomocí ssh(1), ale některé AnonCVS servery umožňují použití rsh. Pro ty z vás, kteří se nacházíte za firewallem, je zde možnost, aby pserver nebo AnonCVS server spouštěl ssh na portu 2022. Zkontrolujte http://www.openbsd.org/cs/anoncvs.html, abyste se ujistili, které servery podporují jaké protokoly. Nyní vám ukážeme jak udělat jednoduchý checkout zdrojového kódu. Budeme zde používat AnonCVS server nacházející se v U.S., ale nezapomeňte, že mimo U.S potřebujete server, který je k vám nejblíže (např. v České Republice). Pro stahování souborů budeme používat ssh.

Všimněte si, že jsem rovněž nastavil proměnnou prostřední CVSROOT. Tato proměnná říká cvs(1), který AnonCVS server má použít. Totéž může být docíleno volbou -d. Například:

Tyto příkazy by měly být spuštěny v adresáři /usr, který poté vytvoří adresář /usr/src, /usr/ports a /usr/www. Samozřejmě v závislosti na tom, který modul checkoutujete. Moduly můžete stáhnout kamkoliv, ovšem pokud chcete s nimi pracovat, (např. spouštět make atd.) očekává se, že budou tam, kde mají být, viz. výše.

Update vašeho CVS stromu

Jakmile jednou vytvoříte váš cvs strom, update tohoto stromu je jednoduchou záležitostí. Update můžete provádět kdykoliv, některé AnonCVS servery provádí update častěji než jiné, proto se opět podívejte na http://www.openbsd.org/cs/anoncvs.html. V následujícím případě budeme updatovat modul www z anoncvs.usa.openbsd.org. Všimněte si, že používám parametr -q, který způsobuje stručnější výstup, který přichází od serveru.

Další volby cvs

V případech, kdy máte málo času nebo pomalou internetovou linku, se stává update cvs stromu problémem. Proto má CVS volbu -z[1-9], která používá gzip pro kompresi dat. Její význam je -z[úroveň-komprese], např. -z3 pro úroveň komprese 3.

8.6 - Co to je strom portů (ports tree)?

Strom portů je sada souborů Makefile, které downloadují, patchují, konfigurují a instalují uživatelské programy tak, že je můžete používat v prostředí OpenBSD, aniž byste to museli dělat ručně. Strom portů můžete získat z kteréhokoliv z OpenBSD FTP serverů v /pub/OpenBSD/3.1/ports.tar.gz. Nejnovější porty jsou k dispozici z cvs stromu 'ports'nebo /pub/OpenBSD/snapshots/ports.tar.gz. Pro většinu z vás ale bude mnohem lepší použít balíky (packages). Balíky jsou vytvářeny z portů a jsou už zkompilované a připravené k použití. Více o balících se dozvíte ve FAQ 8, Packages.

Důležitá poznámka o synchronizaci vašeho systému a portů

OpenBSD má v kterémkoliv okamžiku tři "aktivní" verze: NEMÍCHEJTE verze Portů a OpenBSD!

Pokud je váš systém Release, používejte Release verzi stromu portů. Nezkoušejte použít -Current verzi Ports tree na -Release nebo -Stable systému. Nejen, že to nejspíš nebude fungovat, ale ještě naštvete lidi, když budete žádat o pomoc s tím, proč "nic nefunguje!". Všimněte si, že existuje -Stable větev stromu portů, kam budou zaneseny kritické opravy -Release portů.

Ano, skutečně to znamená, že úžasný nový port typicky nepoběží na vašem "starším" systému -- i když ten systém byl -current pouze před pár týdny.

Pokud nemáte strom portů nainstalovaný, můžete ho stáhnout z kteréhokoliv z OpenBSD FTP servers nebo. samozřejmě, z CDROM. Je to soubor ports.tar.gz, který roztarujete v adresáři /usr, čímž vznikne /usr/ports a všechny adresáře v něm. Například:

$ ftp ftp://ftp.openbsd.org/pub/OpenBSD/3.1/ports.tar.gz
$ sudo cp ports.tar.gz /usr
$ cd /usr; sudo tar xfz ports.tar.gz

Snapshot ports tree je také vytvářen denně a může být downloadován z kteréhokoliv ftp serveru OpenBSD projektu pod názvem /pub/OpenBSD/snapshots/ports.tar.gz. Pokud instalujete snapshot OpenBSD, měli byste použít odpovídající snapshot portů. Opět, ujistěte se, že váš strom portů a OpenBSD jsou synchronizovány.

Které porty jsou k dispozici? a jak je mám nalézt?

Použijte strom portů pro hledání podle klíče. Dělá se to asi takhle: make search key="searchkey" Zde je příklad, jak hledat 'sambu':

Instalace portů

Porty jsou připraveny tak, aby bylo JEDNODUCHÉ pustit na ně make a instalovat je. Zde je příklad instalace X11 programu xfig. Všimněte si, že závislosti jsou automaticky detekovány a kompletovány:

Nejprve se musíte přepnout pomocí cd do adresáře programu, který chcete. Pokud hledáte nějaký program, můžete buď updatovat locate databázi, nebo používat vyhledávací funkci, o které promluvíme dále. Když se již nacházíte v adresáři náležejícímu programu, který hledáte, napíšete pouze make install. Například:

Používání Flavors

Hodně aplikací v ports tree podporuje různé instalační volby nazývané flavors. Pokud port existuje ve více variantách, můžete použít tyto volby jednoduše nastavením proměnné prostředí před tím, než zkompilujete port. Pokud potřebujete více vlastností, můžete nastavit proměnnou FLAVOR na mezerami oddělený seznam podporovaných a požadovaných flavors. Momentálně má mnoho portů varianty, které zahrnují podporu databází, podporu pro systémy bez X nebo sítové přídavky jako SSL nebo IPv6.

Výpis instalovaných balíků/portů

Seznam portů i balíků můžete vidět pomocí programu pkg_info.

Další informace

Více informací o portech můžete nalézt v manuálové stránce ports(7) a na stránce portů.

Náš ports tree se neustále rozšiřuje, a pokud byste při tomto rozšiřování chtěli pomoci, podívejte se sem: http://www.openbsd.org/cs/porting.html

8.7 - Co jsou to packages (balíky)?

Packages jsou předkompilované binárky nejčastěji používaných programů. Jsou připraveny pro použití na OpenBSD. Stejně jako porty i packages jsou jednodušše udržovatelné a updatovatelné. Packages jsou trvale přidávány, proto zkontrolujte každou další verzi OpenBSD pro přidané balíky.

Následuje seznam programů pro práci s packages.

Kde najít packages

Pokud jste pravý uživatel OpenBSD a koupili jste si OpenBSD CD, pak se packages nacházejí na obou CD v závislosti na architektuře. Pokud nemáte OpenBSD CD k dispozici (divné..), můžete stáhnout packages z kteréhokoliv ftp miroru. Seznam mirorů je tady: http://www.openbsd.org/ftp.html. Packages se nacházejí v /pub/OpenBSD/3.1/packages kde jsou dále rozděleny podle architektury.

Instalování packages

Používá se program pkg_add(1). Jedná se neobyčejně jednoduchý program, v následujících dvou příkladech použijeme pkg_add(1) pro instalaci balíku. První příklad ukáže použití pkg_add(1) při instalaci balíku z místa na lokálním disku. Druhý příklad bude instalovat balík nacházející se na ftp. V obou případech budeme instalovat software screen-3.9.11.

Použili jsme flag -v, abychom dostali podrobnější výstup. Tento flag není zapotřebí, ale dobrý při ladění a použili jsme ho zde, abychom vám ukázali pozadí celého příkazu pkg_add(1). Všimněte si, že je tu několik zpráv, které se objevily jako např. /etc/screenrc. Tyto informace se vypisují i bez volby -v.

V našem příkladu jsme instalovali balík pro architekturu i386, tu však můžete nahradit vaši architekturou. Poznámka: Ne všechny architektury mají stejný softwarový balík. Některé porty nepracují na určitých architekturách. V druhém příkladu nebyla použita volba -v, proto jsou vypsány pouze NUTNÉ zprávy.

Prohlížení a mazání instalovaných balíků

Používá se program pkg_info(1) pro zjištění, které balíky jsou již instalovány v systému. Tento postup je důležitý pro zjištění správného jména balíku v případě, že jej chcete odstranit. Výpis instalovaných balíků:

Při mazání balíku, jednodušše vezměte správný název balíku jak byl vypsán pomocí pkg_info(1) a použijte pkg_delete(1) pro jeho odstranění. V následujícím příkladě odstraníme package screen. Tak jako v případě pkg_add(1) můžeme i zde použít flag -v pro získání podrobnějšího výstupu.

8.8 - Jak mohu používat svoji disketovou jednotku, pokud nebyla přihlášena při startu?

Jde to. Potřebujete přidat "flags 0x20" na konec fd* entry a rekompilovat jádro. Měla by se načíst řádka:

Poté budete moci používat floppy drive kdykoliv, bez ohledu na to, zda jste ji připojili až po bootu.

8.9 - Boot time Options - Používáme OpenBSD bootloader

Při bootování OpenBSD jste si patrně všimli boot promptu.

Většina lidí v tomto okamžiku nebude nic dělat. Boot bude automaticky pokračovat, pokud nezadáte žádné příkazy. Někdy se však objeví problém, nebo potřebujete speciální funkce. Nyní tyto volby přicházejí vhod. Prozačátek byste si měli přečíst manuálovou stránku boot(8). Zde projdeme nejdůležitější příkazy pro bootloader.

Po startu, pokud nezadáte na promptu žádné příkazy, bootloader zkusí automaticky bootovat jádro ze souboru /bsd. Pokud se to nepodaří bude zkoušet /obsd, a pokud se i to nepodaří, zkusí /bsd.old. Které jádro se bude bootovat můžete specifikovat ručně:

nebo

Toto funguje, pokud zařízení wd0a je konfigurováno jako root device.

Následuje krátký seznam voleb, které můžete použít spolu s OpenBSD jádrem.

Tyto volby se zadávají ve formátu: boot [ image [-acds]]

Pro další informace viz. manuálová stránka boot_i386(8)

8.10 - S/Key

S/Key je ``one-time password'' schéma. Zavádí hesla na jedno použití na nezabezpečených linkách. Toto schéma se hodí pro ty, kteří nemohou používat ssh nebo jiné šifrované linky. Implementace S/Key v OpenBSD používá různé algoritmy jako jednocestné hashe. Zde je seznam algoritmů, které jsou k dispozici:

Nastavení S/Key - První kroky

Abyste mohli začít, musí existovat soubor /etc/skeykeys. Pokud neexistuje, musí ho superuživatel vytvořit. Např.:

Jakmile tento soubor existuje, můžete inicializovat váš S/Key. Proveďte to pomocí skeyinit(1). V skeyinit(1) budete vyzváni k zadání vašeho uživatelského hesla. Spouštění skeyinit(1) přes nezabezpečené kanály se zcela nedoporučuje, mělo by se tak tedy dít buďto přes bezpečný kanál (jaký vytváří např. ssh), nebo z konzole. Poté co jste se autorizovali vaším uživatelským heslem, budete žádáni o další heslo. Toto heslo je bezpečné heslo pro S/Key a NENÍ to vaše uživatelské heslo. Bezpečné heslo musí mít délku alespon 10 znaků. Doporučujeme použít zapamatovatelnou frázi obsahující několik slov. Zde je příklad přidání uživatele:

Zvláště podstatná je zde řádka ID ericj skey is otp-md5 99 oshi45820. Tento řetězec dává uživateli mnoho cených informací. Zde je význam jednotlivých polí tohoto řetězce:

Stejně tak důležité je však i vaše heslo. To se skládá ze šesti malých slov, kombinovány společně vytvářejí vaše heslo.

Vlastní použití S/Key pro login.

Poté co jste inicializovali váš skey a máte své heslo, můžete se přihlásit. Zde je příklad session používající s/key k přihlášení. Počínaje OpenBSD 3.0, S/Key login funguje jinak. V OpenBSD 3.0 a novějších přidáte :skey k vašemu login name. Pro verze OpenBSD předcházející 3.0 zadáte s/key jako heslo a v tom okamžiku jste vyzvání k zadání vašeho S/Key hesla (vyjímkou je ftpd(8). který vždy provede S/Key challenge pro uživatele s povoleným S/Key v OpenBSD starším než 3.0). Následující příklad předpokládá OpenBSD 3.0 nebo novější:

Všimněte si, že jsem přidal ":skey" k svému username. To říká ftpd, že se chci autentizovat pomocí S/Key. Možná jste si všimli, že se změnilo moje sequence number na otp-md5 96 oshi45820. Je to tím, že jsem doposud již několikrát použil s/key pro přihlášení. Jak ale dostanu svoje heslo poté, co jsem se již přihlásil? K tomu budete potřebovat znalost vašeho sequence number a klíče, který používáte. Jak již asi tušíte, jak si můžete pamatovat, jaké sequence number používáte? No, zjistit to je jednoduché, použijte skeyinfo(1), a to vám řekne, jaké sequence number použít. Například zde potřebujeme vygenerovat jiné heslo pro přihlášení někdy v budoucnu (pamatujte si, že následující provádíme z bezpečného kanálu).

Ještě lepší způsob je použít skeyinfo -v, který produkuje příkaz vhodný ke spuštění v shellu. Například:

Nejen že otp-md5 je popis použité hash funkce, ale je to také alternativní název příkazu skey(1). Takže nejjednudušší způsob vygenerování dalšího S/Key je jednoduše:

Všimněte si zpětných apostrofů v předchozím přikladu.

Jsem si jistý, že mnoho z vás nemá vždy k dispozici bezpečný datový kanál pro vytvoření těchto hesel, a vytváření přes nezabezpečený kanál je neproveditelné, takže jak můžete vytvořit více těchto hesel najednou? Můžete dodat skey(1) jako argument číslo udávající počet hesel, která chcete vytvořit. Tento seznam si můžete vytisknout a vzít si ho s sebou kam chcete.

Poznamenejme snad jen, že nejspodnější heslo by mělo být to, které použijete jako první, protože u nás počítáme od 100 dolů.

Používání S/Key spolu s telnet(1), ssh(1), a rlogin(1)

Použití S/Key spolu s telnetem, ssh a rloginem se dělá stejným způsobem jako v případě ftp -- pouze přidáte ":skey" na konec vašeho username. Příklad:

8.11 - Why is my Macintosh losing so much time?

This is caused by a hardware bug. OpenBSD uses clock interrupts to keep track of the current time, but these interrupts have the lowest priority in Apple's architecture. So, under heavy load, (such as disk or network activity) clock interrupts will be lost and the Unix clock will not advance as it should.

MacOS gets around the time problem by always reading the hardware clock. OpenBSD only reads the hardware clock at boot time and thereafter ignores it. You may notice that, at shutdown, the kernel is not confident enough to write the Unix time back into the hardware clock because this time loss problem is well known.

The best solution is to run ntpd (found in the ports collection) and just deal with the occasional lossage. Sometimes the lossage is so bad that even ntpd is afraid to skip the time. In this case, add the -g option to ntpd in /etc/rc.securelevel to force tracking.

Another simpler but less precise solution is to run rdate(8) on a regular basis, for example by having a crontab entry for it, preferably with the -a option so there is no "jump" in time. Another good place to launch rdate(8) is in your /etc/ppp/ppp.linkup file if you are not permanently connected and are a PPP user.

See also: http://www.macbsd.com/macbsd/macbsd-docs/faq/faq-3.html#ss3.17

8.12 - Podporuje OpenBSD SMP? (Symmetric Multi-Processor)

V tuto chvíli ne. Práce pokračuje, existuje OpenBSD SMP projekt, i když zde ještě není nic použitelného ani není časový plán pro podporu SMP v OpenBSD.

Na většině platforem OpenBSD poběží na SMP systému, ale bude používat jenom jeden procesor. Vyjímka je SPARC platforma -- OpenBSD/sparc vůbec nepoběží na některých multiprocesorových SPARC systémech (Obecné pravidlo: jeden MBus modul funguje vždy. Více MBus modulů bude fungovat pokud jsou jednoprocesorové moduly a samozřejmě podporované). Multiprocesorové SPARC64 systémy poběží, pokud je základní mašina podporovaná.

Jak mohu přispět?

8.13 - Občas dostávám vstupně/výstupní chyby když se snažím použít zařízení tty

Pro spojení vyvolané OpenBSD systémem musíte používat /dev/cuaXX, /dev/ttyXX se již používají jen jako terminály, nebo při dial-in. Přestože v minulosti bylo možné používat zařízení tty, OpenBSD kernel tyto možnosti již nepodporuje.

Výňatek z cua(4):

For hardware terminal ports, dial-out is supported through matching device nodes called calling units. For instance, the terminal called /dev/tty03 would have a matching calling unit called /dev/cua03. These two devices are normally differentiated by creating the calling unit device node with a minor number 128 greater than the dial-in device node. Whereas the dial-in device (the tty) normally requires a hardware signal to indicate to the system that it is active, the dial-out device (the cua) does not, and hence can communicate unimpeded with a device such as a modem. This means that a process like getty(8) will wait on a dial-in device until a connection is established. Meanwhile, a dial-out connection can be established on the dial-out device (for the very same hardware terminal port) without disturbing anything else on the system. The getty(8) process does not even notice that anything is happening on the terminal port. If a connecting call comes in after the dial-out connection has finished, the getty(8) process will deal with it properly, without having noticed the intervening dial-out action.

8.14 - Jaké webové browsery existují pro OpenBSD?

Lynx, textový prohlížeč, je v základním systému a podporuje SSL. Další browsery v ports tree zahrnují (v žádném konkrétním pořadí):

Grafické (X) prohlížeče

Konzolové (Textový režim) prohlížeče Mozilla na OpenBSD v současnosti nefunguje, nativně ani v emulaci.

Všechny tyto prohlížeče najde v kolekci portů. Všechny výše uvedené browsery se po instalaci ports tree naházejí v /usr/ports/www. Většina z nich je také dostupná jako předkompilované balíčky dostupné na FTP serverech a na CDROM. Vzhledem k tomu, že většina grafických prohlížečů je hodně velkých a vyžadují nějaký čas ke stažení a kompilaci, je rozhodně vhodné zvážit využítí balíčků.

8.15 - Jak mám používat mg editor, který je nyní součástí OpenBSD?

Mg je micro Emacs-style text editor. Micro znamená, že je malý (Emacs je strááášně velký). Pro základní info si přečtěte man page mg(1) a tutorial, který přichází spolu se zdrojovým kódem. Pro další zajímavé otázky typu Nemám svůj Meta key! se podívejte do Emacs FAQ.

Poznamenejme, že mg je malá implementace Emacsu, která je svými vlastnostmi nejodobnější verzi Emacs 17, neimplementuje řadu vlastností Emacsu. (Včetně mail a news funkcí, stejně tak modů Lisp, C++, Lex, Awk, Java, atd...)

8.16 - Ksh zřejmě nečte můj .profile!

Jsou zde dva možné důvody.

8.17 - Proč se přepsal /etc/motd když jsem ho změnil?

/etc/motd se edituje při startu systému, nahrazuje se v něm všechno až do, ale ne včetně, první prázdné řádky informací o verzi jádra. Editujete-li tento soubor, začněte za touto prázdnou řádkou, aby jste uchránili tyto řádky před editací, kterou provádí /etc/rc při startu.

8.18 - Proč www.openbsd.org běží na Solarisu?

Přestože žádný z vývojářů tuto otázku nepokládá za podstatnou, objevuje se stále v konferenci, a proto na ni odpovídáme zde. www.openbsd.org a hlavní ftp OpenBSD je hostováno u SunSITE na University of Alberta, Canada. Hosting se provádí na velkém systému Sun, který má přístup k velkému úložnému prostoru a rychlým Internetovým linkám. Přítomnost SunSITE dává skupině OpenBSD přístup k těmto linkám. Proto zde běží hlavní sajty. Mnoho OpenBSD mirorů běží na OpenBSD, ale protože tyto nemají přístup k výkonným linkám, skupina se rozhodla nechat hostovat hlavní sajty na SunSITE, University of Alberta.

8.19 - Mám problémy s detekováním PCI zařízení

Existuje jistá možnost, že na některých strojích nebude správně detekován PCI hardware, nebo může dojít k zamrznutí při detekování více NIC (network interface card). Je to chyba PCIBIOSu a je nutná jednoduchá náprava, aby vše fungovalo tak jak má. Jednodušše vstupte do konfigurace při startu a vypněte PCIBIOS. Příklad:

Po nabootování následujte FAQ 5, Tvorba vlastního jádra a vytvořte vlastní nový kernel, ve kterém PCIBIOS pochopitelně vypnete.

8.20 - Antialiasované a TrueType fonty v XFree86

Podívejte se sem.

8.21 - Podporuje OpenBSD jakýkoliv žurnálovací filesystém?

Ne nepodporuje. Pro dosažení podobných výsledků používáme odlišný mechanismus, který se nazývá Soft Updates. Přečtěte si prosím FAQ 14 pro více detailů.

8.22 - Rerzní DNS
     - aneb -
Proč zalogování trvá tak dlouho?

Mnoho nových uživatelů OpenBSD se setká s dvouminutovou prodlevou přihlášení při používání služeb jako ssh, ftp nebo telnet. Také to lze pozorovat při používání proxy, jako ftp-proxy, nebo při odesílání mailu z pracovní stanice pomocí sendmail.

To je skoro vždy způsobeno problémem s reverzním DNS. DNS je Domain Name Services, systém, který Internet používá k převodu jmena, jako třeba "www.openbsd.org" na číselné IP adresy. Dalším úkolem DNS je schopnost vzít číselnou adresu a převést ji zpátky na "jméno", což je "Reverzní DNS".

Ve snaze poskytnout lepší logování OpenBSD provádí reverzní DNS dotazy na jakýkoliv počítač, který se k němu připojuje některým z mnoha způsobů včetně ssh, ftp, telnet, sendmail, nebo ftp-proxy. Bohužel, v některých případech počítač, který se připojuje, nemá správný záznam v reverzním DNS.

Příklad této situace

Uživatel nastaví OpenBSD jako firewall a gateway pro domácí vnitřní síť a mapuje všechny vnitřní počítače na externí IP pomocí NAT. Postupuje podle návodu a je velmi spokojený s výsledkem, až na jednu věc -- pokaždé, když se jakkoliv k firewallu připojuje, musí čekat dvě minuty, než se něco začne dít.

Co se děje?

Ze stanice s neregistrovaným IP za NAT gateway používá ssh pro připojení ke gateway. ssh klient se zeptá na jméno a heslo a pošle je gateway. Gateway se pak snaží zjistit, kdo se pokuší přihlásit, reverzním DNS dotazem na 192.168.1.35. Problém je, že adresy 192.168.0.0 slouží k privátnímu použití, takže správně nakonfigurovaný DNS mimo vaši síť ví, že nemá žádné informace o této adrese. Některé rychle vrátí chybovou zprávu a v těchto případech OpenBSD předpokládá, že více informací nelze zjisit, rychle to vzdá a prostě uživatele přijme. Jiné DNS servery nevrátí ŽÁDNOU odpověď. V tomto případě budete čekat než OpenBSD resolveru vyprší timeout, který trvá dvě minuty, než bude přihlašování pokračovat. V případě ftp-proxy, některým klientům vyprší timeout dříve než vyprší DNS dotaz, takže to vypadá, jako by ftp-proxy nefungovala

To může být celkem otravné. Naštěstí to lze snadno spravit.

Oprava pomocí /etc/hosts:

Nejjednodušší řešení je zanést všechny stanice do /etc/hosts a ujistit se, že váš soubor /etc/resolv.conf obsahuje řádek lookup file bind, který zajistí, že resolver ví, že má začít se souborem /etc/hosts a pokud ten selže, použije DNS server určený řádky "nameserver" v souboru /etc/resolv.conf

Váš soubor /etc/hosts bude vypadat nějak takhle:

Váš soubor resolv.conf bude vypadat nějak takhle: search in.example.org nameserver 24.2.68.33 nameserver 24.2.68.34 lookup file bind Běžná námitka proti tomu je "Ale já používám DHCP pro svoji vnitřní síť! Jak mám nastavit /etc/hosts?" Celkem jednoduše. Pouze přidejte řádky pro všechny adresy, které váš DHCP server bude přidělovat, plus další statická zařízení: V tomto případě předpokládám, že máte rozsah DHCP od 192.168.1.100 do 192.168.1.199, plus tři statické definice na začátku souboru.

Pokud vaše gateway musí pro konfiguraci používat DHCP, máte problém -- dhclient přepíše váš /etc/resolv.conf po každé, když se obnovuje lease, čímž vymaže řádek "lookup file bind". To může být vyřešeno přidáním řádku "lookup file bind" do souboru /etc/resolv.conf.tail.

Oprava pomocí lokálního DNS serveru

Podrobnosti jsou mimo rozsah tohoto dokumentu, ale základní trik spočívá v nastavení vašeho oblíbeného DNS serveru, ujistění se, že ví, že je autoritativní jak pro dopředné, tak pro zpětné DNS převody pro všechny prvky vaší sítě a ujistění se, že všechny vaše počítače (včetně gateway) vědí, že ho mají používat jako DNS server. Některé podrobnosti o name serveru BIND v4.9.8 zahrnutého do OpenBSD můžete zde.

8.23 - Proč webové stránky OpenBSD nesplňují HTML4/XHTML?

Současné webové stránky byly pečlivě vyladěny, aby fungovaly v široké škále současných browserů a zpátky až k browserům ve verzi 4.0 a starších. Nechceme měnit tyto staré stránky podle HTML4 nebo XHTML, dokud si nebudeme jisti, že budou fungovat ve starších prohlížečích; prostě to není priorita. Vítáme nové přispěvovatele, ale doporučujeme vám pracovat na psaní kódu nebo dokumentování nových aspektů systému, ne na upravování existujícíh stránek tak, aby splňovali novější standardy.

[Back to main index] [Do sekce 7.0 - Práce s klávesnicí] [Do sekce 9.0 - Přechod od Linuxu]


[zpět] www@openbsd.org
Originally [OpenBSD: faq8.html,v 1.107 ]
$Translation: faq8.html,v 1.20 2003/11/02 21:49:28 certik Exp $
$OpenBSD: faq8.html,v 1.18 2003/11/03 14:19:31 horacio Exp $