Налагодження мережі

Введення: netconfig

Коли ви вперше встановлювлюєте Slackware, setup програма викликає netconfig. netconfig намагається виконати наступні функції:

  • Питає вас назви вашого комп'ютера і доменного імені.
  • Надає короткий опис різноманітних схем адресації із поясненням коли саме вони повинні використовуватись. Після цього вам надається можливість вибрати IP схему адресації яка буде використана для конфігурації вашого мережевого інтерфейсу:
    • Статичний IP
    • DHCP, динамічний IP
    • Адресація на себе, loopback
  • Пропонує тестувати мережеві картки які можна буде налагодити.

netconfig, загалом, виконає близько 90% роботи по конфігурації вашого з'єднання з локальною мережею, якщо ви надасте правильну інформацію. Незважаючи на те, наскільки зручним є netconfig, вам варто пізніше переглянути ваші конфігураційні файли, rc.d/rc.inet1, hosts, resolv.conf, у /etc каталозі.

  1. Це є типово Slackware підходом - ніколи не довіряти автоматичним знаряддям по конфігурації вашої системи, завжди перевіряти конфігураційні файли власноруч.
  2. Якщо ви все ще вивчаєте Лінукс і управління системою, ознайомлення з конфігураційними файлами і скриптами поглибить розуміння власної системи. І зростанням досвіду, ви зможете безпосередньо керувати вашою системою, при необхідності власноруч редагуючи налаштування різноманітних складових системи.

Налагодження мережевих пристроїв

Якщо ви плануєте включити свою машину у будь-яке мережеве оточення, вам необхідна сумісна з Лінукс мережева картка. На сьогоднішній день більшість карток що існують користуються підтримкою Лінукса. У випадку необхідності перевірити якусь картку на сумісність, відвідайте http://www.eskimo.com/~lo/linux/hardwarelinks.html, де ви знайдете багато посилань на різні ресурси що вказують стан підтримки Лінуксом різноманітних приладів, також існує ЯКЦЕ саме по вибору апаратури за адресою http://www.linux.org/docs/ldp/howto/Hardware-HOWTO. Загалом, це хороша практика перед тим як купувати якийсь прилад перевірити його на сумісність.

Перевіряючи прилад на сумісність, не забудьте занотувати який саме модуль відповідає за його роботу. Також ви знайдете багато технічної інформації у каталозі документації що включений у вихідні тексти ядра.

Дуже швидким способом (для ледачих) є пошук у http://www.google.com/linux назви пристрою який вас цікавить.

Модулі мережевих пристроїв

Модулі ядра завантажуються під час старту системи завдяки rc.modules або rc.hotplug із /etc/rc.d каталогу. За замовчуванням rc.modules включає секцію із мережевими пристроями. Якщо ви відкриєте rc.modules і передивитесь цю секцію, ви помітите що в ній спочатку перевіряється на наявність виконуваного rc.netdevice у тому самому каталозі. Останній буде створено якщо setup успішно тестує мережеві прилади під час інсталяції.

Нижче "if" блоку коду що перевіряє присутність rc.nettdevice, перечислені сітьові прилади із командами для завантаження відповідних модулів. Знайдіть свій мережевий пристрій у цьому списку, розкоментуйте відповідний рядок modprobe команди (видаліть # на початку стрічки) і збережіть свої зміни. Перезапустивши rc.modules як root користувач завантажить драйвер який ви вибрали.

Зауважте що деякі модулі, такі як ne2000 вимагають додаткових параметрів, впевніться що ви вибрали правильну команду.

LAN (10/100/1000Base-T та Base-2) картки

Цей заголовок відноситься до всіх внутрішніх PCI та ICA сітьових карток. Драйвери для цих карток надаються у вигляді завантажувальних модулів ядра як було описано у попередньому підрозділі. /sbin/netconfig повинен був тестувати ваші картки і заповнити rc.netdevice файл. Якщо цього не сталося, найімовірнішим буде те що модуль, який ви намагаєтесь завантажити для даної картки, не є вірним, або навіть відсутній. Якщо ви впевнені що саме цей модуль відповідає вашому пристрою, вашим наступним кроком буде перевірити докумeнтацію у /usr/src/linux/Documentation/networking на предмет специфічних параметрів для вашої картки.

Модеми

Подібно до сітьових карток, модеми можуть також використовувати різноманітні шини для своєї роботи. До недавнього часу більшість модемів були 8 або 16-бітними ISA картками. Завдяки зусиллям Intell та інших виробників материнських плат, поступово ISA шина практично витіснена з використання іншими типами сполучення допоміжних приладів. Сучасні модеми під'єднуються або ззовні через серійний або USB порт, або це внутрішні PCI пристрої. Якщо ви плануєте використовувати модеми із Лінуксом, вам крайнє необхідно перевірити ваш майбутній модем на сумісність, особливо це стосується PCI модемів. Переважна більшість PCI модемів на сьогодення, це WinModem. Остання означає що в них відсутні деякі базові компоненти, тому функції, які за нормальних обставин є виконуваними апаратною частиною пристрою, повинна взяти на себе операційна система. Це вимагає окремого драйвера, які в багатьох випадках відсутні, дякуючи виробникам цих модемів.

Якщо ви хочете бути абсолютно впевненими що модем буде діючим, радимо користуватися зовнішніми модемами що під'єднуються до серійного потру ПК. Їх доволі легко налагодити, вони, як правило, кращої якості, але, як результат, також коштують трохи більше.

Існує також декілька сайтів що надають драйвери і допомогу у налагодженні WinModem приладів, якщо ви вже володієте таким. Багато користувачів повідомляло про успішну інсталяцію драйверів для модемів із Lucent, Conexant та Rockwell чипами.

Декілька посилань для власників PCI модемів:

PCMCIA

Під час інсталяції Slackware у вас є можливість встановити pcmcia пакет як частину A набору. Цей пакет вміщує набір аплікацій і файлів необхідних для налагодження PCMCIA пристроїв у Slackware. Важливо вказати, що pcmcia пакет інсталює лише загальні програми, необхідні для роботи PCMCIA карток. У ньому відсутні будь-які драйвери або модулі. Необхідні модулі і драйвери знаходитимуться у /lib/modules/<версія ядра>/pcmcia каталозі.

Вам необхідно буде відредагувати /etc/pcmcia/network.opts (для Ethernet картки) або /etc/pcmcia/wireless.opts (якщо ви володієте безпроводовою PCMCIA карткою). Як і більшість Slackware конфігураційних файлів, ці два дуже добре коментовано, тож вам не буде складно вирішити які саме зміни необхідно там зробити.

TCP/IP конфігурація

Отож, на цьому етапі ви повинні мати вашу сітьову картку фізично інстальованою на комп'ютері, із завантаженими модулями, що відповідають за її роботу. Ви ще не можете спілкуватися через мережеву картку, але інформація про ваш сітьовий пристрій вже доступна завдяки ifconfig -a.

# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:A0:CC:3C:60:A4
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:110081 errors:1 dropped:0 overruns:0 frame:0
TX packets:84931 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:114824506 (109.5 Mb) TX bytes:9337924 (8.9 Mb)
Interrupt:5 Base address:0x8400

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2234 errors:0 dropped:0 overruns:0 frame:0
TX packets:2234 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:168758 (164.8 Kb) TX bytes:168758 (164.8 Kb)

Якщо ви введете лише ifconfig, без -a суфіксу, ви не побачите eth0 інтерфейсу, оскільки ваша мережева картка ще не має дійсної IP адреси і марштруту.

Існує багато способів налаштування мережі i сегментів, але всі вони можуть бути поділені на два види: із статичними адресами і з динамічними. Статичні налаштовуються таким чином, що кожний вузол (професійний сленг для всього що може мати IP адресу), завжди зберігає ту саму IP адресу. Динамічне розподілення адрес, в свою чергу, вимагає щоб кожний вузол отримував власну IP адресу від DHCP контролюючого сервера.

DHCP

DHCP (Dynamic Host Configuration Protocol) дозволяє комп'ютеру отримати власну IP адресу під час завантаження системи. Останній буде названо DHCP клієнтом. Тож коли DHCP клієнт завантажуватиметься, він посилатиме запит у локальну мережу щоб DHCP сервер призначив йому IP адресу. На іншому кінці, DHCP сервер має пул (набір) незайнятих IP адрес. Сервер відповіси запиту, надавши IP адресу із пулу разом із часом поновлення (lease time).

Як тільки час поновлення закінчився, клієнт повинен контактувати сервер знову для узгодження адреси.

Тож клієнт прийме надану сервером IP адресу і конфігурує даний інтерфейс, присвоївши йому адресу. Існує невелика хитрість у цьому процесі. Клієнт запам'ятає останню присвоєну йому адресу і запитає сервер надати ту саму адресу під час наступного узгодження. Якщо це можливо, сервер так і зробить, якщо ні - клієнт отримає нову адресу і повинен буде переконфігурувати свій сітьовий інтерфейс. Узгодження відбувається приблизно за наступним сценарієм:

Клієнт: "Чи є DHCP сервер у мережі?"
Сервер: "Так. Я тут."
Клієнт: "Мені необхідна IP адреса."
Сервер: "Візьміть 192.168.0.5 на 19200 секунди.
Клієнт: "Дякую."

Клієнт: "Чи є DHCP сервер у мережі?"
Сервер: "Так. Я тут."
Клієнт: "Мені потрібна та сама адреса що й останнього разу."
Сервер: "Ваша остання адреса, наскільки я пам'ятаю, 192.168.0.5"
Клієнт: "Можна отримати її знову?"
Сервер: "Так." (або "Ні. Але ви можете отримати 192.168.0.12 натомість."
Клієнт: "Дякую."

Програма що дозволяє Лінукс машині виконувати роль DHCP клієнта, це /sbin/dhcpcd (DHCP client deamon). Якщо відкриєте /etc/rc.d/rc.inet1, то побачите що /sbin/dhcpcd буде викликано десь посередині скрипта. Саме dhcpcd(8) виконує всю клієнтську частину описану зверху, крім того може додатково керувати тим який NTP сервер і який маршрут використовувати і.т.п.

Налагодити DHCP клієнта у Slackware дуже просто. Запустіть netconfig і виберіть DHCP коли вам запропонують. Якщо у вас більше ніж одна картка, і ви не хочете щоб, один з інтерфейсів налагоджувався за допомогою DHCP, відредагуйте /etc/rc.d/rc.inet1.conf файл і вкажіть навпроти USE_DHCP змінної що відповідає необхідному мережевому інтерфейсу "YES".

Статичний IP

Статичні адреси, це сталі адреси, які змінюються лише якщо вручну вказати. Вони використовуються у випадку коли адміністратор не хоче щоб IP інформація змінювалась, як, наприклад, у випадку внутрішніх серверів у локальній мережі, будь-яких серверів під'єднаних до Інтернету, сітьових маршрутизаторів. В таких випадках інші машини знатимуть що вас завжди можна знайти за певною IP адресою.

/etc/rc.d/rc.inet1.conf файл

Присвоєння IP адреси можна налаштувати як за допомогою netconfig, так і відредагувавши /etc/rc.d/rc.inet1.conf. У цьому файлі ви знайдете:

# Primary network interface card (eth0)
IPADDR[0]=""
NETMASK[0]=""
USE_DHCP[0]=""
DHCP_HOSTNAME[0]=""

і трохи нижче:

GATEWAY=""

Від нас вимагається лише заповнити правильною інформацією місце між лапками. Ці змінні використовуються /etc/rc.d/rc.inet1 (не плутайте з rc.inet1.conf) стартовим скриптом для налагодження інтерфейсів. Для кожної картки введіть вірну IP інформацію, або "YES" навпроти USE_DHCP. Slackware налагодить інтерфейси у тій послідовності у якій вони вказані тут під час запуску системи.

Змінна DEFAULT_GW вкаже маршрут за замовчуванням. Будь-які сполучення між вашим комп'ютером і іншими машинами у Інтернеті повинні проходити через вказану тут машину-шлюз, ящо іншого маршруту не надано. Якщо ви використовуєте DHCP, вам, як правило не потрібно нічого тут вводити, оскільки DHCP сервер автоматично вкаже який шлюзовий сервер використовувати.

/etc/resolv.conf файл

Тож, ви отримали власний IP і шлюз, але цього не досить якщо ви не можете розв'язувати доменні імена, такі як www.slackware.com у IP адреси. Ніхто не вводитиме 64.57.102.34 у переглядач кожний раз як намагатиметься дістатися до Slackware сайту. Неможливо просто запам'ятати всі IP адреси. Нам необхідно налагодити DNS розв'язування доменних імен. Тут нам в пригоді стане /etc/resolv.conf.

Дуже можливе що у вас уже resolv.conf(5) налагоджено. Якщо ви використовуєте DHCP, у цьому випадку DHCP сервер візьме на себе відповідальність за оновлення інформації у /etc/resolv.conf. (З технічного боку, DHCP сервер вказує dhcpcd що саме вписати у resolv.conf). У протилежному випадку вам доведеться власноруч відредагувати цей файл. Нижче приведений лише приклад, ваші власні дані будуть відрізнятися:

# cat /etc/resolv.conf
nameserver 192.168.1.254
search slackware.com

Перша лінія, як ми бачимо, це вказівка DNS іменного серверу (nameserver) який буде використовуватись для запитів. Це обов'язково повинен бути IP номер, ні в якому разі не доменне ім'я. Ви можете мати стільки іменних серверів, скільки захочете.

Друга лінія дещо цікавіша. search директива надає нам список можливих доменних імен для вгадування під час DNS запиту. Це дозволяє зв'язатись з машиною, вказавши лише першу частину повного доменного імені (FQDN, Fully Qualified Domane Name). У цьому конкретному прикладі, якщо slackware.com, буде вашим пошуковим шляхом (search), то, наприклад, щоб дістатися до http://store.slackware.com, вам вистачить направити навігатор на http://store.

# ping -c 1 store
PING store.slackware.com (69.50.233.153): 56 data bytes
64 bytes from 69.50.233.153 : icmp_seq=0 ttl=64 time=0.251 ms
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.251/0.251/0.251 ms

search директива не є обов'язковою, звичайно.

/etc/hosts файл

Тепер, як ми налагодили наші DNS запити, що станеться, якщо ми хочемо, скажімо, обминути DNS сервер, з'єднатися з машиною яка не числиться у DNS? Так, звичайно, у цьому випадку варто звернутися до /etc/hosts, який буде утримувати локальний список DNS імен і відповідних IP адрес.

# cat /etc/hosts
127.0.0.1           localhost  locahost.localdomain
192.168.1.101       redtail
172.14.66.32        foobar.slackware.com

Тут ви можете побачити що localhost, обернений на себе інтерфейс, той що використовується для звертання до власної машини, має адресу 127.0.0.1 (IP завжди зарезервований для localhost). Машина redtail з нашої локальної мережі буде знайдена за 192.168.1.101 адресою, тоді як foobar.slackware.com - за 172.14.66.32.

Налагодження PPP з'єднання

Багато людей все ще долучаються до Інтернету через один із різновидів даялап з'єднання. Найпоширенішим методом є PPP, також часом використовується SLIP. Налагодження вашої системи для PPP комунікації із віддаленим сервером є досить легким завданням. Slackware включає декілька знарядь саме для цього.

pppsetup

Досить зручною програмою для налагодження вашого даялап з'єднання є pppsetup. Вона поводиться дуже схоже на netconfig, який ми розглянули раніше. Впевніться що ви є root користувачем, просто введіть pppsetup на командній лінії. Після ознайомлення із версією програми і тим хто є її автором, ви побачите приблизно наступне:

  +-------------------------------------------------------------------------+
  |                             PHONE NUMBER ...                            |          
  |  To begin setting up your PPP connection, I need to know a few things.  |
  |  For starters, what is the phone number of your (I)nternet (S)ervice    |
  |  (P)rovider?                                                            |
  |                                                                         |
  |  Example: atdt6661776  <- For tone dialing.                             |
  |  Example: atdp6661776  <- For pulse dialing.                            |
  |                                                                         |
  |  Include the atdp or atdp in front of your phone number.                |
  |                                                                         |
  |  Note: in the USA, use atdt*70,66617776  (comma required to turn off    |
  |  call waiting.)                                                         |
  |  +-------------------------------------------------------------------+  |
  |  | atdt123123                                                        |  |
  |  +-------------------------------------------------------------------+  |
  |                    <  OK  >                <Cancel>                     |
  |                                                                         |
  +-------------------------------------------------------------------------+

Внесіть номер телефону вашого провайдера із передуючим (як правило) atdt для тонового набору. Наступним, виберіть пристрій що відповідає вашому модему. Нагадуємо, зовнішні модеми на серійному порту, це, як правило, /dev/ttyS0, тоді як внутрішні, PCI модеми - /dev/ttyS4 і вище:

  +------------------------------------------------------------+
  |  Where is your modem, /dev/ttyS?                           |
  |  +------------------------------------------------------+  |
  |  |    modem   = use whatever /dev/modem is linked to    |  |
  |  |    ttyS0   = (COM1: under DOS)                       |  |
  |  |    ttyS1   = (COM2: under DOS)                       |  |
  |  |    ttyS2   = (COM3: under DOS)                       |  |
  |  |    ttyS3   = (COM4: under DOS)                       |  |
  |  |    ttyS4   = PCI modem                               |  |
  |  |    ttyS5   = PCI modem                               |  |
  |  |    ttyS6   = PCI modem                               |  |
  |  +-----(+)----------------------------------------------+  |
  |               <  OK  >              <Cancel>               |
  |                                                            |
  +------------------------------------------------------------+

У наступному меню потрібно вказати швидкість вашого модему. Це варто взнати у провайдера, більшість використовує 115200 біт на секунду, що переводиться як 56Kbps (кілобайт на секунду).

  +----------------------------------------------------------------------+
  |  What baud rate is your modem?                                       |
  |  +----------------------------------------------------------------+  |
  |  |   460800   469KBps   - ISDN modem                              |  |
  |  |   230400   230KBps   - 56Kbps modem... or ISDN modem...        |  |
  |  |   115200   115KBps   - 28.8, 33.6, or 56Kbps modem...          |  |
  |  |   57600    57.6KBps  - 28.8, 33.6, or 56Kbps modem...          |  |
  |  |   38400    38.4KBps  - Hanging ten on the net! 28.8 or 33.6... |  |
  |  |   19200    19.2KBps  - Better known as 14.4...                 |  |
  |  |   9600     9600bps   - No comment...                           |  |
  |  +----------------------------------------------------------------+  |
  |                  <  OK  >                 <Cancel>                   |
  |                                                                      |
  +----------------------------------------------------------------------+

У наступному діалозі потрібно вказати чи ваш провайдер використовує обернений дозвін.

  +---------------------------------------------------------------------+
  |  Does your service provider use CALLBACK?                           |
  |                                                                     |
  |  CALLBACK is when you call your service provider and give them      |
  |  your phone number so they call you back, the when they             |
  |  call you back you give them your login name and password.          |
  |                                                                     |
  |  Most service providers don't use CALLBACK, so the answer is        |
  |  probably No, unless you know otherwise.                            |
  |  +---------------------------------------------------------------+  |
  |  |     NO   Most Internet providers do not usr callback          |  |
  |  |     YES  Use callback support (I know what I'm doing)         |  |
  |  +---------------------------------------------------------------+  |
  |                <  OK  >                 <Cancel>                    |
  |                                                                     |
  +---------------------------------------------------------------------+

Як правило, більшість провайдерів не використовує оберненого дозвону, якщо ваш так, вам потрібно буде додатково внести власний номер телефону у діалог що з'явиться. Наступний діалог спитає вас рядок ініціалізації вашого модему. Більшість модемів використовує стандартний рядок що встановлено за замовчуванням у pppsetup, тож ви можете просто притиснути Enter клавішу. Якщо ви знаєте рядок ініціалізації модему, відмінний від вказаного за замовчуванням, можете спробувати його.

  +------------------------------------------------------------------------
  |  The default modem init string will be: "AT&FH0" OK                   |
  |                                                                       |
  |  If you want to change it, put your init string in the box below.     |
  |                                                                       |
  |  If you use \ in the init string, put it twice.                       |
  |  Example: "AT\&F\\K3\\N3H0" OK                                        |
  |  M = No sound. S95=46 = Show CARRIER speed: 28800 etc.                |
  |  Put "" around each init string with "&" in it.                       |
  |  Put OK after each init string. Example: ATZ OK "AT\&F1MH0" OK        |
  |                                                                       |
  |  Just press [Enter] on empty box to accept the default above.         |
  |  +-----------------------------------------------------------------+  |
  |  |                                                                 |  |
  |  +-----------------------------------------------------------------+  |
  |                    <  OK  >               <Cancel>                    |
  |                                                                       |
  +-----------------------------------------------------------------------+

У наступному діалозі у вас спитають доменне ім'я вашого провайдера, це саме тe що стоятиме у вас у /etc/resolv.conf за словом search. Можете вписати його, хоча це, насправді необов'язково. Що обов'язково, так це внести IP адресу DNS (іменного) сервера вашого провайдера, або хоч якогось іменного сервера в Інтернеті. Ви повинні взнати IP адресу DNS сервера у провайдера, це його обов'язок - надати вам цю інформацію. Як ви здогадуєтесь, ця адреса з'явиться у вашому resolv.conf за nameserver рядком.

   DNS IP ADDRESS...
  +---------------------------------------------------------------------+
  |  What is the IP address of your Internet providers nameserver?      |
  |                                                                     |
  |  It's important that IP number is correct.                          |
  |  The IP number should not be: 0.0.0.0                               |
  |                                                                     |
  |  Note: Your service provider's technical support can provide you    |
  |  with this information.  Example: 207.132.116.5                     |
  |  +---------------------------------------------------------------+  |
  |  |                                                               |  |
  |  +---------------------------------------------------------------+  |
  |                  <  OK  >               <Cancel>                    |
  |                                                                     |
  +---------------------------------------------------------------------+

У наступному діалозі вкажіть який саме тип аутентифікації буде використовуватись, PAP або CHAP. Це також варто взнати у вашого провайдера. Більшість використовує PAP або CHAP, або обидва. Зрідка використовується SCRIPT. Спробуйте PAP, оскільки це найбільш поширений спосіб (але також не захищений).

  +---------------------------------------------------------------------+
  |  Does your service provider use PAP or CHAP?                        |
  |  If you are presented with a Username: or Login: and Password:      |
  |  prompt when you connect to your service provider, they're          |
  |  'probably' not using PAP or CHAP, so you can answer SCRIPT.        |
  |  I said 'probably', the only way to know for sure is to ask your    | 
  |  service provider, this could save you a lot of wasted time.        |
  |  +---------------------------------------------------------------+  |
  |  |          PAP          AUTENTIFICATION                         |  |
  |  |          CHAP         AUTENTIFICATION                         |  |
  |  |          MS-CHAP-80   is Microsoft's version of CHAP.         |  |
  |  |          SCRIPT       Create Chat Script For Login.           |  |
  |  +---------------------------------------------------------------+  |
  |                  <  OK  >              <Cancel>                     |
  |                                                                     |
  +---------------------------------------------------------------------+

Останні двоє вікон діалогу спитають вас реєстраційне ім'я та гасло яке ви використовуєте для під'єднання до провайдера.

Як ви можливо здогадались, більшість власних утиліт Slackware, це прості скрипти із використанням

dialog програми, так pppsetup ви знайдете у /usr/sbin каталозі.

Конфігураційні файли що їх pppsetup створить будуть знаходитись у /etc/ppp каталозі (otions, pap-secrets, pppscript і.т.д), resolv.conf - у /etc. Передивіться їх. Якщо вам необхідно поправити якусь опцію, вам не обов'язково перезапускати pppsetup, ви можете просто редагувати відповідний файл із /etc/ppp.

Тека /etc/ppp

Якщо ви захочете власноруч налаштувати деякі параметри PPP, ось список основних файлів із /etc/ppp і їхня функція:

callback : У випадку оберненого дозвону, скрипт ініціалізації вашого модема.

ip-down : Цей скрипт виконується pppd після закінчення PPP з'єднання.

ip-up : Виконується pppd при успішному PPP з'єднанні. Ви можете добавляти сюди власні команди.

options : Загальні конфігураційні опції для pppd(8).

options.demand : Загальні конфігураційні опції для pppd(8) у випадку запуску його у стані "на замовлення" (in demand dialing mode).

pppscript : Команди ініціалізації і набору номера які отримає ваш модем.

pppsetup.txt : Журнал залишений pppsetup із даними які ви внесли.

Зауважте, що більшість цих файлів буде відсутньою до тих пір, доки ви не запустите pppsetup.

PPP під'єднання: ppp-go

Щоб, власне, під'єднатись до Інтернету через PPP, використайте як root користувач ppp-go команду (або ppp-on, що всього лиш символічне посилання на ppp-go). ppp-go це теж всього-навсього скрип що знаходиться у /usr/sbin каталозі. Можете ознайомитись з ним. Що він насправді робить, так це запускає pppd із конфігураційними опціями внесеними у /etc/ppp файлах. Щось на зразок:

/usr/sbin/pppd -detach connect "/usr/sbin/chat -v -f /etc/ppp/pppscript" & 

Якщо інформація внесена вами під час pppsetup була вірною, ви успішно долучитесь до Інтернету. Якщо ні, зверніть увагу на помилки, якщо такі з'являться під час з'єднання, також можете попередньо виконати у іншому вікні tail -f /var/log/messages (передивіться сторінку посібника tail(1)). Це надасть вам необхідну інформацію для самостійного розв'язання проблеми, або для отримання помочі від інших користувачів, або провайдера.

Щоб завершити PPP сеанс, введіть як root користувач ppp-off або ppp-stop.

Мережеві файлові системи

У випадку локальної мережі, ви можете бути зацікавленими у обміну даними з іншими комп'ютерами. TCP/IP сам по собі дозволяє користуватись авичайними FTP або SSH копіюванням файлів, scp(1), але це не дозволить, скажімо, переглядати файли що знаходяться на Slackware з допомогою Network Neighborhood або My Network Places на Віндовс машині. Також, інснують зручніші способи копіювати файли між Юнікс машинами.

Саме так, ми маємо на увазі мережеву файлову систему, яка дозволяє прозорий доступ до файлів на інших комп'ютерах. Прозорий, означає що відпадає необхідність якихось додаткових дій для того щоб звернутися до файлів на іншій машині, з користувацького боку це виглядає так, ніби ці файли знаходяться на його власному комп'ютері.

Найвживанішими мережевими файловими системами у Лінуксі є SMB (впроваджена Samba сервером) та NFS.

SMB/Samba/CIFS

SMB (скорочення від Server Message Block) походить від старшого NetBIOS протоколу, що використовувався раніше IBM для власної LAN Manager програми. Майкрософт завжди був досить зацікавленим у NetBIOS і його спадкоємцях, NetBEUI, SMB та CIFS. Samba проект бере початок у 1991 році, коли вперше втілено зв'язок між IBM ПК i Юнікс сервером завдяки NetBIOS протоколу. На сьогоднішній день SMB протокол використовується, в більшості випадків, для розподілу файлів і друкування через мережу між Юнікс і Віндовс комп'ютерами.

Основним файлом конфігурації Samba є /etc/samba/smb.conf. Це, напевне, один з найбільш коментованих і документованих файлів який може існувати. Спільні каталоги заздалегідь приготовані для вас, вам лише залишилось переглянути файл і адаптувати його для власних потреб. Якщо вам потрібний додатковий контроль, обов'язково загляніть у сторінку посібника smb.conf. Оскільки Samba дуже добре документована, немає сенсу переповідати документацію тут, натомість ми зупинимось лише на початкових налаштуваннях.

smb.conf розбитий на окремі секції - одна секція на кожний спільний каталог і глобальна секція для опцій чинних для всіх каталогів. Деякі опіції конфігурації дійсні лише у глобальній секції, інші - лише по за нею. Пам'ятайте, що глобальна секція може бути пересиленою будь-якою іншою секцією.

Вам необхідно буде редагувати smb.conf у відповідності із налаштуваннями вашої мережі. Почніть з наступного:

[global]
# workgroup = NT-Domain-Name or Workgroup-Name, eg: LINUX2
workgroup = MYGROUP 

поміняйте назву робочої групи щоб відповідала дійсній назві.

# server string is the equivalent of the NT Description field
server string = Samba Server

Це буде назвою вашої Slackware машини, що відображатиметься у Network Neighborhood (або My Network Places) теці у Віндовсі.

# Security mode. Most people will want user level security. See
# security_level.txt for details. NOTE: To get the behaviour of
# Samba-1.9.18, you'll need to use "security = share".
security = user  

Вам, звичайно, захочеться встановити захист на користувацькому рівні на Slackware системі.

# You may wish to use password encryption. Please read
# ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba
# documentation.
# Do not enable this option unless you have read those documents
encrypt passwords = yes

Якщо зашифроване гасло не використовуватиметься, ви не зможе користуватися Samba з NT4.0, Win2k, WinXP і Win2003. Раніше Віндовс операційні системи не вимагали шифрування для обміну файлами.

SMB використовує аутентифікацію, що означає що ви повинні надати вірне ім'я користувача і гасло для того щоб використовувати цей сервіс. Ми вкажемо Samba серверу які імена і гасла дійсні за допомогою smbpasswd команди. smbpasswd вживається із декількома прапорцями для уточнювання чи додати традиційних користувачів, чи користувачів певної машини (SMB вимагає щоб ви вживали NetBIOS імена машин, накладаючи обмеження звідки певний користувач може аутентифікуватися).

Додавання користувача до /etc/samba/private/smbpasswd файла:

# smbpasswd -a user

Додавання назви комп'ютера до /etc/samba/private/smbpasswd файла:

# smbpasswd -a -m machine

Варто мати на увазі, що вказані назви користувачів або назви машин вже повинні бути присутніми у /etc/passwd файлі, цього можна добитись завдяки звичайної adduser команди. Зауважте, що щоб додати ім'я машини за допомогою adduser, ви повинні добавити знак долару ($) до кінця імені. Вам не потрібно використовувати знак долару із smbpasswd, вона це зробить автоматично.

# adduser machine$

Мережна файлова система NFS

NFS (Network File System - Мережна Файлова система) була вперше розроблена Sun для власного втілення Unix - Solaris. Хоча її трохи легше налагодити ніж SMB, NFS однак значно менш безпечна. Найголовніша небезпека NFS полягає у тому, що вона дозволяє без особливих зусиль підробити ідентифікаційні номери (ID) користувачів та груп. NFS не є автентифікаційним протоколом. Очікується, що майбутні версії NFS принаймні посилять безпеку.

Конфігурація NFS відбувається у файлі /etc/exports. Якщо ви відкриєте файл exports, то побачите, що він містить лише два рядка з коментарем. Нам потрібно самим внести шляхи до каталогів, які ми збираємось експортувати через NFS, а також список клієнтських машин, яким дозволено буде користуватись NFS-ресурсами. Так наприклад, якщо в ми хочемо експортувати каталог /home/foo для машини bar, то маємо внести туди

/home/foo bar(rw)  

Приклад файла exports можна знайти на сторінці посібника exports(5):

# sample /etc/exports file
/               master(rw) trusty(rw,no_root_squash)
/projects       proj*.local.domain(rw)
/usr            *.local.domain(ro) @trusted(rw)
/home/joe       pc001(rw,all_squash,anonuid=150,anongid=100)
/pub            (ro,insecure,all_squash)

Як бачите, існують різні опції, але вони досить зрозумілі з цього прикладу.

NFS передбачає, що той самий користувач на різних машинах має скрізь однаковий ID. Під час читання або запису NFS-клієнтом на NFS-сервер, ідентифікаційний номер користувача (UID) передається як частина запиту на читання або запис. На боці сервера, цей UID розглядається так само - ніби запит на читання або запис надійшов з локальної машини. Як ви здогадуєтесь, якщо би хтось вказав довільний UID під час доступу до віддалених ресурсів, то це могло би призвести до небажаних наслідків. Як частковий захист проти цього, кожний каталог монтовано із параметром root_squash. Це міняє UID кожного користувача, який видає себе за root, на відмінний UID, запобігаючи таким чином root-доступу до файлів і тек в експортованому каталозі. Параметр root_squash зазвичай задано поза вибором у NFS, але розробники рекомендують всерівно його вказувати в /etc/exports.

Ви також можете експортувати каталог безпосередньо з командного рядка на сервері, як наприклад:

# exportfs -o rw,no_root_squash bar:/home/foo

цей рядок експортує каталог /home/foo для комп'ютера bar з правами на читання та запис. У цьому випадку сервер NFS сервер не викликає root_squash, що означає, що будь-який користувач на bar з UID рівним 0 (ідентифікаційний номер користувача root дорівнює нулю), буде мати ті самі привілеї що й root на сервері. Синтаксис, справді, виглядає дещо незвичайно. Як правило, коли якийсь каталог записано як комп'ютер:каталог, то ви тим самим вказуєте каталог на даному комп'ютері.

Прочитайте обов'язково сторінку посібника exports(5).

  • squash перекладається з англійської як розчавити.