IPerf — утилита командной строки, предназначенная для тестирования пропускной способности канала связи. Она включает в себя генератор TCP и UDP трафика и используется для определения скорости прохождения трафика между двумя узлами в сети. IPerf (для Windows) представляет из себя небольшой исполняемый файл размером около 100кб, в котором содержатся клиентская и серверная части. Он не требует установки, достаточно просто скопировать ее на оба компьютера и запустить сначала серверную часть программы, а затем клиентскую.

 

В самом простом варианте запуск IPerf происходит следующим образом:

iperf -s — на сервере.

iperf5

 

iperf -c 192.168.1.56 — на клиенте, где 192.168.1.56 — IP-адрес сервера.

iperf4

 

По умолчанию используется TCP порт 5001, тестирование проходит в течение 10 секунд. Этого вполне достаточно для быстрой оценки скорости соединения, однако возможности IPerf этим не ограничиваются. Например:

iperf -s -i10 -p80 — сервер прослушивает 80 порт и выдает результат с интервалом в 10 секунд.

iperf2

 

iperf -c 192.168.1.60 -p80 -t120 — клиент соединяется с 80 портом сервера, тестирование в течение 120 секунд.

iperf1

 

Приведу полный список опций программы:

  • -f -  в каком формате показывать скорость (Kbits, Mbits, KBytes, Mbytes);
  • -i -  с какими интервалами отображать промежуточные результаты;
  • -l — размер буфера (по умолчанию 8 KB);
  • -m —  показывать максимальный размер TCP сегмента (MSS);
  • -p — указать порт, по которому будет происходить соединение (по умолчанию 5001);
  • -u — использовать UDP вместо TCP;
  • -w — размер окна TCP;
  • -B — указание для сервера, на каком интерфейсе принимать трафик;
  • -C — режим совместимости со старыми версиями;
  • -M —  позволяет изменить максимальный размер TCP сегмента (MSS);
  • -N — меняет некоторые опции TCP (отключение алгоритма Нагла);
  • -V —  использовать IPV6;
  • -h — вывод справки.

Опции для сервера:

  • -s —  запустить как сервер и отображать всю информацию на экран;
  • -D — запустить как сервис (в фоновом режиме) и не отображать информацию.

Опции клиента:

  • -b — используемая полоса для UDP (по умолчанию 1Mbit/sec);
  • -c — запустить как клиент и соединиться с сервером;
  • -d — тестировать линию в обе стороны;
  • -n — установить размер передаваемого трафика (нельзя использовать c ключом -t);
  • -r — не делать двунаправленное тестирование;
  • -t - указать время тестирования (по умолчанию 10 сек);
  • -F — не генерировать трафик, а передавать готовый файл;
  • -I — ввод данных, передаваемых из STDIN (стандартный поток ввода);
  • -L — порт, на котором клиент будет принимать двунаправленный трафик;
  • -P —  запуск нескольких потоков параллельно;
  • -T - время жизни пакета для групповой рассылки (по умолчанию 1).

Программа IPerf очень проста и удобна в использовании, однако для эстетов тех, кто не любит работать в командной строке, есть графический интерфейс для IPerf, написанный на JavaJPerf. Установки он также не требует, но для его работы необходима установленная платформа Java.

iperf3

 

В общем, IPerf  — удобный инструмент для измерения скорости и качества сетевого соединения, который стоит всегда иметь под рукой. Программа абсолютно бесплатна, загрузить ее можно с сайта [urlspan]SourceForge[/urlspan].

Задача: нужно в максимально короткий срок узнать, зашел ли кто под пользователем root на сервер, от какого пользователя была запущена команда su и какой IP посмел такое сделать.

Проверка каждого пользователя

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

/root/.bash_profile

следующую строку:

echo 'ALERT - Root Shell Access on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d"(" -f2 | cut -d")" -f1`" it@adminunix.ru
для FreeBSD
echo 'ALERT - Root Shell Access on:' `date` `who` | mail -s "Alert: Root Access from `hostname -f` `who | cut  -f2 | cut  -f1`" it@adminunix.ru

