вторник, 25 июня 2013 г.

Отлов запутанных змей.






Есть много разных способов отлова змей. Например, можно ловить руками, держа за голову и туловище. А потом аккуратно класть змею в мешок. Или можно использовать "змеелов". Иногда используют крючок. Об этом подробнее можно почитать тут.
Мы рассмотрим другой способ. =)

Далее, будет небольшой рассказ о написании приложения на Twisted.
Рассказ представляет собой частичную копипасту отсюда.

вторник, 18 июня 2013 г.

Нагружаем сеть рандомами или нулами.

Пусть есть 2 хоста: client и server . С client хотим на server послать много немыслимых данных и нагрузить сеть.
Пусть client с ip = 192.168.50.100, а server с ip = 192.168.4.5.

Устанавливаем простейшее соединение клиент-сервер с помощью netcat. На сервере начнем слушать с портом соединения 10000 (можно поставить другой, незарерервированный под системные нужды):

Запустим nc на server'e (ip = 192.168.4.5):
nc -l -p 10000

С клиента (ip = 192.168.100.50) устанавливаем соединение с серверной машиной по 10000-му порту:
nc 192.168.4.5 10000

Соединение установлено.

Теперь апгрейд простейшего соединения:
1. Добавим бесконечный цикл с прослушкой на сервере, чтобы при отключении клиента, соединение не прерывалось
2. Все данные, пришедшие с клиента отправляем в /dev/null, чтобы не наблюдать хаос и ужас из рандомов (в случае с нулями нам повезет больше и мы ничего страшного не увидим):
while sleep 1; do nc -l -p 10000 > /dev/null; done

Про хаос и ужас. Увидим мы это:

Вход по ssh без запроса пароля


Полезная штука:
sshpass -p [yourpassword] ssh [yourusername]@[host]
Т.е.:
sshpass -p 12345 ssh root@192.168.5.4

NFS

Про настройку NFS.

Есть удаленная файловая система server - NFS Server(пусть его ip=192.168.100.50). Есть файловая система на которую мы хотим монтировать сlient - NFS Client(предположим, его ip=192.168.5.4). Хотим примонтировать папку folder1.

На машине, выступающей в роли NFS сервера, выполняем:
apt-get install nfs-kernel-server nfs-common portmap



На машине, выступающей в роли NFS клиента, выполняем:
apt-get install nfs-common portmap 


Из удаленной файловой системы server редактируем:
sudo vim /etc/exports

Добавляем в конец папку, которую хотим примонтировать (folder1) из сервера и ip клиента, на который собираемся примонтироваться.