Архив

Архив раздела ‘net’

vnstat на Ubuntu – Монитор сети

4 марта 2010 admin 1 комментарий

Хотим красивую статистику по использованию сети?

Ставим сборщик статистики

apt-get install vnstat

Демонизируем его.

на сайте http://humdi.net/vnstat/ находим init.d скрипты для Ubuntu

Выкачиваем его

wget http://humdi.net/vnstat/init.d/debian/vnstat

задаём права на запуск

chmod 755 vnstat

Копируем его в /etc/init.d/

и добавляем в автозагрузку

update-rc.d vnstat defaults

Запускаем демон.

/etc/init.d/vnstat start

Для нужных интерфесов создаём базы данных

vnstat -u -i eth1

vnstat -u -i ppp0

Если этого не сделать, то в файле дампа будет примерно это

Unable to read database "/var/lib/vnstat/ppp0"

Теперь качаем вэб морду

Вот с этого сайта

http://www.sqweek.com/sqweek/index.php?p=1

распаковываем в /var/www/vnstat

Идём в config.php и находим

$iface_list = array('eth0', 'eth1', 'sixxs');

тут оставляем те интерфейсы, что нам необходимы (например eth1 и ppp0)

$iface_title['eth0'] = 'Internal';
$iface_title['eth1'] = 'Internet';

тут указываем кто кем будет.

создаём каталог для дампов

mkdir /var/www/vnstat/dumps

теперь пробуем создать дампы.

vnstat --dumpdb -i eth1 /var/www/vnstat/dumps/vnstat_dump_eth1

vnstat --dumpdb -i ppp0  /var/www/vnstat/dumps/vnstat_dump_ppp0

Файлы создаются, теперь добавляем эти команды в крон, например чтоб обновлялось каждые 30 минут

crontab -e
*/30 * * * * vnstat --dumpdb -i eth1 /var/www/vnstat/dumps/vnstat_dump_eth1

по аналогии для второго интефейса.

Собственно и всё заходим на http://ваш_ИП/vnstat/ и наслаждаемся собранной статистикой

(минут через 15-30 статистика начнёт появляться, а вэто время в файле дампа будет что-то вроде этого eth1 Not enough data available yet )

UPD 16.03.2010

Обновилась программа и интерфейс, данный мануал не актуален, теперь просто устанавливаем демон и запускаем PHP скрипт статы, без vnstat –dumpdb -i eth1

UPD 16.03.2010

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

Categories: net, ubuntu Tags:

Смена часового пояса в Ubuntu

Всё невероятно просто.

dpkg-reconfigure tzdata
Categories: man, net, ubuntu Tags:

Сменить MAC в Ubuntu

6 февраля 2010 admin Нет комментариев

в файле

/etc/network/interfaces

Добавить строчку перед инициализацией нужного интерфейса.

Например так:

auto eth0
iface eth0 inet static
pre-up ifconfig eth0 hw ether 00:0c:76:5d:af:ff
address 192.168.1.189
netmask 255.255.0.0
gateway 192.168.1.7
Categories: man, net, ubuntu Tags:

Установка новой сетевой карты в ubuntu

2 февраля 2010 admin Нет комментариев

Втыкаем сетевуху, грузимся, дальше смотрим

lspci

Вывод будет примерно такой

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (
rev 03)
00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (re
v 03)
00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 02)
00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (rev 01)
00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 02)
00:0a.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139 C+ (rev 10)
00:0b.0 Ethernet controller: MYSON Technology Inc SURECOM EP-320X-S 100/10M Ethernet PCI Adapter
01:00.0 VGA compatible controller: S3 Inc. 86c368 [Trio 3D/2X] (rev 02)

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

Дальше смотрим

ipconfig -a

Вывод будет примерно таким

eth0      Link encap:Ethernet  HWaddr 00:c0:26:2c:e6:ae
inet addr:192.168.5.36  Bcast:192.168.5.255  Mask:255.255.255.0
inet6 addr: fe80::2c0:26ff:fe2c:e6ae/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:440 errors:0 dropped:0 overruns:0 frame:0
TX packets:145 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:39563 (38.6 KB)  TX bytes:14378 (14.0 KB)
Interrupt:10 Base address:0xe400

eth2      Link encap:Ethernet  HWaddr 00:02:44:4e:67:c0
BROADCAST MULTICAST  MTU:1500  Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
Interrupt:5 Base address:0xe800

Вот тут то и видим, что сетевуха то нашлась но завётся не так как мы ожидали.

Как переименовать сетевые интерфейсы

Теперь идём в

/etc/udev/rules.d/ХХ_persistent-net.rules

где ХХ любые произвольные числа.

переименовываем и ребут либо перезапуск сетевых интерфейсов

Categories: man, net, ubuntu Tags:

Удаление правил iptables по их номерам

29 сентября 2009 admin Нет комментариев