Советую заранее протестировать эту строчку, просто выполнив её. На почту должно прийти сообщение примерно такого вида:

72.22.22.1462
ALERT - Root Shell Access on: Sun Dec 11 00:58:17 MSK 2011 user pts/0 2011-12-10 21:08 (72.22.22.1462) user pts/2 2011-12-10 21:17 (72.22.22.1462)

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

Проверка для всех пользователей

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

echo 'ALERT - Root Shell Access on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d"(" -f2 | cut -d")" -f1`" it@adminunix.ru
для FreeBSD
echo 'ALERT - Root Shell Access on:' `date` `who` | mail -s "Alert: Root Access from `hostname -f` `who | cut  -f2 | cut  -f1`" it@adminunix.ru

мы добавляем в конец файла /etc/profile. Теперь каждый раз, как какой-либо пользователь пройдет аутентификацию на сервере, вы сможете получить об этом сообщение.

Чтобы осуществлять мониторинг температуры в серверной, на улице и т.д...

Для этого нам понадобится некоторое количество датчиков температуры DS18B20  ( DS1820 ) и адаптер для подключения к COM порту компьютера и Digitemp программа умеет снимать показания с датчиков на  1-Wire шине.

1346781378_image001

Схема адаптера

1346781608_image003

или

1346781624_image005

 

Первая схема имеет ограничение на 10 датчиков.

Диод Шотки 1N5818

Стабилитрон 1N5228 3.9 V

Стабилитрон 1N5234 6.2 V

Резистор 1.5 кОм.

9 -pin'овый разъем ( для подключения к Com — порту материнской платы )

 

Установка Digitemp:

 

# cd /usr/local/src
# sudo mkdir digitemp
# cd digitemp
# sudo wget http://andy.od.ua/pub/digitemp/digitemp-3.5.0_mysql.tar
# sudo tar vxf digitemp-3.5.0_mysql.tar
# cd digitemp-3.5.0_mysql
# sudo apt-get install gcc libmysqlclient15-dev
# sudo make ds9097
# sudo mkdir /usr/local/etc/digitemp

Переместим скомпилированный файл в директорию /usr/local/etc/digitemp

#sudo mv digitemp_DS9097 /usr/local/etc/digitemp/digitemp_DS9097

теперь создадим файл .digitemprc_mysql в нем будут хранится настройки доступа к базе mysql

# sudo nano /usr/local/etc/digitemp/.digitemprc_mysql

вот с таким содержанием

DBNAME digitemp       #Имя базы не больше 32 символов
DBUSER digitemp       #Имя пользователя не больше 16 символов
DBPASS pass           #Пароль не больше 16 символов
DBHOST localhost      #Имя хоста или Ip-адрес не больше 16 символов
DBTABLE digitemp      #Имя таблицы не больше 32 символов
DBCOLUMNS BLANK,TIMESTAMP,SERIAL,TEMPC  #Имена столбцов которые будут записываться в базу

Описание DBCOLUMNS:

BLANK – пусто

TIMESTAMP – дата и время

TEMPC – температура в Цельсиях

TEMPF – температура в фаренгейтах

SERIAL – серийный номер датчика

SENSOR – номер датчика

Любой из вышеперечисленных столбцов могут быть указаны в любом порядке и могут быть дублированы

Теперь создадим таблицу куда будут записываться показания датчиков

# mysql –uимя пользователя –pпароль   имя базы < digitemp.sql

содержимое файла  digitemp.sql

CREATE TABLE `digitemp` (
  `dtKey` int(11) NOT NULL AUTO_INCREMENT,
  `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `SerialNumber` varchar(17) COLLATE utf8_unicode_ci NOT NULL,
  `Fahrenheit` decimal(6,2) NOT NULL,
  `Celsus` decimal(6,2) NOT NULL,
  `Sensor` int(3) DEFAULT NULL,
  PRIMARY KEY (`dtKey`),
  KEY `serial_key` (`SerialNumber`),
  KEY `time_key` (`time`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

инициализация датчиков

# cd /usr/local/etc/digitemp
# ./digitemp_DS9097 -i -s /dev/ttyS0   DigiTemp v3.5.0 Copyright 1996-2007 by Brian C. Lane
GNU Public License v2.0 - http://www.digitemp.com
Turning off all DS2409 Couplers
..
Searching the 1-Wire LAN
28D4B1DD030000FC : DS18B20 Temperature Sensor
284FB4DD03000067 : DS18B20 Temperature Sensor
ROM #0 : 28D4B1DD030000FC
ROM #1 : 284FB4DD03000067
Wrote .digitemprc

Программа нашла два датчика, значит устройство работает.

Теперь можно считать информацию со всех датчиков командой

# ./digitemp_DS9097 -a
DigiTemp v3.5.0 Copyright 1996-2007 by Brian C. Lane
GNU Public License v2.0 - http://www.digitemp.com
Sep 04 21:11:57 Sensor 0 C: 21.12 F: 70.03
Sep 04 21:11:58 Sensor 1 C: 29.56 F: 85.21

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

# sudo nano digitemp.sh

содержимое файла

#!/bin/bash
cd /usr/local/etc/digitemp
/usr/local/etc/digitemp/digitemp_DS9097 -i -s /dev/ttyS0 > /dev/null
/usr/local/etc/digitemp/digitemp_DS9097 -q
запись в крон
# sudo nano /etc/crontab
 добавить в конец файла Так крон будет каждые пять минуть запускать скрипт
*/5 * * * * root /usr/local/etc/digitemp/digitemp.sh
перезапустить крон
# sudo service cron restart
для отображения показаний в виде графика можно использовать php, скрипт можно взять [urlspan]здесь[/urlspan].

Clam AntiVirus — пакет антивирусного ПО, работающий во многих операционных системах, включая Unix-подобные ОС, OpenVMS, Microsoft Windows и Apple Mac OS X.
Выпускается под GNU General Public License и является свободным программным обеспечением.
Для самой Ubuntu — антивирус не нужен, но вот если к вам пришел друг и говорит: «а проверь ка мне флешку на вирусы...»
Для установка ClamAV введите команду:
Continue Reading

В связи с сменой реквизитов предприятия, необходимо было перейти на новый домен,так как на старом крутился мыльник (exim) на 100чел. нужно было настроить безболезненный переход на новый домен.
Для решения нашей задачи, необходимо добавить в конфиг exim следующий маршрут:

domain_to_domain_redirect:
driver = redirect
allow_fail
allow_defer
domains = domain1
data = ${quote:$local_part}@domain2

теперь вся входящая почта для domain1, будет перенаправляться на domain2.

Tmpfs — предназначена для ускорения работы ОС FreeBSD (монтирования FS, но размещается в ОЗУ вместо HDD), она портированна с NetBSD и впервые входит в состав FreeBSD 7.0.
В основном в UNIX, tmpfs используют для работы с /tmp, так как после перезагрузки все файлы удаляются. Tmpfs динамически использует свободную память.

Первым делом пересоберем ядро с поддержкой tmpfs:

options TMPFS

Если этого делать не охота, включаем модулем ядра:

# echo 'tmpfs_load="YES"'>> /boot/loader.conf

Для монтирования ФС с помощью tmpfs, доступны следующие опции:

     gid — root group id.
uid — root user id.
mode — разрешения в восьмеричном формате.
inodes — максимальное количество дескрипторов.
size — максимального размера (в байтах) для файловой системы.

Заменяем в /etc/fstab, swap на tmpfs:

#/dev/ad6s1e            /tmp            ufs     rw              2       2
 tmpfs                   /tmp            tmpfs   rw,mode=1777    0       0

где в опциях указываем «mode=1777», что означает назначить права «chmod 1777 /tmp» после перезагрузки, иначе MySQL не поднимится. Так же можно указать в опциях размер памяти, который будет выделен под раздел: size=536870912 в байтах:

tmpfs                   /tmp            tmpfs   rw,mode=1777,size=536870912    0       0

После перезагрузки видим, что все удачно примонтировалось:

# df -h
 Filesystem     Size    Used   Avail Capacity  Mounted on
 ...
 tmpfs          1.1G     40K    1.1G     0%    /tmp
 ...