29.10.09

KDE 4 на нетбуке Asus eee 701

Несмотря на все заверения злопыхателей о том что якобы KDE 4 не нужен, я все таки решил поставить его на свой нетбук.
С KDE кстати связано начало пути в мире Линукс, именно с интерфейса KDE 3 включённого по умолчанию в дистрибутив Mandrake (который позже стал частью дистрибутива Mandriva) который принёс мне мой друг, началось моё знакомство с миром Линукс. Гном на тот момент мне совсем не понравился и я упорно ставил себе KDE на последующих дистрибутивах (даже на тех где по умолчанию идет Gnome, например на Fedora). Но в итоге все же я перешёл на Gnome потому что под ним наиболее органично работал, на тот момент, Compiz. Потом я все же пытался вернуться обратно на KDE, но все таки полностью вернуться на него мне по разным причинам не удавалось.
И вот теперь я поставил на нетбук версию 4.3.2 из репозитария rawhide. Для того что бы KDE достаточно органично встал на заточенный изначально на Gnome дистрибутив я решил удалить все пакеты которые не нужны для нормального функционирования голой консоли и сетевых интерфейсов на нетбуке, и только потом проинсталировал его с помощью команды:
#yum install kdebase

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




Включив графические эффекты, я убедился что нетбук работает шустро, не тормозит, встроеные приложения , веб-браузер konqueror, просмотрщик okular и интернет пейджер Kopete запускаются и работают шустро, что мне вообщем-то от нетбука и нужно. Порадовало также то что сама система запускаться за считанные секунды: заслуга сообщества в работе по ускорению загрузки и работы системы в целом дает о себе знать с каждым релизом.
В целом считаю KDE системой приспособленной даже для таких маломощных компьютеров как Asus eee 701 и достойной заменой Gnome и на основной рабочей станции.

28.10.09

Включение автологина в Gnome GDM

В GDM второй версии не входит утилита для редактирования параметров этого самого GDM поэтому, что бы включить ту или иную функцию для него приходиться лезть в конфиг демона... Надеюсь когда нибудь будет написан конфигуратор для него, но пока скажу как сделать автологин для конкретного пользователя. Под root или sudo c помошью вашего редактора откройте файл /etc/gdm/custom.conf и добавьте следующие строки:
[daemon]
AutomaticLoginEnable=true
AutomaticLogin=username
Где для директивы AutomaticLogin укажите имя пользователя которому следует разрешить автовход в систему. Если же требеться вход пользователя только через определенный период времени то следует добавить другие директивы:
[daemon]
TimedLoginEnable=true
TimedLogin=username
TimedLoginDelay=60
Где для TimedLogin это также пользователь которому разрешен вход по задержке, а для TimedLoginDelay время задержки в секундах.

25.10.09

Создание клиент-сервер OpenVPN соединения с аутентификацией по сертификату.

Достаточно быстрый способ создания сервера, и соединения клиента с помощью NetworkManager. Я использую OpenVPN для соединения со своими серверами, и с машин под управлением Windows и Linux, что очень удобно, также данный VPN передерживается NetworkManager что облегчает его быструю настройку на Linux.

Создание туннеля OpenVPN с аутентификацией пользователей с помощью сертификатов.

Сначала установим openvpn с репозиториев на сервер:
#yum install openvpn

после установки создадим ключи для сервера и клиентов, для этого в составе пакета есть группа скриптов, которая устанавливается в /usr/share/openvpn. Скопируем оттуда каталог easy-rsa в домашнюю директорию ~ :
#cp -r /usr/share/openvpn/easy-rsa ~/

В получившемся каталоге easy-rsa будет два каталога 1.0 и 2.0, нам нужен 2.0. Вторая версия скриптов easy-rsa. В каталоге следует поправить файл vars, в котором задайте ваши данные для директив:

export KEY_COUNTRY="RU"
export KEY_PROVINCE="PROVINCE"
export KEY_CITY="City"
export KEY_ORG="Organisation"
export KEY_EMAIL="mail@mail.com"


По умолчанию скрипт генерирует все сертификаты в каталог ./key можно оставить так. Но лучше мы будем генерировать ключи прямо в каталог openvpn, что бы не пришлось возиться с обновлением файлов после того как будем добавлять новых пользователей.  Укажем другой каталог файле vars директива KEY_DIR:
export KEY_DIR="/etc/openvpn/keys/"

Создадим каталог для наших ключей keys:
#mkdir /etc/openvpn/keys/

Укажем скриптам что брать настройки следует из vars:
#source ./vars
#./clean-all

Генерируем сертификаты для серверной части. Первый будет ca сертификат:
#./build-ca
Generating a 1024 bit RSA private key
......++++++
............++++++
writing new private key to 'ca.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [RU]:
State or Province Name (full name) [PROVINCE]:
Locality Name (eg, city) [City]:
Organization Name (eg, company) [Organisation]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [Organisation CA]:
Name []:
Email Address [mail@mail.com]:

Запускаем генерацию ключа (вместо server вставьте свои данные):

#./build-key-server server
Generating a 1024 bit RSA private key
............................++++++
..............................................++++++
writing new private key to 'server.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [RU]:
State or Province Name (full name) [PROVINCE]:
Locality Name (eg, city) [City]:
Organization Name (eg, company) [Organisation]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [server]:
Name []:
Email Address [mail@mail.com]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:passwd
An optional company name []:
Using configuration from /root/easy-rsa/2.0/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'RU'
stateOrProvinceName :PRINTABLE:'PROVINCE'
localityName :PRINTABLE:'City'
organizationName :PRINTABLE:'Organisation'
commonName :PRINTABLE:'server'
emailAddress :IA5STRING:'mail@mail.com'
Certificate is to be certified until Oct 23 12:59:41 2019 GMT (3650 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

Теперь нужно сгенерировать ключ Диффи-Хелмана для защиты обмена ключами:
#./build-dh
Generating DH parameters, 1024 bit long safe prime, generator 2
This is going to take a long time
.......................................................................+.........................................++*++*++*
В итоге в каталоге keys должно получиться примерно следующее:
-rw-r--r-- 1 root root 3883 2009-10-25 15:59 00.pem
-rw-r--r-- 1 root root 3766 2009-10-25 16:02 01.pem
-rw-r--r-- 1 root root 1233 2009-10-25 15:54 ca.crt
-rw------- 1 root root 887 2009-10-25 15:54 ca.key
-rw-r--r-- 1 root root 245 2009-10-25 16:06 dh1024.pem
-rw-r--r-- 1 root root 210 2009-10-25 16:02 index.txt
-rw-r--r-- 1 root root 20 2009-10-25 16:02 index.txt.attr
-rw-r--r-- 1 root root 21 2009-10-25 15:59 index.txt.attr.old
-rw-r--r-- 1 root root 105 2009-10-25 15:59 index.txt.old
-rw-r--r-- 1 root root 3 2009-10-25 16:02 serial
-rw-r--r-- 1 root root 3 2009-10-25 15:59 serial.old
-rw-r--r-- 1 root root 3883 2009-10-25 15:59 server.crt
-rw-r--r-- 1 root root 700 2009-10-25 15:59 server.csr
-rw------- 1 root root 887 2009-10-25 15:59 server.key

Теперь что касается клиентов создаём клиентские ключи подобным образом (вместо client вставьте свои данные). Сгенерируйте ключи для всех пользователей вашей сети, которым нужен будет доступ по VPN:
#./build-key client
Generating a 1024 bit RSA private key
.++++++
............................++++++
writing new private key to 'client.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [RU]:
State or Province Name (full name) [PROVINCE]:
Locality Name (eg, city) [City]:
Organization Name (eg, company) [Organisation]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [client]:
Name []:
Email Address [mail@mail.com]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:passwd
An optional company name []:
Using configuration from /root/easy-rsa/2.0/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'RU'
stateOrProvinceName :PRINTABLE:'PROVINCE'
localityName :PRINTABLE:'City'
organizationName :PRINTABLE:'Organisation'
commonName :PRINTABLE:'client'
emailAddress :IA5STRING:'mail@mail.com'
Certificate is to be certified until Oct 23 13:02:29 2019 GMT (3650 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated



Теперь притупим к конфигурированию непосредственно сервера. В каталоге /usr/share/doc/openvpn-2.1/sample-config-files/ есть примеры конфигурационных файлов, нам нужен оттуда файл server.conf. Скопируем его в каталог конфигураций openvpn:
#cp /usr/share/doc/openvpn-2.1/sample-config-files/server.conf /etc/openvpn/

Изменим некоторые директивы конфига под наши нужды. Укажем порт который будет слушать openvpn:
port 1194

Протокол передачи данных (Можно tcp или udp):

proto udp

Виртуальный интерфейс который будет использовать openvpn
dev tun0


Укажем виртуальную сеть которую будет использовать openvpn:
server 10.8.0.0 255.255.255.0

Укажем лог файл и его уровень для отладки:
status openvpn-status.log
log openvpn.log
log-append openvpn.log
verb 3

Все на этом заканчиваем с настройками сервера, запускаем службу:
#/etc/init.d/openvpn start
И укажем их местонахождение в конфиге сервера с помощью директив:
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh1024.pem


Если все в норме в логе будут несколько информативных сообщений, заканчивающихся сообщением Initialization Sequence Completed.
Теперь очередь за клиентом. Скопируем с помощью носителя ключи client.crt, client.key, dh1024.pem, ca.crt из папки ~/easy-rsa/2.0/keys в папку клиента ~/.keys.
Для соединения с сетью я рекомендую использовать NetworkManager (идёт по умолчанию в Fedora). Данная система позволяет настраивать множество различных типов сетевых соединений без использования root и заносить настройки с помощью однотипных графических форм.
Для того что бы NetworkManager умел работать с OpenVPN нужно установить для него плагин из репозитариев:
#yum install NetworkManager-openvpn

После того, как плагин установиться вызовем утилиту настроек сетевых соединений в меню Система\Параметры\Сетевые соединения. Откроется нижеследующее окно:

Нажав кнопку добавить, вызовем визард VPN, в ниспадающем меню которого выберем OpenVPN:

Нажатие на кнопку Create... откроет форму в которую занесем данные о наших сертификатах. Если надо поставим галочку подключаться автоматически:


Указываем имя соединения, адрес сервера в поле Шлюз, в ниспадающем меню указываем тип соединения Сертификаты (TSL), в поле сертификат выбираем client.crt, в поле Сертификат CA указываем ca.crt, в поле личный ключ - client.key и наконец в поле пароль личного ключа вносим пароль который мы вводили при генерации ключа клиента. Если вы выбрали протокол tcp в настройках сервера то, клиенту следует указать использовать tcp, щёлкнув на кнопке Дополнительно... и поставив соответственную галку:

Все, подтверждаем наши настройки поклацав на соответствующие кнопки.
Для активации VPN щёлкните на апплете сетевых соединений. В выпавшем меню выбираем: Соединения VPN\"Имя нашего соединения" и если все настроено правильно появиться уведомление о подключении к сети. Что бы получить доступ к подсети, а не только к самому серверу, через этот VPN, необходимо включить маршрутизацию пакетов на сервере выполнив:
#echo "1" > /proc/sys/net/ipv4/ip_forward
А так же настроить iptables для того что бы он NATил пакеты из VPN. В комплекте с пакетом для этих целей идёт скрипт который облегчает эту задачу. Найдёте его по пути: /usr/share/doc/openvpn-2.1/sample-config-files/firewall.sh. Данная система позволяет также соединяться по VPN машинам под управлением Windows для чего есть соответствующий пакет на официальном сайте.
 Отозвать сертификат можно скриптом  revoke-full из каталога easy-rsa:
./revoke-full client

20.10.09

Fedora 12 beta доступна

Вышел очередной пре-релиз Fedora 12 Beta. В данный момент скачиваю ее, после установки поделюсь впечатлениями.

19.10.09

Вопросы к участникам Russian Fedora

Просим всех кто интересуется Fedora вообще и Russian Fedora в частности, задавать вопросы к непосредственно участникам проекта Russian Fedora.
"Возникла идея, которая заключается в том, чтобы реализовать jabber-конференцию с участниками проекта Russian Fedora. Конференция в прямом смысле этого слова, которая будет проходить в форме вопрос-ответ. У каждого участника данного мероприятия, будет возможность пообщаться на прямую с людьми, которые занимаются сборкой respin'a Russian Fedora Remix, с людьми, которые отвечают за локализацию и переводы, документацию, распространение дисков и принимают непосредственное участие в развитии проекта. Добавить замечания или просто поделиться своими мыслями по поводу организации конференции, уточнения деталей, можно в соотвествующей теме на форуме проекта.

Хотел бы отметить, что ранее подобных мероприятий не проводилось, поэтому, если реализовать задуманное, должно получиться довольно интересно. Несмотря на обширность и масштабы мировой сети — интернет, некоторые подробности не узнать из статей и подобных материалов, поэтому намного приятнее услышать/прочитать эксклюзивную информацию от первых лиц. Участники сообщества RFRemix с удовольствием ответят на все, интересующие вас, вопросы и поделятся планами проекта на ближайшее будущее.

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

Взято здесь

18.10.09

Group an tab Windows

Видео: Результат работы compiz плагина "Group an tab Windows"

Видео и скриншоты в блоге

Добавил виджеты блога для помещения в болг видео и скриншотов. Видео снимаю с помошью замечательной утилиты gtk-recordMyDesktop:


Виджет видео убрал нафиг, вместо моего канала показывает каких то репаков и боксёров, хотя явно указываю канал и тег.

Проверка системы

Во время чтения мануала про RPM вот здесь, решил проверить систему на наличие ошибок с помощью команды rpm -Va. В результате нашёл немало ошибок в системе. Ошибки выводятся следующим образом:
# rpm -Va

.M....G.. /var/log/gdm
.M....... /var/run/gdm
S.5....T. c /etc/dnsmasq.conf

В первом столбце найденные не соответствия файлов с данными в пакете, в мане нашел расшифровку:

S размер (Size) файла отличается
M режим (Mode) доступа отличается (включая права доступа и тип файла)
5 отличается контрольная MD5 сумма
D отличается старший/младший номер файла устройства (Device)
L отличается путь ссылки при readLink(2)
U отличается владелец (User)
G отличается групповое владение (Group)
T отличается время изменения (mTime)

Соответственно те пакеты которые содержали критичные ошибки исправил переустановкой:
yum reinstall gdm

Если неясно какой файл какому пакету принадлежит, делал запрос через тот же RPM. К примеру:

вывод rmp -Va:
S.?...... /usr/bin/MPEG4Gen
prelink: /usr/bin/SVGGen: at least one of file's dependencies has changed since prelinking

запрос в какой пакет входит файл:
#rpm -qf /usr/bin/MPEG4Gen
gpac-0.4.5-7.fc11.i586

Ну и переустановка пакета
yum reinstall gpac

И так все ошибочные пакеты. В результате у меня излечилось несколько непонятых багов с некоторыми программами. Данные ошибки получились в результате не очень удачного обновления с 8 версии на 9, что показательно даже с такой не очень маленькой кучей ошибок система работала стабильно, и баги были весьма незначительны.

10.10.09

Некоторый обзор некоторых видеопроигрывателей в Fedora 11

Когда то давным давно GNU\Linux был операционной системой для ограниченного круга любителей этой системы, и видео проигрывателей и кодеков к ним было немного и они работали не со всем форматами файлов. Но время идёт и Linux развивается и теперь на нем доступно множество разномастных проигрывателей с различной направленностью и функционалом.
На своём домашнем компьютере я использую три основных проигрывателя, которые полностью удовлетворяют мои скромные потребности по просмотру видео файлов в кругу семьи. Возможно на взыскательный взгляд они ограниченны по сравнению со своими пропроитарными собратьями, но мне как простому пользователю видео файлов вполне подходят все три. Итак

Три видео проигрывателя для Fedora Linux 11

Начиная с 7 версии Fedora проигрыватель totem все больше интегрировался в gnome и в систему Fedora. Этот видео проигрыватель очень прост в использовании имеет простой, если не сказать примитивный интерфейс и некоторое количество настроек (в соответствии с политикой Gnome - не нагружать пользователя кучей различных опций) позволяющих, некоторым образом, подогнать его под свой вкус. В Gnome данный видео проигрыватель вызывается из главного меню выбором пункта "Видеопроигрыватель" в "Приложениях>Аудио и видео".




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





В настройках данного проигрывателя есть немного опций для настройки проигрывания. Всего существует три закладки в окне настроек проигрывателя:


"Общие" где можно выбрать тип соединения с сетью, шрифт субтитров и их кодировку (которых передерживается достаточно много);


"Показ" где можно выбрать тип и размер визуализации при проигрывании музыки, а также подогнать цветовую и световую гамму изображения (с помощью движка оттенок можно изменять цветовую гамму фильма, что следовало делать мне пару раз после обновления фраймворка gstreamer, когда цвет изображения стал как будто инвертирован);



И на закладке "Аудио" можно выбрать вывод звука для фильма. Вот вообще то все настройки которые доступны пользователю.
Дополнительно для данного проигрывателя есть некоторое количество плагинов которые несколько расширяют существующий функционал, их можно включить в соответствующем меню, которое вызывается щелчком по пункту "Модули..." в пункте основного меню проигрывателя "правка".
Данный проигрыватель хорош в своей простоте, также интеграция его во все что можно в гноме делает его достаточно универсальным и удобным. Установить его можно командой
#yum install totem totem-gstreamer

Дополнительно можно установить несколько плагинов для него доступных из репозитория Fedora:
#yum install totem-mythtv totem-nautilus totem-xine totem-youtube totem-publish totem-jamendo

Также можно поставить плагин для Firefox для проигрывания видеофайлов в сети Интернет:
#yum install totem-mozplugin

Продолжение следует.

Шутка от создателей Gnome.

Апплет для панели Gnome "Рыбка"

Шутка конечно довольно старая но все же не многие о ней знают. Среди разнообразных апплетов для рабочего стола Gnome есть небольшой апплет который называется "Рыбка".
После добавления апплета на панель можно посмотреть описание к нему. А также можно заставить апплет исполнять какую нибудь полезную функцию, например вывод всех процессов ps -A или статистику памяти free или любую другую команду какую вам подскажет ваша фантазия.

Популярные сообщения