Блог об openSUSE » General http://sapfeer.ru Блог по созданию и настройке openSUSE безопасного хамелеона Tue, 15 Mar 2011 12:04:30 +0000 ru-RU hourly 1 http://wordpress.org/?v=3.4.2 Перемены http://sapfeer.ru/2010/10/31/696 http://sapfeer.ru/2010/10/31/696#comments Sun, 31 Oct 2010 17:43:29 +0000 Сергей http://sapfeer.ru/peremeny/ logo Здравствуйте читатели, к сожалению, никак не хватает у меня времени сделать еще 2 статьи про быструю настройку NAT и прозрачное проксирование в openSUSE с помощью SQUID. Но надеюсь через 2 недели у меня появиться окошко и я, все-таки, реализую свои планы.

А теперь о позитивном, недавно вернулся с конференции HighLoad ++. Узнал очень много нового и  интересного, а самое главное полезного! Очень понравились выступления Joe Dalmato,  James’a Golick’a, Юры Вострикова, Антона Грицая, Олега Илларионова и остальных докладчиков. Их рассказы сэкономили огромное количество времени, которое могло быть потрачено на исследование мануалов и поиск решений. Особо я думаю следует выделить Павла Дурова, который, все-таки, дал информацию о работе крупнейшего сайта в рунете. Организаторы обещали выложить видео с конференции, но когда это будет сделано – не понятно, в свете предыдущих конференций. Но я записал на видео несколько презентаций, и если в течении 2х недель их не выложат в открытый доступ, я выложу хотя бы свои, как говорится, чтобы было Smile

С блогом произошло еще одно маленькое изменение, я получил в начале месяца письмо от Антона Резника из проекта openSUSE о правильном написании названия любимого дистрибутива. Огромное ему спасибо за предоставленную информацию, дорогие читатели, вы можете прочитать об этом более подробно здесь . Со своей стороны я сделал глобальные исправления слов openSUSE для всех статей в блоге, а так же названия.

А еще я активно занимаюсь сейчас lifehacking’ом и накопил уже некоторый опыт в этом. Ведь свободного времени очень мало и хочется его хоть как то оптимизировать. Да и еще при столь загруженной работе не загнуться за компом! Это очень важно и, конечно, хотелось бы с ним поделиться этим с вами, читатель.

]]>
http://sapfeer.ru/2010/10/31/696/feed 4
Настройка VirtualBox без GUI в openSUSE http://sapfeer.ru/2010/09/01/673 http://sapfeer.ru/2010/09/01/673#comments Wed, 01 Sep 2010 13:46:10 +0000 Сергей http://sapfeer.ru/?p=673 Здравствуйте, сегодня хочу рассказать, о том, как установить и настроить VirtualBox на сервере,

с которым работа ведется только по SSH. Это очень удобно, если где-то у вас имеется мощный сервер, а хочется экспериментов, ставим VirtualBox, поднимаем RDP/VNC в системе, в зависимости от предпочтений

и пользуемся Smile Указанная последовательность настройки VirtualBox будет работать в любом линукс дистрибутиве. Изначально, в репозиториях есть  Open Source версия эмулятора. Она нам не подходит, потому что в ней нет поддержки удаленного рабочего стола. Поэтому необходимо скачать VirtualBox со странички VirtualBox downloads. Там есть версии для openSUSE начиная с 11.0.

1) Скачиваем и  устанавливаем(Можно просто указать ссылку с сайта virtualbox’):

linux-z5dl:/path # zypper install VirtualBox-3.2-3.2.8_64453_openSUSE111-1.i586.rpm

2) Начинаем настройку(Внимание! Настраивать virtualbox необходимо под непривелигированным пользователем):

- создаем новую виртуальную машину с именем WinXP.

user@myhost:~> VBoxManage createvm --name WinXP --register

- создаем для нее жесткий диск WinXP.vdi (на этом шаге рекомендую записать UID созданного диска, у меня он получился таким: b294b483-8654-47f6-8dc0-c7c4c6f0a66e):

user@myhost:~> VBoxManage createvdi -filename "WinXP.vdi" -size 20000

- Назначаем общие параметры для виртуальной машины:

user@myhost:~> VBoxManage modifyvm WinXP --ostype WindowsXP --memory 512 --pae on --audio alsa --vram 128

Здесь прокомментирую поподробней все параметры:

ostype – тип гостевой операционной системы, все поддерживаемые типы  можно посмотреть командой

user@myhost:~> VBoxManage list ostypes

memory – количество оперативной памяти

audio – устройство для вывода звука

vram – количество виртуальной видео памяти

Список всех остальных параметров можно узнать, если выполнить команду:

user@myhost:~> VBoxManage modifyvm

- Создаем новый IDE контроллер для виртуальной машины:

user@myhost:~> VBoxManage storagectl WinXP --name IDE0 --add ide

- Добавляем жесткий диск к контроллеру:

user@myhost:~> VBoxManage storageattach WinXP --storagectl IDE0 --port 0 --device 0  --type hdd --medium b294b483-8654-47f6-8dc0-c7c4c6f0a66e

- Теперь добавим образ ISO, с которого будем ставить систему

user@myhost:~> VBoxManage storageattach WinXP --storagectl "IDE0" --port 1 --device 0 --type dvddrive --medium "/path/to/iso/winxp-pro-sp3.iso"

- Подключяем машину бриджем, чтобы была доступна как обычный хост

user@myhost:~> VBoxManage modifyvm WinXP --nic1 bridged --bridgeadapter1 eth0 --cableconnected1 on
В принципе, если не нужен доступ к машине напрямую из вне, то можете подключать ее под NAT'ом. Но я все-таки рекомендую подключить ее именно так, для удобства управления.
- Сообщаем ей, что грузится надо с ДВД привода:

user@myhost:~> VBoxManage modifyvm WinXP --boot1 dvd

- Включаем RDP, чтобы можно было удаленно управлять процессом установки:

user@myhost:~> VBoxManage modifyvm WinXP --vrdp on --vrdpport 4000

- Запускаем в screen’e:

user@myhost:~> screen –RD VBOX

user@myhost:~> VBoxHeadless -startvm WinXP

Все! Установка и настройка завершена, теперь откройте порт 4000 в файрволле, подключайтесь к машине и начинайте установку ОС, в данном случае Windows. Хочется добавить, что интерфейс RDP немного кривоват и глючила мышка, наверное, от слишком большого разрешения на моем мониторе, но после установки системы, я разрешил удаленное управление в Windows и теперь напрямик попадаю в систему по RDP, не используя реализацию от VirtualBox. В конечном счете получился просто удаленный компьютер с Windows XP на борту, ничем не отличающийся от обычной машины. Не забудьте добавить пользователя в группу vboxusers.

Да кстати, отключить машину(жестко) можно командой:

user@myhost:~> VBoxManage controlvm WinXP poweroff

или эмулировать нажатие power button:

user@myhost:~> VBoxManage controlvm WinXP acpipowerbutton

VBoxManage --help и чтение документации поможет разобраться вам с остальными тонкостями настройки виртуальной машины, например, такими как подключение 3D рендеринга и аппаратной виртуализации.

Поздравляю всех с первым днем осени! :)

]]>
http://sapfeer.ru/2010/09/01/673/feed 2
Антивирус для openSUSE http://sapfeer.ru/2010/04/02/601 http://sapfeer.ru/2010/04/02/601#comments Fri, 02 Apr 2010 06:17:53 +0000 SuSEuser http://sapfeer.ru/?p=601 Avira - антивирус для openSUSE Поскольку я учусь на компьютерной безопасности, то хочу пора бы затронуть эту тему и рассказать об антивирусе. Да, об антивирусе, как это не странно звучит. Многие думают, что раз они пользуются линуксом, то они защищены от вирусов. Это глубокое заблуждение! Уже сейчас известно около сотни вирусов для линукса. А сколько руткитов? Эксплоитов? Ведь отсутствие вирусов для линукса не достижение разработчиков... Их нет, только потому, что писать вирусы для линукса не выгодно. Как только линукс станет достаточно распространненым вирусы не заставят себя ждать. Но, мы не будем дожидаться этого момента! :) Пора все-таки задуматься о безопасности и установить хоть какой-нибудь из антивирусов для вашей системы. Для начала я предлагаю остановится на Avira Antivir. Тем более, что для openSUSE он идет прямо в стандартном репозитории.
Устанавливаем:

user@notebook:~> sudo zypper install antivir

После установки, вам необходимо обновить антивирусные базы, хотя у avir'ы есть GUI я предпочел делать это через консоль:

sudo antivir --update

Если, вдруг, avira выдает вам ошибку, что лицензия устарела, то вам нужно сделать следущее:
1) Перейти по адрес http://www.freeav.com/ru/download/download_servers.php
2) Скачать ключ ("Файл лицензии для Avira AntiVir Personal")
3) Скаченный ключ положить в каталог /usr/lib/AntiVir/ , заменив при этом тот ключ, который там уже имелся.

Можно запустить GUI версию Avira:

su -c antivir

Настроек у антивирусного сканера не много, поэтому не вижу смысла их описывать, тем более они стандартные для каждого антивируса. В на этом установка завершена и вы можете использовать Avir'у как сканер. К сожалению, данная лицензия не позволяет использовать avir'у как демон для server'a. Раньше можно было запросить лицензию зарегестрировавшись у них на сайте, сейчас видимо, эту возможность прикрыли. Однако можно попробовать взять триальный ключ или запустить avir'у в режиме workstation. Для этого нужно:
1) Отредактировать /etc/avguard.conf и расскомментировать следующие строчки:

GuiSupport yes
GuiCAFile /usr/lib/AntiVir/gui/cert/cacert.pem
GuiCertFile /usr/lib/AntiVir/gui/cert/server.pem
GuiCertPass antivir_default

Желательно сгенерировать свои ключи, вместо дефолтных
2) Отредактировать /etc/sysconfing/antivir:

AVGUARD_TYPE="workstation"

3) Запустить демон:

/etc/init.d/avguard start

Взаимодействие с GUI у авиры происходит через сеть, это конечно неудобно и медленно, но хотя бы так :)
И, напоследок - всегда помните и будьте уверены в своей безопасности!

]]>
http://sapfeer.ru/2010/04/02/601/feed 5
После долгого перерыва http://sapfeer.ru/2010/03/29/575 http://sapfeer.ru/2010/03/29/575#comments Mon, 29 Mar 2010 06:57:37 +0000 Сергей http://sapfeer.ru/?p=575 Долго не писал в блог. Но мне постоянно пишут люди, приходят отзывы, и я начинаю понимать, что та информация, которую я тут выкладываю просто для себя многим полезна, важна... Не всегда получается все описать, охватить, иногда банально не хватает времени сесть и написать даже маленький. Пост, но.. Все же я не брошу этот блог, буду продолжать писать различные статейки, выкладывать новости. Хочу уйти в отпуск :)

]]>
http://sapfeer.ru/2010/03/29/575/feed 0
Модуль limitipconn для apache http://sapfeer.ru/2010/02/15/570 http://sapfeer.ru/2010/02/15/570#comments Mon, 15 Feb 2010 06:59:57 +0000 Сергей http://sapfeer.ru/570/ Все-таки я нашел время чтобы написать в блог, сегодня хочу сделать небольшую заметку о том. как ограничить себя от умников, которые практикуются в DOS на apache. Генерируется огромное количество запросов с 1го айпи, которые заставляет apache отфутболивать лигитимных пользователей. Конечно, можно с этим бороться и в файрволле, но как мне кажется - наиболее разумным решением будет использование возможностей самого apache. Я сразу же нашел в интернете специальный модуль, ограничивающий подключение к apache по ip. Он называется mod_limitipconn. Конечно, готовый RPM есть уже для openSUSE(прим. спасибо родному BuildService). Практически все модули вы сможете найти здесь:
http://download.opensuse.org/repositories/Apache:/Modules/. Добавляем репозиторий для вашего дистрибутива и устанавливаем пакет:

user@linuxserver:~> zypper install apache2-mod_limitipconn

После установки подключаем его к apache:

user@linuxserver:~> a2enmod mod_limitipconn

