пятница, 18 сентября 2009 г.

Установка и настройка PostgreSQL на FreeBSD

Образовалась задача, поставить PostgreSQL на FreeBSD, а так как до этого я не сталкивался с PostgreSQL на FreeBSD да и вообще с PostgreSQL (раньше только с MySQL дружил, а с ним и под FreeBSD дружить просто когда знаешь что и где крутить), то пришлось многое прочитать и понять в короткие сроки.
Данный пост пишу в качестве руководства для дальнейшей работы ибо подозреваю что придется поставить еще пару таких-же серверов.
Итак установка.


в консоль пишем
# whereis postgresql82-server

получаем ответ
/usr/ports/database/postgresql82-server/

соответственно следующие команды
# cd /usr/ports/database/postgresql82-server/
# make config
# make install clean

после установки меняем пароль для пользователя pgsql
# passwd pgsql

теперь прикручиваем PostgreSQL в автозагрузку в файле /etc/rc.conf
postgresql_enable="YES"
postgresql_class="postgres"

после этого инициализируем кластер
# /usr/local/etc/rc.d/postgresql initdb

стартуем базу от пользователя pgsql
# su pgsql
$ /usr/local/etc/rc.d/postgresql start

подключаемся к PostgreSQL
$ psql template1

создаем пользователя
CREATE USER новый_пользователь WITH CREATEDB LOGIN PASSWORD 'его_пароль';

выходим и останавливаем PostgreSQL
Ctrl+D
$ /usr/local/etc/rc.d/postgresql stop

меняем доступ к базе данных в файле /var/pgsql/data/pg_hba.conf меняем true на password в следующих строках
local all all password
host all all 127.0.0.1/32 password

приступаем к работе
$ /usr/local/etc/rc.d/postgresql start

для удобного администрирования использую phpPgAdmn

P.S. Возможно пост еще будет редактироваться...
При копировании материалов
ссылка на источник обязательна!


Читать дальше...

воскресенье, 30 августа 2009 г.

Пересборка ядра и pppd для включения поддержки mppe/mppc на примере Ubuntu 8.04

Понадобилось мне установить подключение по PPPoE c mppe/mppc оказалось что в GNU/Linux по умолчанию нет поддержки mppe/mppc, а с версии ядра 2.6.15 только mppc. Достал бубен и начались ритуальные танцы. После шаманских действий все заработало. Здесь опишу основные заклинания для включения поддержки данного протокола, а настройку подключения PPPoE для GNU/Linux опишу в другой статье.
Итак приступим.

Ставим пакеты:
# apt-get install linux-source build-essential kernel-package libncurses5-dev fakeroot msort-gui pkg-config

Переходим в каталог с исходниками
# cd /usr/src

и распаковываем ядро
# tar -jxvf linux-source-2.6.XX.tar.bz2

переходим в каталог с исходником ядра
# cd ./linux-source-2.6.XX

для использования опций включенных в текущее ядро копируем конфиг
# cp /boot/config-`uname -r` ./.config

берем патч для соответствуещей версии ядра
распаковываем его в каталог
/usr/src/linux-source-2.6.XX

и накладываем командой
# patch -p1 < ptch_file_name

Теперь можно приступать к конфигурированию
# make menuconfig

Указываем какой конфиг использовать
Load an Alternate Configuration File

находим строку похожую на
microsoft compression/encription (NEW)

отмечаем его и в случае надобности нужные вам опции и сохраняем полученный конфиг
Save an Alternate Configuration File

Собираем и ставим новое ядро командами
# make-kpkg clean
# fakeroot make-kpkg --initrd --append-to-version=-new.version kernel_image kernel_headers
# cd /usr/src
# dpkg -i linux-image-2.6.*.deb linux-headers-2.6.*.deb

Перегружаемся с новым ядром для проверки его работоспособности.
Если все прошло удачно то нужно пересобрать pppd.
Для этого качаем патч для pppd и исходник pppd. Распаковываем и из каталога с распакованным pppd команды
# patch -p1 < ptch_file_name
# ./configure
# make
# make install

настраиваем соединение и наслаждаемся серфингом.
При копировании материалов
ссылка на источник обязательна!


Читать дальше...

вторник, 11 августа 2009 г.

Настройка сервера доступа на FreeBSD (PPPOE + FREERADIUS)

Итак описываю ситуацию при которой мне впервые пришлось столкнуться с FreeBSD. После переезда в другой город(больше в 5 раз) пришел я устраиваться на работу к одному ISP меня взяли с испытательным сроком в 1 месяц и дали тестовое задание поднять NAS на FreeBSD. Его установку и настройку я опишу.

Дали мне машинку с CD приводом HDD 6.5Gb
1 CD FreeBSD 7.0 и доступ в интернет по внутренней сети.

