30 мая 2008 г.

изменение и обновление Ubuntu LiveCD

Вот заказал через shipit диски Ubuntu Livecd, как всегда при релизах, многие пакеты серьёзно стали обновляться уже после выхода релиза. Вот как раз недавно, обновился Firefox до версии 3 RC в отличии от 5ой беты в релизе. Плюс в Livecd отсутствовали пакеты руссификации, что тоже не очень хорошо. Так почему бы не создать свой Livecd с нужным ПО. Предлагаемый способ не решает проблему с предустановленными настройками пакетов, но позволяет настроить некоторые параметры системы, к примеру, настройки времени по UTC и другое.

Целью модификации диска будет:
удаление ненужных пакетов поддержки других языков;
обновление программного обеспечения по настоящий момент;
подключение нужных репозитариев;
поддержка флеш, mp3, divx, ndiswrapper и т.п.
настройка работы со временем и другие настройки..
В результате может получится образ диска, превышающих размер компакт-диска, поэтому результат нужно будет использовать на DVD.

1. Подготовка:
Для начала нам будет нужен диск LiveCD Ubuntu 8.04 или его образ, также будет необходимо предварительное установить для модификации диска squashfs-tools - пакет для работы с сжатой файловой системой squashfs:
$ sudo aptitude install squashfs-tools
Пакет chroot ставить нет необходимости, т.к. стандартно он предустановлен.
Сразу оговоримся, если у вас диск LiveCD, то путь к нему /media/cdrom0/, если образ, то путь к образу ~/Desktop/, а монтировать будем как /tmp/livecd, поэтому для начала примонтируем образ, в последующем по ситуации при работе с диском, указанный путь /tmp/livecd/ меняйте на /media/cdrom0/:
$ mkdir /tmp/livecd
$ sudo mount -o loop ~/Desktop/ubuntu-8.04-desktop-i386.iso /tmp/livecd
После создаём директорию (папку) (cd), которая будет содержать наш будущий образ CD в рабочей директории (~/livecd) и копируем всё содержимое оригинального диска, кроме casper/filesystem.squashfs, в нашу директорию ~/livecd/cd:
$ mkdir ~/livecd
$ mkdir ~/livecd/cd
$ rsync --exclude=/casper/filesystem.squashfs -a /tmp/livecd/ ~/livecd/cd
Данная команда скопирует всё, кроме файла, содержащего squashfs - сжатого содержимого диска.
Теперь примонтируем casper/filesystem.squashfs в директорию, названную ~/livecd/squashfs с целью скопировать содержимое для последующего редактирования в директорию (папку): ~/livecd/custom
$ mkdir ~/livecd/squashfs
$ mkdir ~/livecd/custom
$ sudo modprobe squashfs
$ sudo mount -t squashfs -o loop /tmp/livecd/casper/filesystem.squashfs ~/livecd/squashfs/
$ sudo cp -va ~/livecd/squashfs/* ~/livecd/custom
Также по необходимости скопируем файлы /etc/resolv.conf и /etc/hosts в ~/livecd/custom/etc для того, чтобы получить доступ к сети из образа, с которым будем работать через команду chroot, данная операция не будет нужна, если вы будете обновлять образ, работая через прокси:
$ sudo cp /etc/resolv.conf /etc/hosts ~/livecd/custom/etc/

2. Входим в образ :)
С целью модификации образа, нам необходимо войти с помощью команды chroot, сделав рабочей корневой директорией ~/livecd/custom, также необходимо будет подключить псевдофайловые системы (/proc и /sys), и по необходимости указать прокси. После чего уже можно заняться модификацией образа.
$ sudo chroot ~/livecd/custom
# mount -t proc none /proc/
# mount -t sysfs none /sys/
# export HOME=/root
Если соединение с интернетом будет работать через прокси, то прописываем следующее:
# export http_proxy=http://127.0.0.1:3128
где 127.0.0.1:3128 адрес вашего прокси.

3. Модификация содержимого LiveCD:

3.1. Удаление пакетов:
Для начала по желанию можно удалить игры для освобождения места, а также удаляем пакеты, с неанглицкой локализацией, полную русскую локализацию поставим позже.
# apt-get remove --purge gnome-games*
# apt-get remove --purge `dpkg-query -W --showformat='${Package}\n' | grep language-pack | egrep -v '\-en'`
Также можете удалить любое иное программное обеспечение, в котором вам нет необходимости, следующая команда выведит полный список установленных пакетов:
# dpkg-query -W --showformat='${Package}\n' | less
Дополнительно отключим стандартное использование Ubuntu времени UTC, что очень неудобно при установке Ubuntu на систему постоянно, для этого редактируем файл /etc/default/rcS командой:
# nano /etc/default/rcS
и приводим параметр UTC к значению no, т.е. следующего вида:
UTC=no

3.2. Обновление образа:
Когда вы удалили всё ненужное ПО, вы можете произвести обновление пакетов, для чего необходимо модифицировать файл /etc/apt/sources.list так, как вам удобно, указав вам необходимые репозитарии, к примеру:
Для начала открываем для редактирования /etc/apt/sources.list
# nano /etc/apt/sources.list
и вставляем в файл следующее, заменив всё:
deb http://mirror.yandex.ru/ubuntu/ hardy main restricted
deb http://mirror.yandex.ru/ubuntu/ hardy-updates main restricted
deb http://mirror.yandex.ru/ubuntu/ hardy-security main restricted
deb http://mirror.yandex.ru/ubuntu/ hardy universe multiverse
deb http://mirror.yandex.ru/ubuntu/ hardy-updates universe multiverse
deb http://mirror.yandex.ru/ubuntu/ hardy-security universe multiverse
deb http://mirror.yandex.ru/ubuntu/ hardy-backports main restricted universe multiverse
deb http://mirror.yandex.ru/ubuntu/ hardy-proposed restricted main multiverse universe
deb http://deb.opera.com/opera etch non-free
deb http://packages.medibuntu.org/ hardy free non-free
deb http://wine.budgetdedicated.com/apt hardy main
Теперь производим обновление:
# aptitude update && aptitude upgrade

3.3. Устновка новых пакетов:
Для начала поставим все пакеты поддержки русской локализации:
# apt-get install language-pack-gnome-ru language-pack-gnome-ru-base language-pack-kde-ru language-pack-kde-ru-base language-pack-ru language-pack-ru-base language-support-extra-ru language-support-input-ru language-support-ru language-support-translations-ru language-support-writing-ru
Теперь установим мультимедия пакеты для проигрования различных форматов аудио и видео файлов:
# aptitude install gstreamer0.10-ffmpeg gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse vlc vorbis-tools mpg123
# /usr/share/doc/libdvdread3/install-css.sh
Также установим дополнительно пакеты для работы с архивами:
# aptitude install rar unrar unace-nonfree p7zip-full
Установим поддержку различных беспроводных сетевых (wifi) карт:
# aptitude install ndiswrapper-common ndiswrapper-utils-1.9 cabextract unshield bcm43xx-fwcutter kismet aircrack-ng madwifi-tools
Дополнительное ПО для работы с сетью:
# aptitude install wireshark nmap ettercap traceroute
Плагины и полезные расширения для firefox:
# aptitude install flashplugin-nonfree mozilla-plugin-vlc adblock-plus
Шрифты Times New Roman, Arial и другие от MS, а также свободную альтернативу им:
# aptitude install msttcorefonts ttf-liberation
Дополнительные модули для клиента сетей мгновенных сообщений pidgin:
# aptitude install pidgin-encryption pidgin-hotkeys pidgin-libnotify pidgin-otr pidgin-plugin-pack pidgin-sipe pidgin-themes
Поддержку подключения в файловую систему сетевых ресурсов на основе Samba и SSH:
# aptitude install sshfs smbfs
Вы по желанию можете установить или вообще не устанавливать дополнительное ПО, можете к примеру установить skype, opera и тп..
Вы можете заранее закачать нужные или обновлённые пакеты, к примеру в папку ~/livecd/custom/tmp и установить их командой dpkg -i /tmp/имя_пакета.deb, так можно закачать и установить пакеты с сайта getdeb.net, в том числе для примера - последнюю версию transmission - стандартного для Ubuntu клиента torrent-сетей.

4. Зачищаем будущий образ:
Замечу, что при обновлении образа 8.04 Hardy Heron после обновлений командой aptitude upgrade необходимо удалить все пакеты ядра с индексом 16 как ненужные для освобождения места, т.к. будут установлены как минимум с индексом 17, найти 16-ые их можно командой:
# aptitude search 16
а потом удаляем пакеты командой:
# aptitude purge linux-image-2.6.24-16-generic linux-headers-2.6.24-16-generic linux-headers-2.6.24-16 linux-ubuntu-modules-2.6.
После установки программ необходимо зачистить кеш пакетов:
# apt-get clean
что аналогично команде:
# rm /var/cache/apt/archives/*.deb
Также зачистить директории временных файлов и аварийных завершений:
# rm -rf /tmp/*
# rm -rf /var/tmp/*
# rm -rf /var/crash/*
Если вы ранее копировали эти файлы /etc/hosts and /etc/resolv.conf, нужно их удалить:
# rm -f /etc/hosts /etc/resolv.conf
Теперь готовы выходить из chroot и перепаковывать диск, для это сперва отмонтируем /proc и /sys:
# umount /proc/
# umount /sys/
# exit
Теперь осталось пересоздать некоторые файлы, сжать файловую систему и создать образ диска.

5. Создание образа диска:
Для удобства в будущем рекомендую сразу создать файл make-livecd командой:
$ nano make-livecd
следующего содержания, файл пригодится для последующего быстрого пересоздания вновь образа диска:
#/bin/sh
#
# sudo -s
chmod +w ~/livecd/cd/casper/filesystem.manifest
chroot ~/livecd/custom dpkg-query -W --showformat='${Package} ${Version}\n' > ~/livecd/cd/casper/filesystem.manifest
cp ~/livecd/cd/casper/filesystem.manifest ~/livecd/cd/casper/filesystem.manifest-desktop
mksquashfs ~/livecd/custom ~/livecd/cd/casper/filesystem.squashfs -noappend
rm ~/livecd/cd/md5sum.txt
cd ~/livecd/cd && find . -type f -print0 | xargs -0 md5sum > md5sum.txt
cd ~/livecd/cd
mkisofs -r -V "Ubuntu-Live-custom" -b isolinux/isolinux.bin -c isolinux/boot.cat -cache-inodes -J -l -no-emul-boot -boot-load-size 4 -boot-info-table -o ~/Desktop/Ubuntu-Live-8.04-custom.iso .

Далее берём себе на время права root:
$ sudo -s
Даём права на запуск скрипта по созданию диска и запускаем его:
# chmod +x ./make-livecd
# ./make-livecd
Затем ждём окончания создания образа и тестируем готовый образ через виртуальную машину или же реально, записав на болванку.

6. Заключение:
Все действия удобно производить в отдельном окне терминала, рекомендую на будущее не удалять директорию (папку) ~/livecd, это позволит вам в будущем быстро повторить шаги инструкции 2-5 и обновить LiveCD, т.к. обновления в дистрибьютиве идут постоянно. Также подобные действия возможно произвести над другими дисками LiveCD типа kubuntu, xubuntu.

Удачи, если что, обращайтесь с замечаниями и комментариями...
Все предложенные в статье тексты файлов и команд удобнее копировать и вставлять нежели перепечатывать... Ж)

За основу взята статья с debuntu.org

29 мая 2008 г.

пароли

Существование в интернете невозможно без хранения паролей от множества сервисов: почты, аськи, блогов, сайтов, форумов и тп.
Некоторые используют один или несколько паролей для всего, что не есть хорошо, а множество разных паролей запомнить сложно, другие используют различные комбинации блоков символов (слов) для создания паролей, что также не есть хорошо.

Рекомендую, обратить внимание на программы для организации работы и безопасного хранения паролей.
KeePass - достаточно продуманная и удобная программа, использует алгоритм AES для шифрования, генерация паролей и их использование через буфер, подключение различных плагинов, в т.ч. и возможен импорт паролей из уже легендарной программы Pins. Существует версия программы под Linux - KeePassX, а также переносная (portable) версия.

Файл паролей шифруется основным паролем, который нужно помнить и хранить как зеницу ока, и совместим между всеми версиями программы, так сказать кросс-платформен.

Также имеется пакет в репозитарии Ubuntu и возможно установить командой: sudo aptitude install keepassx
Также пакет последней версии доступен на сайте getdeb.net

26 мая 2008 г.

расширения Firefox

Переход с Ubuntu 7.10 на 8.04 вынудил сменить версию браузера Firefox на третью (3 beta 5), в связи с чем возникли некоторые проблемы с уже установленными расширениями, которые работали прекрасно во второй версии, а в третьей не хотели этого делать. Отказываться от использования всех подобных расширений не пришлось, хотя, признаюсь, некоторые расширения не работают, а новых версии пока не видно.

Перед установкой расширений неоходимо на служебной странице about:config создать 2 параметра:
extensions.checkCompatibility со значением true
extensions.checkUpdateSecurity со значением false

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

Категория обязательных к применению расширений:
  1. Adblock Plus - блокирует навязчивую рекламу, в т.ч. баннеры, флеш, счётчики, поддерживает возможность блокировки произвольных элементов согласно правилам настройки, а также существует возможность подписаться на обновляемые "чёрные" списки.
  2. NoScript - блокирует выполнение скриптов, флеши на странице, таким образом блокируются не только вредные функции типа всплывающих окон, а также реклама, счётчики.
  3. DownThemAll - менеджер закачки, многофункционален, удобен, распределение потоков, отпадает необходимость иметь таковую отдельную программу.
  4. CustomizeGoogle - точная и детальная настройка работы сервисов Google, в том числе отключение рекламы, некоторых функций, определение защищённых соединений и многое другое.
  5. FoxyProxy - создаёт профили подключений через прокси, парой кликов можно подключиться через необходимый, в том числе через настроенный заранее клиент tor.
  6. FAYT - по нажатию слэша на цифровой клавиатуре появляется панель поиска, которая исчезает, в отличии от стандартной по Ctrl+F, через некоторое время неактивности.
  7. Greasemonkey - позволяет подключить дополнительные java-скрипты, изменяющие функционально и внешне некоторые сервисы. Скрипты можно найти здесь.
  8. MR Tech Toolkit - просто необходимое расширение для работы с другими расширениями, позволяет устанавливать, просматривать, настраивать расширения в более удобном виде нежеле по стандарту, а главное позволяет запустить расширение в режиме совместимости, даже если браузер не хочет этого делать, данная функция полезна для работы с расширением ImgLikeOpera, которое давно уже не обновлялось.
  9. Extended Statusbar - расширение из категории "как в Опере", показывает в строке статуса количество изображений на странице, размер страницы, скорость открытия страницы, время и тп., работает в режиме совместимости.
  10. Download Statusbar - удобно и информативно отображает процесс закачивания файлов в виде прямоугольных элементов над строкой статуса.
  11. Foxmarks Bookmark Synchronizer - расширение для резервного хранения ваших закладок на сервере, их синхронизации, что позволяет иметь один и тот набор закладок на нескольких компьютерах, к примеру, дома и на работе.
  12. ImgLikeOpera - также из категории, название кстати само об этом и говорит, т.е. изображения "как в Опере", можно одним нажатием кнопкой мыши переключать режимы отображения изображений на страницах, типа "без картинок", "картинки из кеша", "картинки только с данного сайта", "все картинки", можно создавать профили, работает в режиме совместимости.
  13. Organize Status Bar - самое необходимое расширение, когда этих расширений становится много, и их значки переполняют строку статуса, позволяет перемещать по порядку, скрывать значки в статусной строке.
  14. RefControl - расширешие позволяет подделывать, изменять или отключать посылаемое браузером сообщение о том, с какой сайта и/или страницы вы перешли на данный сайт/страницу. Удобно, к примеру, настроить профиль для всех как "Подделать" "3ей стороне", т.е. при переходе на другой сайт откуда-либо, серверу будет сообщено, что на страницу перешли из корневой страницы, и он не узнает, с какого сайта/страницы вы в действительности перешли.
  15. Searchbar Autosizer - строка поиска в верхнем правом углу браузера сможет изменяться в длину в зависимости от набранного текста.
  16. Secure Login - также из категории "как в Опере", подменяет функции "Жезла" в Опере, т.е. появляется дополнительная кнопка в панеле навигации или в статусной строке, по нажатию на которую будут автоматически вбиты логин и пароль, сохранённые для текущей страницы/сайта.
  17. Stealther - во втором firefox было подобное расширение Distrust, которое не работает под третьей версией, а смысл в режиме работы, по завершении которого будут уничтожены все сведения о тех сайтах и страницах, которые были посещены во время включенного режима.
  18. Stop-or-Reload Button - расширение подменяет две кнопки в панели навигации как "Стоп" и "Обновить" одной, которая подменяется автоматически по обстоятельствам: при загрузке странице - функции "Стоп", при просмотре - функции "Обновить".
Это неполный список полезных расширений, которые сам использую и вам рекомендую, но, думаю, список будет дополнятся мной со временем.

25 мая 2008 г.

общение с посетителями

На страницах моего сайта вы можете видеть в правом нижнем углу всплывающее окошко.

Это hab.la - сервис, предоставляемый одноимённым сайтом, с помощью которого посетители сайта могут общаться напрямую с автором или иными лицами.

Принцип работы следующий.
Регистрируется владелец сайта/страницы здесь, после чего добавляется контакт в почти любой клиент мгновенных сообщений, т.к. соединение будет основана на jabber/xmpp, настройки для клиента даны на странице установки. А на сайте/странице добавляется предлагаемый java-скрипт, в котором имеется уникальный идентификатор.

Также на сайте hab.la имеется возможность для детальной настройки интерфейса предоставляемой службы, в том числе можно перевести на нужный язык, что вы видите у меня, а также изменить цветовую палитру, подключить плагины, в т.ч. и онлайновый переводчик.

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

Для начала, предлагаю Вам пообщаться со мной прямо сейчас.

travian без плюса

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

Для начала вам полагается иметь установленный браузер Mozilla Firefox с установленным отсюда расширением Greasemonkey.

Сильно расписывать скрипты с сайта Userscripts.org не буду, отмечу, что описанный здесь набор скриптов совместим между собой и постоянно развивается.

  1. Скрипт Travian3 Beyond - ML&CN - имеет множество функций, что все и не перечислишь, вобщем маст хэв всеми, самый важный скрипт, и закладки, и данные о постройках, и сохранение продаж, и удобства в покупке, и тп и тд;
  2. Скрипт Travian Battle Analyse - анализирует бой, также страницы оазиса, посылки солдат, сохраняет логи на стороннем сервере;
  3. Скрипт Travian title fixer - показывает в заголовке окна/таба браузера текущее точное название страницы.
  4. Скрипт BBLetters - в сообщениях теперь можно выделять и оформлять текст с помощью BBCode, одно "но" - оформление отображается только при просмотре сообщения, а не при редактировании, и самое интересное - взгляните возможные опции при просмотре координат.

Обязательно удалите предыдущие версии подобных скриптов, если вы ранее устанавливали таковые.

Успешной игры вам!

Напоминаю, что регистрация в игре Травиан бесплатна и всегда доступна по этому адресу.

Acorp Sprinter@ADSL USB под Ubuntu

У меня есть сабжевый модем, купил с года полтора назад, понравился тем, что не занимает порт сетевой карты, не нужно отдельное питание, как потом оказалось, очень устойчив на моей линии, стабилен.
Должно работать, пробуйте, пытайтесь:

  • подключаем модем, после включения компьютера лампочка USB должна гореть на модеме
  • проверяем, виден ли модем в системе, командой:
lsusb
  • смотрим, должен быть текст наподобие следующего:
Bus 001 Device 003: ID 0572:cb00 Conexant Systems (Rockwell), Inc. E-Tech ADSL Modem v2
tar xvvjf conexant-adsl-usb-firmware-cxacru-fw.bin.tar.bz2
  • перемещаем в папку в папку для автоматической загрузки:
sudo mv cxacru-fw.bin /lib/firmware/
  • перезагружаемся, при загрузке светодиод ADSL на модеме должен заморгать, а потом загореться постоянно, что означает о том, что он успешно соединился
  • устанавливает пакеты для настройки соединения:
sudo aptitude install br2684ctl pppoe pppoeconf
  • устанавливаем настройки провайдера:
sudo br2684ctl -b -c 0 -e 0 -a x.y - где x = VPI, y = VCI, предоставленные вашим провайдером, у меня 1 и 35 соответственно
  • должно быть появиться типа:
br2684ctl[6767]: Interface “nas0″ created sucessfully
br2684ctl[6767]: Communicating over ATM 0.1.35, encapsulation: LLC
br2684ctl[6767]: Interface configured

  • если прошло удачно, тогда настраиваем соединение sudo pppoeconf - где соглашаемся со всем, указываем логин и пароль, в конце на вопросы окна DONE о запуске соединения при загрузке отвечаем Нет, далее в окне ESTABLISH A CONNECTION (соединиться) тоже отказываемся, проверим чуть позже, т.к. настройка была запущена под рутом, то и подсоединился б под рутом, и отключаться тоже так надо бы потом, в общем, не нужно это
  • далее проверяем действительно соединение командой pon dsl-provider
  • отключаемся, если связь есть, от линии командой poff либо для отключения всех соединений командой poff -a
  • если всё ok, то прописываем настройки при загрузке:
    sudo nano /etc/rc.local
    - где пишем:
br2684ctl -b -c 0 -a 1.35
pppoe -I nas0 -m 1452 -d
до строки exit 0
  • так мы инициализируем ADSL-соединение при загрузке, иначе придётся ручками каждый раз это делать.
  • если вы испытываете трудности при аварийном отключении и перезагрузке компьютера, которые выражаются в том, что модем горит лампочками, а интерфейс не настроен, и соединения нет, то добавьте в файл /etc/rc.local выше указанных ранее строк инициализации adsl-соединения следующие строки по принудительному отключению и последующему включению модуля модема:
rmmod -s cxacru
modprobe -s cxacru
  • ручками подсоединяться-то будет неудобно, поэтому ставим замечательную программу, которая ещё будет считать входящий и исходящий трафик соединения:
sudo aptitude install gkrellm
  • запускаем командой gkrellm - можно сразу прописать на автозапуск через меню:
    Система - Параметры - Сеансы - Создать
  • на окне gkrellm открываем настойки мышью или кнопке F1
  • далее в настройках мониторы - Сеть, где ставим все галочки во вкладке Кнопка таймера, интерфейс ставим ppp0, команда запуска pon dsl-provider, команда остановки poff -a, можете настроить под своё удовольствие и другие мониторы
  • для подсчёта трафика можно в настройках во вкладке Настройка прописать следующую строку подписи чарта:
    $id\n$od\b\c\f$L
    где будет отображаться входящий трафик верхней строкой, и нижней исходящий
  • закрываем настройки, смотрим на окно gkrellm, где около надписи ppp0 будет маленькая кнопка, которая будет включать и отключать соединение, а также отображать его ход, также там есть кнопки отображения полной статистики, сброс показаний на чарте и другое
  • следует иметь в виду, что статистика не будет собираться при выключенной программе, поэтому автозапуск обязателен

Альтернативой gkrellm в части подключения может быть использован ppptray, пакет которого можно скачать с сайта http://www.getdeb.net, я бы рекомендовал бы эту программу, т.к. она визуально в трее показывает состояние соединения: есть ли оно, нет его, или в процессе подсоединения.

Также статистику можно подсчитывать с помощью пакета darkstat, но о нём позже.

Так-то всё теперь, должно работать, если что-то не так, как говориться, курите маны...

Для тех, кто юзает модем Acorp Sprinter@ADSL USB под оффтопиком (windows), крайне рекомендую поставить отсюда драйвера версии 41, мне очень и очень оказались по нраву.

экономия трафика под Ubuntu

DSL уже везде, но безлимит не у всех, поэтому экономить приходиться и на трафике всеми способами.

Выкладываю инструкцию по настройке toonel.net под Ubuntu, что отчасти справедливо и для других дистрибутивов и оффтопиков.Сервис toonel.net предоставляет функцию прокси, в котором данные от сервера к клиенту (вашему компьютеру) сжимаются, также могут сжиматься с заданными параметрами графический файлы jpeg и gif. Эфективная экономия трафика подобным способом составляет около 30-35%, конечно, за это вы поплатитесь скоростью загрузки страниц, что не столь значительно, а также тем, что у вам будет определяться забугорный ip-адрес, что отразится на работе с некотороми сайтами в рунете.

  • Для начала скачиваем с www.toonel.net файл toonel.jar, там есть с графическим интерфейсом последняя версия 0.0.50.50.
  • ставим пакет явы: sudo aptitude install sun-java5-jre
  • запускаем toonel: java -jar toonel.jar
  • можно поставить на автозагрузку через
    Цитата:
    Система - Параметры - Сеансы -Создать
  • основные настройки поставлены на приём порт 8080, можно во вкладке web настроить родительский прокси
  • ставим лёгкий, быстрый, удобный кеширующий прокси polipo и инструмент для борьбы с рекламой adzapper (он её просто вырезает):
    sudo aptitude install polipo adzapper
  • правим конфиг: sudo nano /etc/polipo/config
  • по умолчанию polipo использует порт 8123, изменить его можно прописав в конце
proxyPort = 3128
  • указывает там же родительский прокси на toonel:
parentProxy = 127.0.0.1:8080
  • можете настроить список блокированных хостов здесь:
    /etc/polipo/forbidden
  • включаем инструмент для борьбы с рекламой, добавив следующую строку:
redirector = /usr/bin/adzapper
  • перезапускаем: sudo /etc/init.d/polipo restart
  • на данном этапе уже можете настраивать браузеры на http-proxy: 127.0.0.1:3128 либо как вариант, прописав автоматическое определение настроек на файл:

file:///*/proxy.pac
где * - путь к файлу, а сам файл имеет следующее содержание:

Цитата:

function FindProxyForURL(url, host)
{
if (shExpMatch(url, "http://localhost:*"))
{return "DIRECT";}

if (shExpMatch(url, "http://127.0.0.1:*"))
{return "DIRECT";}

if (shExpMatch(url, "http://proxy:*"))
{return "DIRECT";}

if (shExpMatch(url, "http://192.168.*.*"))
{return "DIRECT";}

if (shExpMatch(url, "https:*"))
{return "DIRECT";}

return "PROXY 127.0.0.1:3128";
}


И не забудьте подключить расширение AdBlockPlus для браузера Firefox для вырезания рекламы и экономии трафика.


no-ip или динамический ip под Ubuntu

Приходится часто работать с удалёнными компами через инет, особенно удобно залезть удалённо на свой домашний комп, что-то настроить или скачать с него. Проблема возникает только при определении IP-адреса нужной машины, при условии, что вы не арендовали постоянный IP и вам выделяется динамически. Проблема решаема через доступные бесплатные сервисы. Уже многие adsl-рутеры имеют встроенную поддержку того или иного подобного сервиса.

Мой выбор остановился на сервисе No-IP.com по следующим причинам:

  1. бесплатность;
  2. 5 хостов на 1 учётную запись;
  3. множество различных доменов второго уровня;
  4. различные типы хостов;
  5. удобная настройка и активация.

Для начала следует зарегистрироваться и создать нужные хосты.

Достаточно установить пакет noip2:

# apt-get install noip2

и ввести все необходимые данные при настройке пакета, путь сохранения файла конфигурации стандартно - /var/lib/noip2/noip2.conf

Если вы используете и подсоединяетесь через рутер и используете NAT, то не выключайте последнюю опцию при настройке.

Настраивать автозапуск нет необходимости, стандартно с указанным конфигурационным файлом и происходит автозапуск noip2 при загрузке.

Вы также можете узнать текущие настройки командой:

sudo noip2 -c /var/lib/noip2/noip2.conf -S


Устаревшая инструкция:

Скачиваем версию программы для Linux отсюда.

Внутри архива вы найдёте уже скомпилированые версии под х32 и х64 платформы, хотя можно самостоятельно скомпилировать из приложенных исходников. Но это не суть важно. Распаковываем noip2-Linux-32bit в нужную папку, к примеру для последующего удобства, копируем:

sudo cp noip2-Linux-32bit /usr/bin/noip2

тем самым имя исполняемого файла сокращено для удобства;

информацию о параметрах запуска можно узнать командой:

noip2 --help

  • настраиваем теперь для использования нужного хоста:

sudo noip2 -C -c /etc/no-ip2.conf -U 10
последним параметром задан интервал в минутах обновления/проверки данный ip-адреса
далее отвечаем на вопросы об интерфейсе;

указываем в качестве логина ящик электронной почты, на который зарегистрировали сервис;

далее пароль;

далее будет запрос (при количестве хостов более 1), что использовать ли настройки для всех хостов, в моём случае ответ нет;

далее соглашаемся на использование конкретного хоста, на ненужные отвечаем отрицательно;

далее будет задан вопрос о возможности запуска чего-либо при удачном обновлении информации, отвечаем пока нет;

теперь конфигурационный файл создан.

Для автозапуска прописываем через меню Система-Параметры-Сеансы запуск программы в виде следующей строки:

noip2 -c /etc/no-ip2.conf

Можно сделать автозапуск по другому, так, чтобы действовало на все сеансы всех пользователей, а именно дописав до строки exit 0 указанную команды в файл /etc/rc.local

Удачи, теперь всё должно работать.

zebedee под Ubuntu

Программа Zebedee создана для создания так называемых "туннелей", которые шифруются и сжимаются. Вот из-за последней возможности эта программа мне полезна.

Допустим, а пример буду описывать из жизни, имеется машина (комп, система или другое какое-либо название), которая имеет полный доступ в инет и на ней организован прокси-сервер, в моём случае polipo.

Прокси слушает по 3128 порту. В общем это сервер. Также имеется другая машина, клиент, который по каким-либо причинам имеет ограниченный доступ в интернет из-за того, что может трафик дорогой, или же находится за прокси локальной сети и прямого доступа в инет не имеет, в общем, это тот случай, когда нужно, чтобы трафик до клиента сжимался и походу шифровался.

Пакет под Ubuntu, собранный мной, можете скачать здесь, который вы также можете установить с помощью команды:

sudo dpkg -i путь_и_имя_пакета

Кстати, здесь домашняя страница Zebedee , а здесь созданная мной страница про Zebedee на википедии.

Вернёмся к настройкам сервера, для удобства создадим каталог для хранения настроек Zebedee, а именно:
sudo mkdir /etc/zebedee

далее перейдём в созданный нами каталог и создадим ключи доступа, для возможности ограничения доступа к серверу:
cd /etc/zebedee

создаём ключ доступа клиента и сразу записываем в файл:
sudo zebedee -p > new.key

далее создаём отпечаток ключа, по которому клиент будет распознаваться сервером:
sudo zebedee -P -f new.key > client.id

файл new.key следует каким-либо способом переместить на машину клиента, но к этому позже.

Теперь переходим к настройкам, для этого создадим и настроим файл конфигурации сервера:
sudoedit /etc/zebedee/server.conf

содержимое которого должно быть примерно таким:


server true # это сервер
# target localhost # на локальный комп
# target 192.168.0.0/24 # на компы в сетке
compression zlib:9 # максимум сжатия
checkidfile "/etc/zebedee/client.id" # отпечатки разрешённых клиентов
detached true # режим демона
verbosity 2
keygenlevel 2
keylength 256
minkeylength 128
maxbufsize 2048 # максимум 16383, не рекомендую при интенсивном соединении
idletimeout 300 # время, в течении которого будут отключаться неактивные соединения

