Поиск по этому блогу

понедельник, 7 ноября 2011 г.

Второй способ поднять puppetmaster и puppet Debian/Ubuntu

И так при первом описании поднятия puppetmaster и puppet клиента возникла ошибка с невозможностью вытянуть конфиг с сервера клиентом. Второй способ рассматривает в качестве сервера Ubuntu 10.10 и клиента Debian 6 squeeze
И так приступим
+SERVER+
#sudo apt-get install puppetmaster
#nano /etc/puppet/manifests/site.pp
file { "/etc/passwd":
 owner => "root",
 group => "bin",
 mode => 644,
}
Но для для теста я создал фаил (на клиентской машине) /home/debian1/test и впихнул его в манифест на сервер
#nano /etc/puppet/manifests/site.pp
file { "/home/nosensus/test:
 owner => "root",
}
Далее в /etc/hosts пропишем клиента
#nano /etc/hosts
192.168.5.75    nosensus.nosensus       nosensus
192.168.5.175  debian1
+CLIENT+
#apt-get install puppet
Допишем в конфиг папета в самый конец следующую строку
#nano /etc/puppet/puppet.conf
[agent]
server=ubuntu
Далее пропишем в /etc/hosts сервер
#nano /etc/hosts
192.168.5.175    debian1
192.168.5.75  nosensus.nosensus
теперь отправим запрос на сервер о получении сертификата
#puppetca -vt
Должно выйти, что то типо такого
info: Creating a new SSL key for debian1
warning: peer certificate won't be verified in this SSL session
info: Caching certificate for ca
warning: peer certificate won't be verified in this SSL session
warning: peer certificate won't be verified in this SSL session
info: Creating a new SSL certificate request for debian1
info: Certificate Request fingerprint (md5): 72:31:C1:CC:0B:33:AC:28:11:AE:FF:13:4B:A5:BF:6B
warning: peer certificate won't be verified in this SSL session
warning: peer certificate won't be verified in this SSL session
warning: peer certificate won't be verified in this SSL session
Exiting; no certificate found and waitforcert is disabled
Но если выйдет ошибка
-bash: puppetca: command not found
то вам необходимо будет запросить авторизацию так
#root@debian1:~# puppetd --server nosensus.nosensus --waitforcert 60


+SERVER+
На сервере подпишем, но сначала посмотрим список запрашиваемых, если есть знак + значит узел подписан
#root@nosensus:~# puppetca -la
debian1 (72:31:C1:CC:0B:33:AC:28:11:AE:FF:13:4B:A5:BF:6B)
+ nosensus.nosensus (35:A1:64:03:65:91:58:6C:32:FD:D5:C2:F1:B4:C5:E0)
Видим что debian1 не подпиан, подписываем
#puppetca --sign (ну и указываем узел)
root@nosensus:~# puppetca --sign debian1
notice: Signed certificate request for debian1
notice: Removing file Puppet::SSL::CertificateRequest debian1 at '/var/lib/puppet/ssl/ca/requests/debian1.pem'
+CLENT+
Теперь тянем с сервера конфиг, в данном случае у меня фаил test обретет рутовские привиллегии.
#puppetd -vt
#root@debian1:/etc# puppetd -vt
warning: peer certificate won't be verified in this SSL session
info: Caching certificate for nosensus.nosensus
info: Caching certificate_revocation_list for ca
info: Caching catalog for nosensus.nosensus
info: Applying configuration version '1320653819'
notice: /Stage[main]//File[/home/debian1/test]/owner: owner changed 'nosensus' to 'root'
info: Creating state file /var/lib/puppet/state/state.yaml
notice: Finished catalog run in 0.02 seconds




Если у вас выйдет ошибка
root@debian1:/home/debian1# puppetd -vt
err: Could not retrieve catalog from remote server: hostname was not match with the server certificate
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run

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

Домашняя радиостанция на Linux Ubuntu 10.04

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

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


Если Вы не хотите утруждать себя настройкой консольных приложений, то эта статья для Вас :)


Все что нам нужно это установить сервер вещания IceCast2 и пакетик под названием idjc (internet dj console).
К счастью эти приложения имелись в отечественном репозитории, поэтому с установкой проблем не возникло:
sudo apt-get install idjc icecast2
Конфиг сервера находится по адресу /etc/icecast2/icecast.xml и выглядит так
По умолчанию сервер Icecast2 отключен, чтобы запустить его выполним следующее:
sudo nano /etc/default/icecast2
Находим нужную строчку и меняем false на true:
# Change this to true when done to enable the init.d script
ENABLE=true
Запускаем сервер
sudo /etc/init.d/icecast2 start
Теперь когда сервер готов к вещанию нам остается только запустить internet dj console
и добавить музыку в плэйлист.

Чтобы настроить вещание через сервер IceCast2 нажмите на кнопку Server
в нижнем левом углу окна.

Заполните поля примерно так как показано на скрине.
Только не забудьте поменять название точки монтирования (вместо rock.mp3 можно написать что-то свое) и ip адрес сервера,
а также вписать пароль источника такой же как в конфиге icecast.
После того как поля будут заполнены, нажмите кнопку Add
и на кнопку Server Connect для подключение к серверу.
Теперь можете скинуть ссылку на плэйлист (http://ваш_ip:8000/rock.mp3.m3u) друзьям и вещать в свое удовольствие .)


Автор статьи Игорь Шакиров

пятница, 4 ноября 2011 г.

Две LAN/сетевые карты на Debian

       И так если у вас установленны две сетевые карты на сервере и необходимо задействовать их между собой то
путь
#cd proc/sys/net/ipv4
#nano ip_forward
по умолчанию там стоит цифра 0 измените ее на 1 и все
Далее задаем комманду в коносоле
#ifconfig

eth0      Link encap:Ethernet  HWaddr 00:e0:ec:ba:ad:88  
          inet addr:192.168.5.175  Bcast:192.168.5.255  Mask:255.255.255.0
          inet6 addr: fe80::2e0:ecff:feba:ad88/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2148 errors:0 dropped:0 overruns:0 frame:0
          TX packets:344 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:219742 (214.5 KiB)  TX bytes:43341 (42.3 KiB)
          Interrupt:11 Base address:0xec00 


lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:560 (560.0 B)  TX bytes:560 (560.0 B)

Но как видете вторая сетевая карта не определена изменил кое, что кое где, а именно
#nano /etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#allow-hotplug eth0
auto eth0
iface eth0 inet static
        address 192.168.5.175
        netmask 255.255.255.0
        network 192.168.5.0
        broadcast 192.168.5.255
        gateway 192.168.5.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 81.95.224.146 81.95.224.65
        dns-search hserver
auto eth1
iface eth1 inet static
        address 192.168.1.175
        netmask 255.255.255.0
Далее проверим присвоился ли ипе двум сетевым интерфесам.
#ifconfig

eth0      Link encap:Ethernet  HWaddr 00:e0:ec:ba:ad:88  
          inet addr:192.168.5.175  Bcast:192.168.5.255  Mask:255.255.255.0
          inet6 addr: fe80::2e0:ecff:feba:ad88/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:471 errors:0 dropped:0 overruns:0 frame:0
          TX packets:87 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:44350 (43.3 KiB)  TX bytes:12822 (12.5 KiB)
          Interrupt:11 Base address:0xec00 


eth1      Link encap:Ethernet  HWaddr 00:0a:e6:30:6c:b2  
          inet addr:192.168.1.175  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20a:e6ff:fe30:6cb2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:22 errors:0 dropped:0 overruns:0 frame:0
          TX packets:49 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1834 (1.7 KiB)  TX bytes:7329 (7.1 KiB)
          Interrupt:5 Base address:0xd800 


lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:560 (560.0 B)  TX bytes:560 (560.0 B)
То что нам было нужно.

Далее создадим файл тут
#cd /etc/init.d
Создадим файл где будет прописано правило натинга
#touch nating
Делаем его исполняемым
#chmod +x nating
Запихнем правило натинга
#nano nating

iptables -A POSTROUTING -t nat -s 192.168.5.175 -j SNAT --to 192.168.1.1
iptables -A PREROUTING -t nat -d 192.168.1.1 -j DNAT --to 192.168.5.175
И после дабавим в автозагрузку
#update-rc.d defaults nating


Примечание
iptables -A POSTROUTING -t nat -s 192.168.5.175 -j SNAT --to 192.168.1.1
в данном случае все соединения 192.168.5.175 будут перенаправлены на 192.168.1.1
iptables -A PREROUTING -t nat -d 192.168.1.1 -j DNAT --to 192.168.5.175
Теперь любое соединение на адрес 192.168.1.1 будет непосредственно транслироваться в 192.168.5.175
Заключение
В заключении отмечу несколько дополнительных параметров iptables, которые я использовал при составлении статьи.
Перенаправление одного порта (192.168.1.1:10022 → 192.168.5.175:22):
# iptables -A PREROUTING -t nat -d 192.168.1.1 -p tcp --dport 10022 -j DNAT --to 192.168.5.175:22
# iptables -A POSTROUTING -t nat -s 192.168.5.175 -p tcp --dport 22 -j SNAT --to 192.168.1.1:10022