Немного погуглил и прочитав про возможные подводные камни начал установку. Саму установку описывать нет смысла так как все предельно ясно.
Система установлена можно приниматься за работу.
# whereis pppoed
pppoed: /usr/libexec/pppoed

и мы увидим уже установленный демон PPPOE
Настроим его, для этого в файлах
/etc/ppp/ppp.conf

pppoe-in:
 set login
 allow mode direct
 set mru 1492
 set mtu 1492
 set speed sync
 set log Phase Chat LCP IPCP CCP tun command chap
 disable eap pap chap chap81
 enable lqr
 enable MSCHAPv2
 set timeout 0
 set ifaddr 10.0.0.1 10.0.0.2-254
 set dns 192.168.1.1 4.2.2.2
 accept dns


/etc/ppp/ppp.secret

USERNAME PASSWORD * * *


где USERNAME это имя тестового пользователя, а PASSWORD его пароль теперь можно проверить его работоспособность запускаем pppoe сервер командой
/usr/libexec/pppoed -p SERVICE_NAME -l pppoe-in IFACE_NAME

В данной конфигурации IP адрес клиенту назначается автоматически для использования конкретного адреса, нужно в файле
/etc/ppp/ppp.conf
убрать строку
set ifaddr 10.0.0.1 10.0.0.2-254

и запись в файле
/etc/ppp/ppp.secret
привести к виду
USERNAME PASSWORD 10.0.0.2 * *

аутентификация предусмотренная в данном случае MSCHAPv2 если требуется другой вид аутентификации то в файле
/etc/ppp/ppp.conf
измените строку
enable MSCHAPv2

так как нужно Вам.
Для аутентификации через FREERADIUS изменим предыдущий конфиг но сначала поставим FREERADIUS.
Набираем
# whereis freeradius

видим где лежит порт
freeradius: /usr/ports/net/freeradius

переходим в каталог порта
# cd /usr/ports/net/freeradius

и даем команды
# make config

устанавливаем нужные опции в том числе и поддержку MySQL жмем [OK]
# make

и
# make install

FREERADIUS с MySQL установлен можно приступить к конфигурации данной связки для этого команда
# echo "acct RADIUS_IP SECRET_KEY" >> /etc/radius.conf
# echo "auth RADIUS_IP SECRET_KEY" >> /etc/radius.conf

где RADIUS_IP – IP адрес radius сервера, SECRET_KEY – секретный ключ. SECRET_KEY устанавливается в файле
/usr/local/etc/raddb/clients.conf


client localhost {
secret = SECRET_KEY
shortname = localhost
}


в файле /usr/local/etc/raddb/sql.conf можно записать свои SQL запросы, описывать не вижу смысла ,примеров в интернете много.

меняем конфигурацию pppoed

/etc/ppp/ppp.conf

pppoe-in:
 set login
 allow mode direct
 set mru 1492
 set mtu 1492
 set speed sync
 set log Phase Chat LCP IPCP CCP tun command chap
 disable eap pap chap chap81
 enable lqr
 enable MSCHAPv2
 set timeout 0
 set radius /etc/radius.conf
 set ifaddr 10.0.0.1 10.0.0.2-254
 set dns 192.168.1.1 4.2.2.2
 accept dns


Для автозагрузки всего этого хозяйства нужно добавить в файл

/etc/rc.conf

radiusd_enable="YES"
pppoed_enable="YES"
pppoed_provider="SERVICE_NAME"
pppoed_flags="-l pppoe-in"
pppoed_interface="rl1"

При копировании материалов
ссылка на источник обязательна!


Читать дальше...

понедельник, 15 июня 2009 г.

Качество интернета в любимой Ubuntu

Еще в то время кода использовал Windows наблюдал проблему доставки страниц, в сообщении говорилось "Невозможно определить IP адрес узла". Но на днях обнаружил интересный материал о проблемах DNS провайдеров и их решении. Испробовал на себе и теперь делюсь впечатлением и собственно способом решения проблемы.



Собственно решается все очень просто. Опишу как я делал на своей Ubuntu.
Открыл консоль и написал команду

$ sudo nano /etc/resolv.conf


вписал сервера из списка, проблема решилась. Но после перезагрузки resolv.conf стал прежним. Решилось так

$ sudo nano /etc/ppp/ip-up


и в конец пишем

rm /etc/resolv.conf
echo search 4.2.2.4 >> /etc/resolv.conf
echo nameserver 4.2.2.4 >> /etc/resolv.conf
echo nameserver DNS_POVIDER >> /etc/resolv.conf
chmod 644 /etc/resolv.conf


где DNS_PROVDER DNS провайдера для доступа к внутренним ресурсам сети. Подключаем интернет и наслаждаемся.