Теперь в автозапуск или в /etc/rc.local прописываем строку запуска сервера:
zebedee -f /etc/zebedee/server.conf

Также необходимо будет открыть tcp-порт 11965, для udp-соединений 11230.


На машине клиента также устанавливаем пакет и создаём папку для настроек, куда помещаем полученный от сервера файл ключа: new.key

также создаём файл конфигурации клиента:
sudoedit /etc/zebedee/client.conf

и прописываем следующее:


verbosity 2
server false # указываем, что это не сервер, а клиент
# httpproxy 192.168.0.1:8888 # по необходимости использование сервера
serverhost IP # где IP - нужный адрес сервера или его доменное имя
tunnel 8080:localhost:3128 # настраиваем перенаправление порта 8080 на машине клиента на порт 3128 сервера
compression "zlib:9" # уровень сжатия максимальный
keylength 256
detached true
# logfile SYSLOG # по необходимости, указываем куда писать логи
include "/etc/zebedee/my.key" # ключ клиента


Также в автозапуск или в /etc/rc.local прописываем строку запуска клиента:
zebedee -f /etc/zebedee/client.conf

После чего настраиваем на машине клиента http-прокси как адрес 127.0.0.1:8080 и работаем.

Простейшая настройка прокси в терминале:
export http_proxy=http://127.0.0.1:8080

