Linux mini-HOWTO

         

Анализ уязвимости


Я попытаюсь описать незащищенные места этой настройки, и VPN вообще. Все комментарии горячо приветствуются.

sudo: Да, я использую sudo. Но я все же считаю, что это надежнее, чем устанавливать биты setuid. Эти биты до сих пор являются спорной вещью в Linux. Ждем совместимости с рекомендациями POSIX.6 . Что может быть хуже запуска скриптов при помощи sudo? Брррр. Есть какие-нибудь идеи?

pppd: У него тоже есть флаг suid root. Его можно настроить при помощи пользовательского файла .ppprc. Он может вызвать переполнения буферов. Результат: защитите псевдо-пользовательский вход на отвечающей машине настолько, насколько возможно.

ssh: Знайте, что у ssh версий ранее 1.2.20 есть проблемы с системой защиты. Что может быть хуже - пользователи на обеих машинах открыты, две программы используют sudo. Это все потому, что я отказался от пароля на секретном ключе вызывающей машины в пользу автоматического установления связи с VPN.

firewall: Если неправильно настроить правила firewall на одной из машин, вы откроете снаружи доступ к обеим сетям. Я рекомендую использовать IP-маскарадинг (неправильная настройка маршрутов встречается реже), и хорошо следить за VPN-интерфейсами.



Что вам понадобится


Вам понадобится

Linux firewall

ядро

самая минимальная конфигурация

ipfwadm

fwtk

Утилиты VPN

ssh

pppd

sudo

pty-redir

Текущие версии:

ядро: 2.0.29 Используйте стабильное ядро, оно должно быть новее 2.0.20, в более ранних была ошибка ping'o'death. В настоящий момент существует ядро 2.0.30, но в нем есть пара ошибок. Если вы хотите, чтобы у вас работал новый более быстрый код работы с сетью, используйте препатч. 3-ий работает прекрасно.

базовая система: Я предпочитаю Debian. Но, каждому свое. Вы совсем не хотите использовать большие пакеты, и конечно никогда не думали о sendmail. Вам абсолютно не нужен telnet, ftp, и 'r'-команды (это необходимо только другим unix-ам).

ipfwadm: У меня версия 2.3.0

fwtk: У меня версия 1.3

ssh: 1.2.20 или новее. С более ранними версиями были проблемы с суб-протоколом.

pppd: Я использовал 2.2.0f для испытания, но я не уверен в его безопасности, поэтому я убрал у него флаг seteuid, и использовал для его запуска sudo.

sudo: 1.5.2 - самая новая из известных мне версий

pty-redir: Написан мной. Возьмите его по адресу ftp://ftp.vein.hu/ssa/contrib/mag/pty-redir-0.1.tar.gz. Номер версии - 0.1. Если с ним возникли проблемы - пишите мне.



Что же на самом деле происходит?


Вызывающая сторона заходит в отвечающую, запускает pppd и переназначает все на локальный pty. Для этого он проделывает следующее:

создает новое pty

соединяется с отвечающей машиной при помощи ssh

запускает на отвечающей машине pppd

запускает pppd на этом новом локальном pty

настраивает таблицу маршрутов на обеих машинах.

Существуют небольшие задержки, поэтому используется 'sleep 10s'.



HOWTO: VPN


Arpad Magosanyi
mag@bunuel.tii.matav.hu
Перевод: Станислав Рогин, ASPLinux



И второй тоже


Теперь команда ssh -l slave polanski sudo /usr/sbin/pppd

должна работать, и вы снова увидите тот же самый мусор.



Как дела на устройстве?


Попробуйте дать команду /usr/sbin/pppd /dev/ttyp0 local 192.168.0.1:192.168.0.2

чтобы установить соединение. Проверьте наличие интерфейса при помощи команды ifconfig. Проверьте сеть при помощи ping.



Моя ответственность


Как всегда: автор не несет никакой ответственности за ущерб любого рода. Более подробно описано в соответствующей главе GNU GPL 0.1.1



Настраиваем автоматическую авторизацию на отвечающей стороне


Скопируйте только что созданный ключ на отвечающую машину в каталог .ssh/authorized_keys и установите следующие разрешения:



Настройка других подсистем


Настройте необходимые вам правила firewall, и т.п.. Вам надо будет разрешить трафик ssh между двумя машинами. Это означает, что вам надо разрешить вызывающей машине соединение с портом 22 на отвечающей. Запустите sshd на отвечающей машине, и проверьте, можете ли вы соединиться с ней с вызывающей. Этот шаг я не проверял - если возникнут проблемы, пишите.



Настройка таблицы маршрутов


Настройте таблицу маршрутов на вызывающей и отвечающей машине. После этого у вас должна работать команда ping с любой машины в одной сети на любую машину в другой. Задайте дополнительные правила firewall. Теперь у вас есть VPN, и вы можете настроить все правила, учитывая связь двух интрасетей.



Переназначаем Pty


Попробуйте переназначить сразу все командой /usr/local/bin/pty-redir /usr/bin/ssh -l slave polanski sudo /usr/sbin/pppd

Красивая длинная команда, не так ли? Вы должны использовать полный путь к программе ssh, так как программа переназначения pty позволяет только такую форму - это сделано из соображений безопасности. Теперь у вас есть имя устройства - его вам сказала программа. Предположим, что это /dev/ttyp0. Вы можете использовать команду ps, чтобы узнать, что же случилось. Ищите 'p0'



Пишем скрипты


На вызывающей стороне я написал настоящий init-скрипт:

#! /bin/sh

PATH=/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/bin/X11/: PPPAPP=/home/slave/ppp ROUTEAPP=/home/slave/route PPPD=/usr/sbin/pppd NAME=VPN REDIR=/usr/local/bin/pty-redir SSH=/usr/bin/ssh MYPPPIP=192.168.0.1 TARGETIP=192.168.0.2 TARGETNET=193.6.37.0 MYNET=193.6.35.0 SLAVEWALL=polanski-out SLAVEACC=slave

test -f $PPPD exit 0

set -e

case "$1" in start) echo setting up vpn echo Установка связи с VPN $REDIR $SSH -o 'Batchmode yes' -t -l $SLAVEACC $SLAVEWALL sudo $PPPAPP >/tmp/device TTYNAME=`cat /tmp/device` echo tty is $TTYNAME sleep 10s if [ ! -z $TTYNAME ] then $PPPD $TTYNAME ${MYPPPIP}:${TARGETIP} else echo ОШИБКА! logger "Соединение VPN установить не удалось" fi sleep 5s route add -net $TARGETNET gw $TARGETIP $SSH -o 'Batchmode yes' -l $SLAVEACC $SLAVEWALL sudo $ROUTEAPP ;; stop) ps -ax | grep "ssh -t -l $SLAVEACC " | grep -v grep | awk '{print $1}' | xargs kill ;; *) # echo "Usage: /etc/init.d/$NAME {start|stop|reload}" echo "Usage: /etc/init.d/$NAME {start|stop}" echo "Использование: /etc/init.d/$NAME {start|stop}" exit 1 ;; esac

exit 0

На отвечающей потребовался только скрипт, добаляющий строку в таблицу маршрутизации (/usr/local/vpn/route):

#!/bin/bash /sbin/route add -net 193.6.35.0 gw 192.168.0.1

а в файл .ppprc я записал следующее:

passive



Планирование


Перед тем, как вы начнете настраивать свою систему, вы должны уточнить детали, касающиеся сети. Я предполагаю, что у вас имеются две интрасети, каждая из которых защищена от внешней сети своим firewall. Соответственно, у вас имеются, как минимум, два сетевых интерфейса на каждом firewall. Возьмите листок бумаги и карандаш, и запишите их IP-адреса и маски. Вам потребуется также еще один IP-адрес на каждый firewall из сетевого пространства, создаваемого вами в VPN. Эти адреса не должны входить в пространство ни одной из существующих сетей. Я предлагаю вам использовать "частные" адреса. Вот их список:

10.0.0.0 - 10.255.255.255

172.16.0.0 - 172.31.255.255

192.168.0.0 - 192.168.255.255

Например, у вас может быть такая конфигурация: Две крепости firewall называются fellini и polanski. На каждом из них имеется интернет-интерфейс (-out), интранет-интерфейс (-in), и vpn-интерфейс (-vpn). Адреса и маски:

fellini-out: 193.6.34.12 255.255.255.0

fellini-in: 193.6.35.12 255.255.255.0

fellini-vpn: 192.168.0.1 point-to-point

polanski-out: 193.6.36.12 255.255.255.0

polanski-in: 193.6.37.12 255.255.255.0

polanski-vpn: 192.168.0.2 point-to-point

Итак, план у нас есть.



Подстройка конфигурации


Как я уже говорил, это HOWTO - набор записок на тему "Как я настраивал VPN". В этой конфигурации есть вещи, с которыми я не экспериментировал. Все встанет на свое место, когда я все испытаю, или кто-то скажет мне "это должно работать так-то". Самое главное - соединение, которое использует ppp, до сих пор не является 8-битным. Я думаю, что надо что-то сделать с конфигурацией ssh или pty. На данный момент ssh использует символ "тильда" (~) в качестве служебного. Это может привести к замедлению или разрыву соединения - каждое сочетание символов Enter-~ будет вызывать системное приглашение ssh. В документации к ssh сказано: Соответствующий флаг ssh - '-e', вы можете устанавливать его в конфигурационном файле.



Пропускная способность и загруженность систем


Все виртуальное всегда использует реальные ресурсы. VPN требует пропускной способности канала и вычислительных ресурсов. Цель- установить баланс между ними. Вы можете достичь его, подобрав настройку флага '-C' или опции 'CompressionLevel'. Вы даже можете использовать другой компрессор-шифрователь, но я бы этого не рекомендовал. Заметьте, что время прохождения может уменьшиться при увеличении степени компрессирования. Творите, выдумывайте, пробуйте.



Разное


"HOWTO: VPN" - это подборка информации о настройке Виртуальной Частной Сети (Virtual Protected Network) в Linux (и, частично, в других Uni*-ах).



Разрешаем запуск ppp и route для обеих сторон.


В моем случае на вызывающей стороне работает root - ничего делать не надо. На отвечающей добавьте следующие строки в файл /etc/sudoers:



Сборка и установка


Соберите или установите уже собранные утилиты. Прочитайте документацию к каждой из них. Прочитайте "Howto: Firewall". Теперь у нас есть утилиты.



Сопутствующая документация


The Linux Firewall-HOWTO /usr/doc/HOWTO/Firewall-HOWTO

The Linux PPP-HOWTO /usr/doc/HOWTO/PPP-HOWTO.gz

Документация к ssh (/usr/doc/ssh/*)

Руководство Сетевого Администратора Linux

Специальные Публикации "Компьютеры и Безопасность" NIST http://csrc.ncsl.nist.gov/nistpubs/

Список рассылки "Firewall" (majordomo@greatcircle.com)



Состояние этого документа


Этот документ находится в стадии начальной разработки. Вам потребуется знание администрирования IP - как минимум, знание firewall, ppp и ssh. Это вам понадобится при настройке VPN в любом случае. Я просто решил записать мои мысли, чтобы просто не забыть их. Возможно в моей системе есть дырки. Если честно - я настраивал все это на стандартных машинах-маршрутизаторах, а не на firewall - так проще.



Создаем ключ ssh для вызывающей стороны


Используйте программу ssh-keygen. Установите пустой пароль, если вы хотите автоматически устанавливать соединение с VPN.



Термины


Я использую здесь термины "вызывающая сторона" и "отвечающая сторона", хотя VPN никоим образом не имеет отношения к соединениям по телефонным линиям. Я просто использую их для разделения активной и пассивной стороны при установлении соединения. Машина, устанавливающая соединение, называется "вызывающая", а та, которая отвечает, называется "отвечающей".



Ваша ответственность


Здесь мы имеем дело с системой безопасности: вы не будете защищены, если у вас плохо настроена система безопасности, и подобные ей вещи.



В наше время firewall все


В наше время firewall все чаще и чаще используется в Интернете и частных сетях. В связи с этим построение надежных Виртуальных Частных Сетей VPN очень важно. Здесь сосредоточил весь свой опыт в этой области. Я приветствую любые отзывы/критику/предложения по этому поводу.

Заходим в систему


Вы ведь уже попробовали, работает ли ssh? Если отвечающая машина не позволяет вам войти в систему, читайте системные журналы. Возможно проблема состоит в неправильных правах на файлы, или неправильно настроен sshd.



Запускаем ppp


Зайдите в отвечающую машину и выполните команду: sudo /usr/sbin/pppd passive

Вы должны увидеть на экране мусор. Если это так - это хорошо. Если нет - значит возникла проблема с sudo, или с pppd. Посмотрите на текст ошибки, просмотрите журналы, файлы /etc/ppp/options и .ppprc . Если все нормально - запишите слово 'passive' в файл .ppprc, и попытайтесь снова. Чтобы избавиться от мусора, нажмите Enter,'~' и '^Z'. После этого вы получите приглашение командной строки вызывающей машины - дайте команду kill %1. Читайте главу "Подстройка", если хотите подробнее узнать о специальных символах.



Заводим псевдо-пользователя для VPN


Создайте на отвечающей машине псевдо-пользователя для VPN, используя свою любимую утилиту (vi, mkdir, chown, chmod). Вы можете создать его и на вызывающей машине, но, я думаю, вы будете устанавливать соединение при загрузке системы, поэтому хватит и root-а. Кто-нибудь сможет указать мне на проблемы с использованием root на вызывающей машине?



Аппаратное обеспечение


Главный элемент- это, конечно, компьютер, по крайней мере, с одним USB-портом и планшет Wacom Graphire USB.



Другие


Приложения, поддерживающие XInput:

Gimp - это мощная программа работы с картинками в стиле Photoshop. Последняя нестабильная версия 1.1.х включает в себя поддержку XInput. Вы можете получить Gimp по адресу http://www.gimp.org

gsumi- это простая B/W программа рисования, которая поддерживает рисование и удаление изображения с передачей давления на перо и дрожания руки. Она находится по адресу http://www.gtk.org/~otaylor/gsumi/

xink (By Ralph Levien) - еще одна элементарная программа рисования для X. Ее можно найти по адресу ftp://kiwi.cs.berkeley.edu/pub/raph/xink.tar.gz

RasMol - программа молекулярной визуализации, поддерживающая аппаратное устройство цифрового набора. Ее адрес: http://www.umass.edu/microbio/rasmol/distrib/rasman.htm

xinput (by Frederic Lepied) - очень полезная для настройки и тестирования XInput-устройств утилита. Она расположена по адресу ftp://ftp.x.org/contrib/utilities/xinput-1.2.tar.gz



Ядро


Я использовал последнюю версию разрабатываемого ядра: linux-2.3.99-pre6.Оно довольно стабильно и в нем есть все необходимое. Вы также можете найти несколько версий драйверов, переделанных для старого ядра 2.2.х. Всю информацию о них Вы найдете по адресу http://www.suse.cz/development/usb-backport



Консоль Linux


Теперь, когда USB активирован, можно приступить к его проверке с помощью gpm:

Если gpm включился в момент загрузки, Вам необходимо его выгрузить: gpm -k

Теперь испробуйте Ваш планшет: gpm -tIMPS/2 -m /dev/input/mouse0

Подвигайте пером или мышью и УРА ... курсор движется по экрану.



Мини-HOWTO: "Wacom Graphire USB"


Arnaud Claden

Перевод: Денис Дементьев, ASPLinux

В этом документе cодержится информация, позволяющая настроить планшет Wacom Graphire USB для использования в Linux (в консоли и X), начиная с настройки ядра, кончая настройкой программ. Информация, приведенная здесь, должна подойти и для планшета Intuos USB.



Настройка ядра


Как я уже говорил, нижеследующие опции относятся к ядру 2.3.99pre6. Если у вас все не так, то вам самим придется разрешать эти трудности.

** Внимание: [] означает Да\Нет опции, а <> означает Да\Нет\Модуль **

Прежде всего Вы должны разрешить экспериментальные версии кода/драйверов:

Code Maturity level options --->

[*] Prompt for development and/or incomplete code/drivers

[*] Спрашивать о разрабатываемых и/или незаконченных кодах и драйверах

Если Вы этого не сделаете, то не получите доступ к некоторым драйверам.

Затем перейдем к разделу USB.

USB support --->

Support for USB

Поддержка USB

[*] USB verbose debug messages

[*] USB подробные отладочные сообщения

--- Miscellaneous USB options

--- Разные опции USB

[*] Preliminary USB device filesystem

[*] Предварительная файловая система устройств USB

Этой опцией Вы активизируете новые возможности /dev/usb/* (которые Вам нужно создать. См. ниже)

--- USB контроллеры

UHCI (Intel PIIX4, VIA, ...) support

поддержка UHCI (Intel PIIX4, VIA, ...)

< > OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support

< > поддержка OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...)

Вы должны выбрать один и только один из них. Если один не работает, выберите другой. Скорее всего, понадобится UHCI-драйвер, если Вы используете систему x86.

--- USB Devices

--- USB устройства

< > USB Printer support

< > поддержка USB-принтера

< > USB Scanner support

< > поддержка USB-сканера

< > USB Audio support

< > поддержка USB-аудио

< > USB Modem (CDC ACM) support

< > поддержка USB-модема (CDC ACM)

If you have one of these, feel free to activate the options Включите все необходимые вам опции

USB Serial Converter support

Эта опция должна быть включена для нормальной работы с планшетом Wacom.

[*] USB Generic Serial Driver

[ ] USB Handspring Visor Driver

[ ] USB ConnectTech WhiteHEAT Serial Driver (EXPERIMENTAL)

[ ] USB FTDI Single Port Serial Driver (EXPERIMENTAL)

[ ] USB Keyspan PDA Single Port Serial Driver (EXPERIMENTAL)

[ ] USB ZyXEL omni.net LCD Plus Driver (EXPERIMENTAL)

[*] USB Serial Converter verbose debug

Активируйте, если хотите получать все сообщения. Дезактивируйте, когда закончите работать с ними.

< > USB Kodak DC-2xx Camera support

< > USB Mustek MDC800 Digital Camera support (EXPERIMENTAL)

< > USB Mass Storage support (EXPERIMENTAL)

< > USS720 parport driver

< > DABUSB driver

< > PLUSB Prolific USB-Network driver (EXPERIMENTAL)

< > USB ADMtek Pegasus-based device support (EXPERIMENTAL)

< > USB Diamond Rio500 support (EXPERIMENTAL)

--- USB HID

HID - это разновидность интерфейса между Вами и устройством, так что Вы ДОЛЖНЫ его активировать.

USB Human Interface Device (HID) support

< > USB HIDBP Keyboard support

< > USB HIDBP Mouse support

Wacom Intuos/Graphire tablet support

Теперь надо включить поддержку планшетов Wacom.

< > Logitech WingMan Force joystick support

< > Keyboard support

Mouse support

Эту опцию надо включить, если вы хотите использовать мышь Wacom Intuos/Graphire.

(1024) Horizontal screen resolution

(768) Vertical screen resolution

Joystick support

Event interface support



Новые версии этого документа


Новые версии этого документа можно найти по адресу:

http://perso.club-internet.fr/tiamat/computer/howto/Wacom_USB-Mini_HOWTO.html



Новый модуль


xf86Wacom.so создавался не для USB-планшета, поэтому работает с ним не совсем корректно. Matsumura Namihiko создал новый драйвер, названный xf86WacomUSB (исходный текст находится там же, где и этот документ Mini-HOWTO). Однако для того, чтобы его собрать, Вам нужен код исходного текста ядра и исходный текст XFree86 (я успешно компилировал его в XFree86 3.3.5, однако его следует компилировать с 3.3.6).

Этот драйвер работает не со всеми возможностями планшета и вообще не работает, если Вы задаете параметр AlwaysCore.

Чтобы это исправить, я связался с Frederic Lepied, попросив его исправить стандартный модуль, включив в него поддержку всех функций планшета.

**НОВОСТИ** На сайте Frederic Lepied Вы можете найти ссылку на новый USB-драйвер, который прекрасно работает только в том случае, если Вы используете планшет в качестве мыши : т.е. либо Вы применяете планшет в Gimp для рисования, либо работаете с ним, как с XFree-мышью, но не то и другое одновременно. Я еще буду исследовать этот вопрос и внесу полученные результаты в документ.



Обратная связь и исправления


Я буду весьма признателен за все комментарии, исправления, добавления, направленные мне по адресу:



в этом документе достоверна, насколько


Информация в этом документе достоверна, насколько я могу об этом судить, однако возможны некоторые ошибки, поэтому не стоит следовать ему слепо, особенно если что-то кажется Вам неверным. Выполнение моих рекомендаций не должно причинить вреда Вашему компьютеру. Однако я не несу ответственности в случае возможного ущерба от использования информации данного документа. Это не howto по ядру. Я исхожу из предположения о том, что Вы знаете, как загружать\устанавливать новое ядро и как его настраивать.

Перед загрузкой



FStab

Если Вы хотите избежать сообщений об ошибках, то надо сделать следующее:

Отредактируйте файл /etc/fstab и добавьте в него следующую строку:

none /proc/bus/usb usbdevfs defaults 0 0

Это активизирует файловую систему usb-устройств

none /var/shm shm defaults 0 0

Это необходимо для произведения изменений в разделяемой памяти в ядре.


Устройства, относящиеся к USB

Для использования USB надо сделать следующее:

mkdir /dev/input

mknod /dev/input/mouse0 c 13 32

Это позволит вам использовать мышь

mknod /dev/input/event0 c 13 64

mknod /dev/input/event1 c 13 65

mknod /dev/input/event2 c 13 66

mknod /dev/input/event3 c 13 67

Это включит перо: движения, давление, кнопки и ластик.


Настройка модулей

Отредактируйте файл /etc/modules.conf, добавив в него следующую строку:

alias char-major-13 usbcore


Мои дальнейшие действия

Затем я добавил в файл /etc/rc.d/boot.local следующее (помните, что я использовал дистрибутив SuSE, однако нечто подобное вы можете найти в RedHat в файле /etc/rc.d/init.d/boot.local или /etc/rc.d/init.d/rc.local):

/sbin/modprobe wacom

/sbin/modprobe mousedev

/sbin/modprobe evdev

Просто убедитесь в том, что модули загрузятся во время загрузки системы.


Последнее, но не второстепенное

Перезагрузитесь ;)

Проверьте сообщения о загрузке (dmesg | less) и посмотрите, нет ли ошибок, относящихся к USB. Они могут возникнуть, если Вы выбрали UHCI на OHCI-системе.

На моей машине появляются следующие сообщения:

.....

.....

usb.c: registered new driver usbdevfs

usb.c: registered new driver hub

usb-uhci.c: $Revision: 1.3 $ time 17:54:28 May 8 2000

usb-uhci.c: High bandwidth mode enabled

usb-uhci.c: Intel USB controller: setting latency timer to 0

usb-uhci.c: USB UHCI at I/O 0xffe0, IRQ 11

usb-uhci.c: Detected 2 ports

usb.c: new USB bus registered, assigned bus number 1

usb.c: USB new device connect, assigned device number 1

usb.c: kmalloc IF c3fcd2e0, numif 1

usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1

usb.c: USB device number 1 default language ID 0x0

Product: USB UHCI Root Hub

SerialNumber: ffe0

hub.c: USB hub found

hub.c: 2 ports detected

hub.c: ganged power switching

hub.c: standalone hub

hub.c: global over-current protection

hub.c: power on to power good time: 2ms

hub.c: hub controller current requirement: 0mA

hub.c: port 1 is removable

hub.c: port 2 is removable

hub.c: local power source is good

hub.c: no over-current condition exists

hub.c: enabling power on all ports

usb.c: hub driver claimed interface c3fcd2e0

.....

.....

hub.c: port 1 connection change

usb.c: USB new device connect, assigned device number 2

usb.c: kmalloc IF c3fcd620, numif 1

usb.c: skipped 1 class/vendor specific interface descriptors

usb.c: new device strings: Mfr=1, Product=2, SerialNumber=0

usb.c: USB device number 2 default language ID 0x409

Manufacturer: WACOM

Product: ET-0405-UV1.1-1

usb.c: unhandled interfaces on device

usb.c: This device is not recognized by any installed USB driver.

Length = 18

DescriptorType = 01

USB version = 1.00

Vendor:Product = 056a:0010

MaxPacketSize0 = 0

NumConfigurations =1

Device Version = 1.11

Device Class:SubClass:Protocol = 00:00:00

Per-interface classes

Configuration:

.....

.....

Если ядро выдает сообщение "Это устройство не опознано ни одним из установленных USB-драйверов", то это происходит потому, что во время загрузки системы модуль wacom еще не загружен. Однако вся шина USB и интерфейс узнаны. Так что если ваша система не работает и не выдает подобных сообщений, проверьте, не забыли ли Вы об опции USB (то, что я советовал включить в ядро, а Вы включили в качестве модуля. В таком случае в /etc/rc.d/init.d/boot.local

включите необходимую команду modprobe перед 3 строками, о которых я говорил (например /sbin/modprobe usb-uhci).

После запуска модуля wacom появляются следующие сообщения:

.....

.....

usb.c: registered new driver wacom

input0: Wacom Graphire on usb2

usb.c: wacom driver claimed interface c3fcd620

mouse0: PS/2 mouse device for input0

mice: PS/2 mouse device common for all mice

event0: Event device for input0

.....

.....

Начните заново и проверьте все, пока не получите все указанные сообщения (или другие, им соответствующие).



Перо


Back to the XInput section, after the parameters for the mouse, here is the real Wacom stuff : Возвращаемся к разделу XInput. После параметров мыши следуют настройки пера:

SubSection "WacomStylus"

Port "/dev/input/event0" --> устройство USB-even

DeviceName "WacomStylus" --> или как Вы хотите это назвать

Mode Absolute --> т.е. поверхность планшета эквивалентна поверхности экрана

#Suppress 6

DebugLevel 10 --> если все работает, установите эту опцию в 0

#TiltMode

#HistorySize 200

#AlwaysCore

#KeepShape

#TopX 20412 --> 4 строки используются для более тщательной настройки координат под экран

#TopY 14730

#BottomX 0

#BottomY 0

EndSubSection

SubSection "WacomEraser"

DeviceName "/dev/input/event0"

DeviceName "WacomEraser"

Mode Absolute

EndSubSection

SubSection "WacomCursor"

Port "/dev/input/event0"

DeviceName "GraphireMouse"

Mode Absolute

EndSubSection



Программное обеспечение для консоли


Для консоли Linux Вам потребуется только программа gpm, которая находится по адресу ftp://ftp.prosa.it/pub/gpm



Сборка ядра


Это просто:

После выхода из настройки запустите следующее:

make dep bzImage modules modules_install

Type it just like this and the computer will run all the steps one after the other.

Теперь скопируйте файл bzImage в каталог /boot, скопируйте System.map в каталог /boot, создайте или отредактируйте lilo.conf, указав в нем на новое ядро, и наберите /sbin/lilo в командной строке.

** Конечно, все настройки ядра, компиляции ядра и lilo должны быть запущены от root **



Ссылки


Для получения более подробной информации о планшетах Wacom в целом, обратитесь к документу "HOWTO: Планшеты Wacom" Stephan Runkel по адресу http://www.linuxdoc.org/HOWTO/Wacom-Tablet-HOWTO.html

Информацию об xf86Wacom.so ищите по адресу Frederic Lepied: http://www.lepied.com/xfree86

xf86WacomUSB.so находится по адресу ftp://ftp.aros.org/pub



Установка 2 мышей в одной системе


Хотели ли Вы когда-нибудь иметь 2 мыши на Вашей системе ? Если да, то сделайте следующее.

Отредактируйте файл /etc/XF86Config

Раздел modules должен выглядеть следующим образом

Section "Module"

Load "xf86Wacom.so"

EndSection

Теперь проверьте раздел XInput:

Section "XInput"

SubSection "Mouse"

DeviceName "WacomTablet" --> или то, что Вам нравится

Protocol "IMPS/2" --> мне не удалось заставить работать колесо мыши, однако, если у Вас получилось, дайте мне знать

Port "/dev/input/mouse0"

Buttons 5

ZAxisMapping 4 5

AlwaysCore --> это значит, что мышь Wacom считается базовым указателем , т.е. если Вы пользуетесь обычной мышью или мышью Wacom (или пером), результат будет один и тот же

EndSubSection

EndSection

Наконец, мышь Wacom (или перо) признана второй мышью, и обычная мышь работает нормально.



о том, как заставить планшет


Данный документ содержит информацию о том, как заставить планшет Wacom Graphire USB работать под Linux. Предупреждаем, что это довольно сложная задача, однако данное руководство поможет Вам, шаг за шагом описывая необходимые действия.
Данный документ основывается на "HOWTO: Планшет Wacom", написанном Stephan Runkel, однако содержит некоторые уточнения обо всех настройках USB, не упомянутых в исходном документе. Если Вам нужна более общая информация о планшетах Wacom, обратитесь к HOWTO Stephan Runkel.
Я составил этот документ потому, что столкнулся со многими трудностями при установке нового планшета Graphire под Linux, однако сейчас он прекрасно работает на моем ноутбуке Toshiba 4030CDT.

XWindow


Для того, чтобы использовать все возможности планшета, используйте XInput. Более конкретно, Вам понадобится модуль xf86Wacom.so, который поставляется с большинством последних версий XFree86, начиная с версии 3.3.5. Кроме того, Вам может понадобиться xf86WacomUSB.so - находящееся в процессе доработки версия xf86Wacom для USB . Ниже об этом будет сказано подробнее.



Цена


Предположительная цена апгрейда $149.99 (US) цена в розницу $199.99.



Что такое WordPerfect


WordPerfect - это популярный коммерческий текстовый процессор со множеством функций, с возможностью работать на различных платформах, включая Linux. Изначально он был написан и выпущен WordPerfect Corporation, затем перекуплен Novell, и примерно год тому назад продан Corel Corporation (Ottawa, Ontario, CA). Corel передал исходные тексты для дальнейшей разработки WordPerfect для UNIX (включая Linux) компании SDC Corporation, в которой работают бывшие разработчики WordPerfect , специализирующиеся на разработке программ для UNIX и X windows.

До появления релиза Microsoft Word, WordPerfect был самым популярным текстовым процессором для персональных компьютеров (и до сих пор, если рассматривать количество проданных копий; некоторые данные указывают, что за последние месяцы он стал продаваться больше чем Microsoft Word). Изначально WordPerfect был написан для DOS, а позже адаптирован для UNIX и Windows . Первоначальные версии WordPerfect для Windows опоздали с выходом на рынок и тем самым проиграли рынок Microsoft Word. WordPerfect до сих пор остается лучшим текстовым процессором для больших документов, в отличии от Word, а также для документов, которые должны перемещаться между Mac, UNIX и Microsoft платформами.

WordPerfect обеспечивает WYSIWYG среду для редактирования документов. Одна из лучших черт процессора - это возможность проверять орфографию во время печати. Также процессор включает в себя грамматический анализ, конверторы графических форматов и возможность редактирования HTML документов. Документы, созданные WordPerfect на одной платформе, могут быть прочитаны, отредактированы и распечатаны на других платформах (Я создал множество документов при помощи WP 6.0 (Caldera) и конвертировал их, используя WP 7.0 или 8.0 для чтения пользователями Windows 95).

WordPerfect работает на следующих платформах (в виде окончательных и beta-версий):

Linux 1.2.13 (WordPerfect 6.0 для Linux, релиз Caldera)

Linux 2.0.X (WordPerfect 6.0 и WordPerfect 7.0)

Microsoft DOS, Windows 3.1, Windows 95, Windows NT

Macintosh

HP-UX 10.01

IBM AIX 4.1.4

SCO OpenServer 5.0.0

Sun SPARC Solaris 2.5

SUN SPARC SunOS 4.1.x

SUN X86 Solaris 2.5.1

Digital UNIX 3.2 G Alpha

SCO 3.2.4.2



HTML эксопрт из документа WP




HTML эксопрт из документа WP содержащий колонтитулы иногда оставляет нижнюю часть документа отцентрованым или выделеным жирным шрифтом.



HTML экспорт из документа WP содержащий таблицу, не делает перекрестных ссылок.



При HTML экспорте пункты таблицы, если они были подчеркнуты, становятся HTML пунктами и больше не совместимы с таблицей.



Установка инструкции не удалась. У меня не хватило времени с этим разобраться.



Есть сведения о возникающих сложностях с конвертированием WPG графики в JPG.



WP 7.0 не может считывать файлы Office97 (это было основной головной болью для меня, так как я получил несколько файлов этого формата, но не мог прочитать их, ввиду отсутствия у меня Office97).



Некоторые говорят, что бывают проблемы с распечаткой (у меня их не было).



Во время запуска xwp я получил сообщение, что существует несколько дублирующих файлов. Но когда кликнул на первый же файл, XWP его выкинула.




Информация


Software Development Corporation - разработчик WordPerfect для UNIX. Corel передал исходные тексты WordPerfect для UNIX компании SDC. Я разговаривал с менеджером SDC по продажам WP для LINUX, и он мне очень помог в сборе информации.

Software Development Corporation 512 East 1860 South Provo, Utah 84606 USA

Phone: (801) 370-9600 Fax: (801) 370-9696 Email: info@sdcorp.com

WWW: http://www.sdcorp.com/wpunix.html

Corel Corporation - настоящий хозяин WordPerfect, который перекупил его у Novell. Они разрабатывают и продвигают такие продукты, как Corel Draw и WordPerfect.

Corel Corporation Ottawa, Ontario, CA

Technical Support (WP UNIX): (801) 765-4019 WWW: http://www.corel.com

< Caldera Corporation продает WordPerfect 6.0 для Caldera Network Desktop (CND) за $129.99 (WordPerfect и Motif Bundle). Примечание, на настоящий момент у меня нет информации хочет ли Caldera продавать WP 7.0.

Caldera, Inc. 633 South 550 East Provo, Utah 84606 USA

(888) GO LINUX (801) 377=7687 WWW: http://www.caldera.com

В крайнем случае свяжитесь со мной: whampton@staffnet.com.



и другие большие файлы, на


WP 7.0 можно взять, как и другие большие файлы, на сайте sdcorp FTP (или на WWW). Я два дня пытался скачать архив 26MB, используя ISDN, но получил только часть файла. В конце концов я использовал коммерческий T1-Internet для того, чтобы скачать эти файлы. Было бы гораздо легче скачивать каждый архив, если бы он был разбит на несколько небольших файлов (1-2 MB ). Примечание, когда вы разархивируете tar-архивы , то получите несколько небольших файлов -- как раз то, что надо.

В настоящее время вы можете загрузить версию с ограничением времени работы в 15 дней. За это время можно им заплатить и получить лицензию на его использование.

Для WP 7.0 Beta:


Как получить WordPerfect WP/SCO


Свяжитесь с SCO или зайдите на их сайт в WWW http://www.sco.com



Мини-HOWTO: WordPerfect


Wade Hampton
whampton@staffnet.com
Перевод: Михаил Корепанов, ASPLinux

В этом документе содержится описание работы в WordPerfect под Linux, а также содержит некоторые замечания по WordPerfect 7.0 beta. Это дополнение к предыдущему мини-howto, которое содержало советы по установке WordPerfect 6.0 для SCO UNIX (ODT) под Linux. Этот документ не спонсируется и не зависит от Corel Corporation или SDC.



Есть несколько ошибок при экспорте




Есть несколько ошибок при экспорте сложных документов, требующих переформатирования в HTML.



Иногда программа зависает (очень редко).



Иногда, когда вся память использована и не хватает места для подкачки, WP зацикливается и зависает.



Несколько шрифтов различаются в Windows и UNIX версиях.



Говорят, что некоторые макросы WP для UNIX версии не совпадают с аналогичными в версии Windows.




Ошибки в WP выпущенном SCO


Я не могу перечислить все ошибки в WP/SCO, но:

У первоначальной версии - проблемы с установкой.

Первоначальная версия использовала разделяемые библиотеки SCO, то есть требовала наличия их копии в Linux.



Планы на будущее


В августе WordPerfect 7.0 для Linux поступит в продажу. Компания SDC будет продавать его за $149.99 за обновление и $199.99 в розницу.

Corel работает над совместимостью своего office с Java и планирует выпустить релиз Corel Office for Java(TM). Сейчас есть Beta-версия, которая работает под Linux (я опробовал первую beta -- очень медленно). Зайдите на http://officeforjava.corel.com/about.htm для получения более полной информации. Задумка многообещающая.

SDC в настоящее время работает над WPLinux 8. beta-версия ожидается к середине 1998 , а релиз через 5 месяцев. SDC подчеркнули, что если не будет ярко выраженного спроса на WP под Linux, они перестанут его продавать (они уже остановили производство для SGI и UNIXWare) -- так что если хотите, то покупайте сейчас!



я использую FVWM95 на CND


Установка проста. Я действовал по инструкции....

Я добавил wp в меню fvwm ( я использую FVWM95 на CND 1.0 со множеством патчей) и в меню looking glass.

Я работаю на P6/200, 64M RAM, Caldera CND 1.0, RiskyHacks для libc 5.4.4, ядро 2.0.30 (патчи Joliet и FAT32 ), dual SCSI, CD-R и т.д. WP использует 74 Мб дискового пространства.


Для установки вы должны разархивировать


Для установки вы должны разархивировать полученные файлы, запустить программу Runme, ответить на несколько вопросов и запустить xwp для начала работы с WP 7.0. Примечание: вам потребуется 58 Мб только для WP 7.0, без графики, инструкций и т.д.



Для разархивирования в текущий каталог требуется 31Мб




Установка WP/SCO



Требования

Linux от 1.1.x до 1.2.x

модули (динамическая загрузка модулей)

iBCS2 (Intel BCS2 и модуль загрузки ELF)

динамические библиотеки SCO (если требуется)

имя домена (должно быть указано)

Имя машины (должно быть указано и должно состоять меньше, чем из 8 символов (localhost менее 9))


Требования к ядру

В ядро должна быть установлена поддержка модулей и ELF. Если вы уже это сделали, то пропустите этот этап, если нет, то сделайте следующее, будучи root-ом:

Скопируйте ядро в /usr/src/linux.xxx] и убедитесь в том, что существуют символьные ссылки на каталоги /usr/include/linux и /usr/include/asm (см. /usr/src/linux/README).

Соберите поддержку модулей и установите ее (см. ниже)

Соберите модуль iBCS2 и установите его (см. ниже)

Соберите ядро с включенной поддержкой модулей ELF (ответьте Y на BINFMT_ELF и MOD_VERSIONS)

Перезапуститесь с новым ядром

Примечание: вы должны собрать файл поддержки модулей ДО того, как соберете новое ядро (CONFIG_ MODVERSIONS=y).


Модули

Для iBCS2 необходим загружаемый модуль, как и для WP 6.0. Скачайте последнюю версию с сайта ftp, соберите его и установите. Если вы уже настроили систему для поддержки загружаемых модулей, пропустите этот этап. Требуется поддержка загружаемых модулей (/sbin/insmod, /sbin/rmmod, /sbin/lsmod). С последними версиями также требуется genksyms.

Файл: modules-1.1.87.tar.gz (или более поздние)

Сохраните tar-файл в /usr/src/modules и настройте поддержку модулей

Прочтите README в /usr/src/modules (или там куда вы его записали)

Перейдите в каталог /usr/src/modules/genksyms и дайте команду make genksysms; установите его в /usr/local/bin (или /sbin)


Эмулятор iBCS2

Эмулятор iBCS2 позволяет вам запускать SCO программы, такие как WordPerfect 6.0. Скачайте его с ftp сайта, соберите и установите его.

соберите и установите его в /usr/lib/modules

Прочтите HINTS (/usr/src/ibcs/Doc/HINTS)

Удостоверьтесь в том, что iBCS2 создал /dev/XOR. Если нет, то создайте символьную ссылку с /dev/null на /dev/XOR (cd /dev; ln -s /dev/null /dev/XOR)

Встречаются интерфейсы к подсистемам, работающие на уровне устройств, поэтому для их использования необходимо создать файлы устройств:



Входящие


WordPerfect текстовый процессор

Internet publisher (конструктор HTML)

QuickCorrect - фиксирует опечатки во время печати

Spell-As-You-Go - контроль орфографии во время печати

Совместимость файлов DOS, UNIX, и других версий WordPerfect на других платформах.



с WordPerfect для Linux на


Я работал с WordPerfect для Linux на Caldera Network Desktop (CND) весь прошедший год. На машине P6/200, 64M RAM, SCSI, CND 1.0 с RiskyHack патчами к Linux, ядром 2.0.30, обновленным RPM, и множеством RPM с Redhat и Caldera WWW сайтов.


Очень большое впечатление производит интерфейс


Очень большое впечатление производит интерфейс WordPerfect 7.0 для Linux. Он выглядит, как WP 7.0 для Windows. Все работает, как надо. В особенности мне понравилась проверка_орфографии_на_ходу!

Конструктор HTML работает чуть лучше, чем его аналог в WP 6.0, но все еще в нем есть недочеты. Некоторые говорят, что WP 7.0 требует много места для подкачки (Я это не проверял).


Впечатления от WP/SCO


WP/SCO вроде нормально работает (после того, как были преодолены проблемы инсталляции). Я использовал дистрибутив около 6-12 раз, пока не получил WP 6.0 для Linux (Caldera) и CND 1.0.



WordPerfect 5.1 и 6.0 (релиз SCO)


Я начал использовать WP 5.1 SCO (собранный без использования динамических библиотек) с января, 1995. Весной 1995 я получил копию WP 6.0 SCO (с динамическими библиотеками) и установил ее с трудом. В дальнейшем у меня были проблемы и с менеджером лицензий. Я устанавливал его под 1.2.8.

Эта глава состоит из выдержек "Мини-howto: WordPerfect". Более поздние версии WP SCO включают в себя как динамические, так и статические библиотеки, и поэтому не нуждаются в совместных библиотеках с SCO (shared libraries).

Это информация к размышлению! Если вы действительно хотите WP для Linux, возьмите WP 7.0!



WordPerfect 6.0 (Caldera)


Caldera продает как WordPerfect, так и Motif Bundle ($130 US) и Caldera Internet Office Suite ($219 US). Все включают в себя WordPerfect 6.0 для Linux.

В общем, WP 6.0 мне понравился. Я создал 20-30 больших документов и бесчисленное множество маленьких, итого более 1000 страниц, если их распечатать. Единственной проблемой было то, что я использовал шрифт WP Times под Linux, не совместимый с шрифтом WP True Type Times для Windows.