P.S. Используется VPN подключение описанное в предыдущем посте.
При копировании материалов
ссылка на источник обязательна!


Читать дальше...

суббота, 13 июня 2009 г.

Настройка VPN подключения в Ubuntu GNU/Linux

Я использую интернет через VPN от маленького провайдера в маленьком городе. Мануалов и хоу-ту в интернете пруд пруди, но все на примерах больших провайдеров, с кучей серверов. И поэтому пришлось выкидывать половину советов :) После установки себе Ubuntu 8.04, более года назад, я столкнулся с тем, что не знаю как подключить интернет. Ось зла тогда еще оставалась второй системой и я полез гуглить на тему VPN в Ubuntu.



Что нарыл, перелопатил и получил долгожданный интернет под Ubuntu. А вот собственно говоря и рецепт.
Установил пакет pptp-linux командой
$ sudo apt-get install pptp-linux

создал файл в директории
$ sudo nano /etc/ppp/peers/имя_файла

и заполнил его следующим содержимым
pty "pptp IP_VPN_SERVER --nolaunchpppd"
user VPN_LOGIN
password "VPN_PASSWORD"
nodeflate
nobsdcomp
noauth
defaultroute
replacedefaultroute

напомню что для вставки из буфера используется комбинация Shift+Insert, а для выхода из nano Ctrl+x и Y чтобы сохранить изменения.
Для подключения в консоли
$ sudo pon имя_файла

Для отключения
$ sudo poff имя_файла

Для подключения и отключения одним кликом можно использовать простой скрипт. Создать файл в например
$ nano /home/NAME/internet

где NAME это имя учетной записи, со следующим содержимым
#!/bin/bash
if [ -n "$(ifconfig | grep ppp0)" ]; then
poff имя_файла
exit 1
else
pon имя_файла
exit 1
fi

потом создать кнопку запуска назначить иконку и вписать команду
gksudo bash /home/NAME/internet

для GNOME и Xface, а для KDE
kdesudo bash /home/NAME/internet

Теперь просто тыкаем мышкой по только-что созданной кнопке, вводим пароль и наслаждаемся интернетом в любимой OS.

После этих всех манипуляций я заметил что соединение иногда рвется, а обратно не подымается. И тогда прикрутил скрипт для переподнятия VPN соединения, скрипт прилагается
$ nano /home/NAME/script_vpn_reconnect

#!/bin/bash
if ping -c 2 www.google.com
then echo "Connection Good"
else
echo "Connection lost, restart ppp"
poff имя_файла
sleep 3
pon имя_файла
fi
sleep 20
exec /home/NAME/script_vpn_reconnect
exit 0

запуск скрипта
$ ./script_vpn_reconnect

При копировании материалов
ссылка на источник обязательна!


Читать дальше...

вторник, 2 июня 2009 г.

Легкий GNU/Linux на старый компьютер

Решил поставить GNU/Linux на ноутбук (DELL Inspiron 8100) дочурке, но обнаружилась проблема в виде неработающего оптического привода. Нарыл информации о установке Debian “lenny” по сети и через интернет.
По сети не завелось из-за проблем с TFTP клиентом. Поставил через интернет воспользовавшись программой UNetbootin и столкнулся с первой проблемой из коробки не завелись звук и видео после ритуальных танцев с бубном завел звук Advanced Linux Sound Architecture (ALSA) project, но видео так и не завел так как драйвера от производителя NVIDIA® не ставятся с новым gcc, а после установки нужной версии и даже удаления новой, инсталлер не видит требуемой версии gcc.
Gnome оказался слишком тяжелым плюс проблема с драйвером видео подтолкнули меня на установку Xubuntu ставлю снова UNetbootin выбираю дистрибутив и... облом сбой по питанию во время установки. Результат ноутбук не загружается. И тут я нарыл замечательную вещь PLoP Boot Manager взял образ floppy слил на дискету и установил Xubuntu с флешки. Хотя мой ноутбук и не имеет возможности загрузки с USB. Все устройства завелись из коробки, но появилась новая проблема.
Браузеры FireFox и Opera оказались слишком тяжеловесными и я начал поиски альтернатив используя Lynx. В процессе нашел Links 2 искать стало легче, так-как он отображает страницы в привычном виде. Перепробовал много вариантов и сейчас остановился на Galeon хотя он и основан на ядре Mozilla, но оказался, на удивление, достаточно быстрым и удобным браузером.
Пока Galeon остается моим выбором.

P.S. Судя по поисковым запросом людям интереско знать как записать образ PLoP на дискету. Я Это делал так
$ dd if=файл of=/dev/fd0 bs=1024
При копировании материалов
ссылка на источник обязательна!

Читать дальше...