Таким образом, можно настроить не только http трафик, но и любое tcp/udp соединение, смотря какие цели достичь необходимо.

Замечу, что адрес сервера проще установить с помощью сервиса NO-IP, если у вас нет своего доменного имени или выделяется вам динамический ip.

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

wifi-рутер под Ubuntu

Статья о том, как создать wifi-рутер и соединить в беспроводную сеть компьютеры под ОС Ubuntu с применением WPA2. Для этого используются hostapd и wpa_supplicant.

Сперва, на компьютере, который будет исполнять функции рутера, устанавливаем hostapd:

sudo aptitude install hostapd

Далее исправляем файл /etc/hostapd/hostapd.conf на следующее:

---- начало

interface=ath0
driver=madwifi
logger_syslog=-1
logger_syslog_level=2
logger_stdout=--1
logger_stdout_level=2
debug=0
ctrl_interface_group=0
macaddr_acl=0
# deny_mac_file=/etc/hostapd.deny
auth_algs=3
eapol_key_index_workaround=0
eap_server=0
dump_file=/tmp/hostapd.dump
ssid=l

wpa=3
wpa_psk=e0addadafc577b0365bd209cfee63dfa5b600c73c97e6892acc10f4ca7f76907
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP

---- конец

где wpa_psk ваш секретный ключ, которые можно сгенерировать командой: wpa_passphrase ssid password - где ssid и password заменить вашими, в примере используются l и ffffffff соответственно.

