Tag Archives: скрипт

Dummy SMTP server

Решение автора JOTN, отсюда:

#!/usr/bin/perl -w
use Net::SMTP::Server;
use Net::SMTP::Server::Client;
 
$server = new Net::SMTP::Server('localhost', 25) || die("$!\n");
 
while($conn = $server->accept()) {
	my $client = new Net::SMTP::Server::Client($conn) ||
	die("Unable to handle client connection: $!\n");
	$client->process || next;
 
	# Here's where you can write it out or just dump it. Set $filename to
	# where you want to write it
	$filename = './collected_mail.txt';
	open(MAIL,">> $filename") || die "$filename: $1";
	print(MAIL "$client->{MSG}\n");
	close(MAIL);
}

/etc/ssmtp/ssmtp.conf:

root=postmaster
mailhub=localhost
#rewriteDomain=
hostname=localhost
FromLineOverride=YES

Под Ubuntu необходимые пакеты называются libnet-smtp-server-perl и ssmtp.

Быстрый генератор случайных имён-фамилий для базы данных

Относительно быстрый генератор псевдослучайного списка имён-фамилий и рандомных данных в базу. Фокус заключается в записи группы сгенерированных данных сперва во временную таблицу в памяти, потом блокировке основной таблицы и переносе данных туда из временной, после чего блокировка снимается, а цикл повторяется необходимое количество раз.

Continue reading

Памятка: avr-gcc, компиляция

Необходимые компоненты:

port install avr-gcc avr-libc

Создание объектного файла, линковка и получение исполняемого модуля:

avr-gcc -g -Os -mmcu=attiny2313 -c main.c
avr-gcc -g -Os -mmcu=attiny2313 -o main.elf main.c
avr-objcopy -j .text -j .data -O ihex main.elf main.hex

Заливка:

avrdude -c usbasp -p attiny2313 -U flash:w:main.hex

Перекидывание почты в базу: PHP, IMAP, MySQL

Возникла необходимость перелить в базу данных содержимое почтового ящика. По получившемуся архиву должен осуществляться относительно быстрый поиск. Следующий скрипт забирает письма по IMAP, парсит их, помещает в MySQL, и при необходимости удаляет обработанную почту (отвечающий за удаление кусок кода нужно раскомментировать). Если удалять письма не нужно, то для более быстрой работы можно использовать опцию readonly при инициализации соединения с почтовым сервером.

В скрипте не предусмотрена обработка писем во вложенных папках, так как это не требовалось. Данные собираются в поля: дата, отправитель, получатели (to, cc и bcc скомбинированы в одну строку) и тема письма. Полная копия письма также сохраняется в BLOB.

Continue reading

Из EAGLE 6.2 в TopoR 5.3 Lite и обратно

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

Следующий метод должен работать.

Continue reading

Верификация e-mail: сложный путь. Brain dump

Иногда приспичивает сделать что-то сложно и мучительно, just for fun, так вот один из тех случаев.

Скачать SMTP honeypot: smtphoneypot.zip

Скрипт ковырялся давно, подробностей не помню, так что коротко. Ситуация примерно следующая: имеется некий хост, на котором поднят веб-сервер. Провайдер предоставляет динамический IP-адрес и категорически запрещает трафик на порты 80, 25, 22 и некоторые другие. Также пользуемся услугами DynDNS чтобы попадать на этот хост по адресу, например, что-то.gotdns.org и центром CAcert для подписи наших сертификатов, при этом очень хочется генерить и подписывать сертификаты на имя что-то.gotdns.org, а злобному касерту подавай проверку с помощью электронной почты, что данный домен принадлежит нам.

Continue reading

Automatic sync with update and glsa check

The script does the following:
1) emerge sync
2) emerge -pvuD world
3) check for packages which can be upgraded but aren’t shown by ’emerge -pvuD world’
4) list all glsa vulnerabilities
5) email the output of the previous commands (except for the sync output of course).
6) download (not emerge!) all packages needed for ’emerge -pvuD world’

Continue reading