Ну и заключительный шаг - добавляем его в apache, модуль limitipconn привязывается к определенному виртуальному хосту и позволяет ограничить доступ к любой части вашего сайта. Вот пример подключения:


# Относительный путь от корня сайта
MaxConnPerIP 8 # Количество максимальных подключений с одного айпи
NoIPLimit image/* # Снимаем ограничение на загрузку изображений


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

]]>
http://sapfeer.ru/2010/02/15/570/feed 0
Полезный и интересный скрипт http://sapfeer.ru/2009/12/16/533 http://sapfeer.ru/2009/12/16/533#comments Wed, 16 Dec 2009 00:04:58 +0000 Сергей http://sapfeer.ru/?p=533 Нашел на suseblog.com интересный скрипт, который показывает различную информацию о системе. Мне эта штука понравилась и я ее перевел на русский язык, вот пример работы скрипта на моем ноутбуке:

пример работы скрипта

пример работы скрипта

Сам скрипт можно скачать по этой ссылке.

]]>
http://sapfeer.ru/2009/12/16/533/feed 5
Измерение скорости между двумя компьютерами http://sapfeer.ru/2009/12/08/524 http://sapfeer.ru/2009/12/08/524#comments Tue, 08 Dec 2009 14:31:12 +0000 Сергей http://sapfeer.ru/?p=524 Здравствуйте, давно не писал в блог. Работа и личная жизнь, словом о покое пришлось забыть, вот выкроил минутку, написать небольшую заметку об интересной программе iperf. Понадобилось мне узнать реальную пропускную способность роутера asus-wl520g. Вобщем, как оказалось, в конце пропускная способность этого роутера оказалась очень низкой, порядка 2,4 мб/с и от его использования пришлось отказаться. Но пишу я не об этом, а об измерении скорости.

Берем и устанавливаем прекрасную чудо-программку iperf:
one_click_install
OpenSUSE 11.2

one_click_install
OpenSUSE 11.1

one_click_install
OpenSUSE 11.0

После установки на оба компьютера сразу же приступаем к измерению скорости. Процесс этот не занимает, в принципе, много времени. Запускаем на первом компьютере ее как сервер:
user@linuxserver:~> /etc/init.d/iperf start
Starting iperf done

Как вы сразу могли заметить, программу можно(нужно) запускать от непривилегированного пользователя. Сейчас данный компьютер выступает сервером. Смотрим на каком порту запустилась программа:
_empty@linuxserver:~> netstat -nlp 2> /dev/null | grep iperf
tcp 0 0 0.0.0.0:12423 0.0.0.0:* LISTEN 20849/iperf

Теперь на втором компьютере запускаем:
user@linux-xzvk:~> iperf -c 10.49.42.225 -p 12423
------------------------------------------------------------
Client connecting to 10.49.42.225, TCP port 12423
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 10.49.42.195 port 35030 connected with 10.49.42.225 port 12423
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 104 MBytes 87.2 Mbits/sec


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

Напоследок хочется еще сказать, что утилита поддерживает множество различных видов измерений:
- скорость передачи по TCP протоколу
- скорость передачи по UDP протоколу
- скорость передачи по IPv6

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

После измерения программу можно удалить. Хочу поблагодарить разработчиков за простую и полезную программу.

]]>
http://sapfeer.ru/2009/12/08/524/feed 0
Сайт фотографий ульяновска http://sapfeer.ru/2009/10/11/345 http://sapfeer.ru/2009/10/11/345#comments Sun, 11 Oct 2009 11:14:11 +0000 Сергей http://sapfeer.ru/?p=345 Сегодня в интернете наткнулся на очень интересный фотосайт о моем городе - www.ulskfoto.ru. Фотографии моего родного ульяновска. Насколько я понял - проект только начал свою работу, но уже имеет немалое количество фотографий. На сайте есть фотографии обоих мостов, районов области, улиц и много многого другого. А так же возможность добавления своих фотографий на сайт. Советую всем посетить! :)

]]>
http://sapfeer.ru/2009/10/11/345/feed 0
Красивые обои для вашей openSUSE http://sapfeer.ru/2009/10/02/252 http://sapfeer.ru/2009/10/02/252#comments Fri, 02 Oct 2009 09:10:07 +0000 Сергей http://sapfeer.ru/?p=252 Несомненно, дистрибутив openSUSE является одним из самых красивых linux-дистрибутивов. Artwork в нем всегда располагает к себе пользователя. Огромное число обоев, тем, хаков сделано в зеленом стиле хамелеона openSUSE. Думаю, в этом большая заслуга дизайнеров, помогающих проекту SuSE. Сегодня хочу показать небольшую подборку обоев для рабочего стола от себя:

VistaWallpaper tux_msn

tux2 linuxgnu1600

gearsoflinux1600 dr_evil

cpucube1600 wallpaper1

linuxcpu1600 Linux 1600-824211

img-wallpapers-linux-vs-vista-rastakouere-11774 linuxcds1920

linuxsrv1920

]]>
http://sapfeer.ru/2009/10/02/252/feed 2
Как создать простой виджет в WordPress http://sapfeer.ru/2009/09/27/212 http://sapfeer.ru/2009/09/27/212#comments Sat, 26 Sep 2009 22:00:03 +0000 Сергей http://sapfeer.ru/?p=212 Как создать простой виджет в WordPress

Недавно возникла необходимость создать собственный виджет для WordPress'a. В рунете снова не нашлось понятной и четкой инфы по этому вопросу. Хочу сегодня от и до расписать процесс создания плагина с виджетом. Естественно при написании требуются знания html/php, ну и хотя бы малейшее представление о API WordPress.
1) И так, создаем файл с именем плагина first_widget.php в папке wp-contents/plugins/

2) Помещаем в заголовок стандартный код комментариев с описанием плагина(Думаю тут комментарии излишни, вам же нужен виджет, а не тщеславие!):

<?php
/*
Plugin Name: WP_widget
Description: Your First WP widget
Version: 1.0
Author: Your name.
Author URI: http://sapfeer.ru
*/

2) После этого создадим 2 функции, одна из них будет отвечать за вывод самого плагина, а вторая за управление плагином:

function first_wp_widget($args) {
    extract($args);                                  //Извлечение аргументов
    $title=get_option('first_widget_title'); //Получаем значение опции first_widget_title
    echo $before_widget;                       // --> начало вывода widget'a
    echo $before_title;                            // --> начало вывода заголовка widget'a
    echo (empty($title)? 'Set title please!' : $title); //Вывод заголовка widget'a
    echo $after_title;                               // --> конец вывода заголовка widget'a
    echo 'My First WP Widget :)';            // --> вывод основного html текста widget'a
    echo $after_widget;                          // --> конец вывода widget'a
}

Функция управления:

function first_wp_widget_control() {
    if (!empty($_REQUEST['first_widget_title'])) { 
        update_option('first_widget_title', $_REQUEST['first_widget_title']);       //Обновляем заголовок виджета
    }
 /*Вывод поля для имени виджета */
   echo 'Widget\'s title:<br>
<input style="width:200px;" type="text" name="first_widget_title" value="'.get_option('first_widget_title').'" /><br />';
}

В принципе, функциональность плагина определяется именно этими 2мя функциями. Здесь же, хочу сделать несколько заметок по поводу этих функций. Название любой опции для плагина должно быть строго уникальным! Иначе может произойти путаница с другими плагинами. Так же в функции управления виджетом не нужно создавать форму. Все опции виджетов в админ панели физически находятся на одной форме. Поэтому достаточно указать лишь нужный вам элемент(textbox, radio, select и т.д.). Ну и, конечно, обязательно старайтесь контролировать значения ваших опций.

3) А теперь необходимо интегрировать наш виджет в вордпресс:

    register_sidebar_widget('First WP Widget', 'first_wp_widget'); //регистрируем виджет
    register_widget_control('First WP Widget', 'first_wp_widget_control' ); //регистрируем элемент управления виджетом

4) И, наконец, не забудьте закрывающий тег для php скрипта:

?>

5) Все новый плагин готов, можете активировать его в настройках. Не забудьте добавить его на Sidebar и установить название заголовка.


Исходный код плагина можно скачать так же по ссылке first_widget.php.zip

]]>
http://sapfeer.ru/2009/09/27/212/feed 2