Также укажите верно имя вашего интерфейса.

В файл /etc/rc.local прописываем автозапуск hostapd: hostapd /etc/hostapd/hostapd.conf &

На машинах-клиентах рутера проделаем следуеющее, а именно сначала установим программу-клиент для сетей WPA и WPA2:

sudo aptitude install wpasupplicant

и создадим файл настроек /etc/wpa_supplicant.conf:

---- начало

ctrl_interface=/var/run/wpa_supplicant
ap_scan=1
network={
ssid="l"
#psk="ffffffff"
scan_ssid=1
proto=RSN
key_mgmt=WPA-PSK
pairwise=TKIP CCMP
group=TKIP CCMP

psk=
e0addadafc577b0365bd209cfee63dfa5b600c73c97e6892acc10f4ca7f76907

}

---- конец

Также в файл /etc/network/interfaces прописываем под нужным интерфейсом дополнительные строки:

---- начало

pre-up wpa_supplicant -Bw -Dmadwifi -iath0 -c/etc/wpa_supplicant.conf
post-down killall -q wpa_supplicant

---- конец

где madwifi, используемый для карт atheros, может быть заменён на нужный вам, к примеру wext для большинства других карт, в частности broadcom, а ath0 - нужный интерфейс.

Перезапускаем hostapd c параметрами на сервере и интерфейс на клиенте, пользуемся.

Только не забудьте прописать ip на машинах в настройках в файле /etc/network/interfaces

Если возникнут вопросы или иные непонимания, смело читаем соответствующием маны.