Смотрим список правил с номерами.

 iptables -L -t nat --line-numbers

Видим примерно следущее

 Chain PREROUTING (policy ACCEPT)
num  target     prot opt source               destination
1  DNAT       udp  --  anywhere             proxy               udp dpt:475 to:192.168.100.6:475
2 DNAT       tcp  --  anywhere             proxy               tcp dpt:3389 to:192.168.100.202:3389
3 DNAT       tcp  --  anywhere             anywhere            tcp dpt:www to:192.168.100.192:3128

Chain POSTROUTING (policy ACCEPT)
num  target     prot opt source               destination
1 MASQUERADE  all  --  192.168.0.0/16       anywhere
2 SNAT       tcp  --  anywhere             192.168.100.202     tcp dpt:3389 to:91.196.161.26

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

Чтобы удалить нужное правило нужной цепочки -  Указываем цепочку и номер правила.

iptables -t nat -D PREROUTING 3

Вроде всё :)

Categories: iptables, net, ubuntu Tags:

iptables Автозагрузка

27 апреля 2009 admin 3 comments

И так есть у нас вбитые правила и мы хотим чтоб они при рестарте сами вгружались.

1 сохраняем правила в файл

sudo iptables-save > /etc/iptables.up.rules

Дальше в конец файла /etc/network/interfaces дописываем

pre-up iptables-restore < /etc/iptables.up.rules

Ребутемся и проверяем iptables -L

Categories: iptables, linux, net, ubuntu Tags:

nginx на Ubuntu – просто!

29 сентября 2008 admin 3 comments

Задача: построить сервер по технологии front-end back-end (поправьте если я это не так понял)

то есть чтоб nginx занимался работой с посетителями, а апач работал по запросам nginx и отдавал nginx’y хтмл по lo
тем самым не расходуя системных ресурсов зря.
и так у меня есть чистая инсталяция ubuntu-server 8.04

В инете много информации по nginx, но как заставить его работать в паре с apache2 я почему-то не встречал.

Как Апач устанавливать рассказывать не буду, как mysql тоже гугл легко подскажет.

Лишь немного проясню суть.

Качаем nginx
Берём свежую версию тут

http://technokracy.net/nginx/

на момент написания статьи

wget http://technokracy.net/nginx/nginx_0.6.13~grrr-1_i386.deb

Устанавливаем

dpkg -i nginx_*

Также потребуется модуль к Апачу, которого нет в дефолтной поставке

apt-get install libapache2-mod-rpaf

Модуль для трансляции ip адресов, чтоб апач видел не локальные обращения nginx, а ип адреса пользователей.

Теперь сайты, что обслуживает Apache вешаем на локальный интерфейс и на порт например 8080 у меня несколько сайтов на сервере и я их расположил по порядку на 8081 8082 и т.п.

итого в /etc/apache2/ports.conf

Listen 127.0.0.1:8080
Listen 127.0.0.1:8081
Listen 127.0.0.1:8082

в каталоге /etc/apache2/sites-enabled находятся файлы с конфигурациями сайтов.

привожу пример одного из них

ServerAdmin mail@gmail.com
ServerName mysite.net
DocumentRoot /var/www/site1
ServerAlias mysite.net
ErrorLog /var/log/apache2/site1-error.log
CustomLog /var/log/apache2/site1-access.log common
LogLevel error

/etc/nginx/nginx.conf
я не менял ничего
а вот /etc/nginx/sites-enabled
я сделал такой конфиг

server {
listen 80;
server_name mysite.net;

access_log /var/log/nginx/site1-nginx.access.log;

location / {
proxy_pass http://127.0.0.1:8080/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 40m;
client_body_buffer_size 256k;

proxy_connect_timeout 120;
proxy_send_timeout 120;
proxy_read_timeout 120;

proxy_buffer_size 64k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
#Static files location
location ~* ^.+.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|html|flv|mp3)$ {
root /var/www/site1; }

}

проверяем конфиг на корректность

# nginx -t
ну и если всё замечательно то

/etc/init.d/nginx start

ну и можно попробовать зайти на http://mysite.net

Дальше отснеффирил заголовки от своего web сервера

HTTP/1.1 200 OK
Server: nginx/0.5.32
Date: Mon, 29 Sep 2008 15:35:42 GMT
Content-Type: text/html
Connection: close
Last-Modified: Mon, 29 Sep 2008 13:53:07 GMT
ETag: “8146-ddb6-458092fd0b6c0″
Accept-Ranges: bytes
Content-Length: 56758

значит всё работает.

чтоб nginx стартовал автоматически я добавил в /etc/rc.local
строчку перед exit 0

/usr/local/bin/nginx

хотя можно было через rc-update (когда писал ман, почему пришла такая идея :) )

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

Если есть замечания прошу отписывать :)

Categories: linux, man, net, ubuntu Tags: