LINUX.ORG.RU

Избранные сообщения Umberto

Хочу граббер

Форум — Development

Мне нужно вытаскивать кучу инфы с различных сайтов, нужно тупо запилить граббер.

Я собираюсь тупо запускать dom-парсер, смотреть глазами в каких элементах лежит нужная мне инфа, выдёргивать её. Всё просто.

Я вот подумал, а может в мире уже изобрели что-то более удобное? Паттерн-матчинг какой-нибудь, набор правил. Может есть какой-то приспособленный DSL для этого?

Язык и платформа — любая.

 , ,

vladimir-vg
()

Переключение между двумя провайдерами

Форум — Admin

Привет! Появился второй провайдер. Потребности в балансировке трафика нет, но зафейловерить линк во внешний канал не помешает. Основной провайдер предоставляет прямой линк (30 мегабит), резервный дает PPPoE (5 мегабит). Шлюзом выступает Debian 7.

Для выполенения задачи было решено держать оба линка поднятыми и в случае падения первого - переключать default gateway, подгружать альтернативный конфиг iptables и удаленно замеменять конфигурацию squid через SSH на прокси-сервере. Другой конфиг сквида разрешает доступ в интернет только тем пользователям, которым внешняя сеть критична для работы (Это около 15% всех пользоватлей). Учитывая специфику предприятия и то, что ширина резервного канала довольно мала, мне показалось это оптимальным решением.

Для автоматизации процесса я написал скрипт, который запускается по крону каждые пять минут. В моей ситуации это приемлемое время недоступности внешнего канала.

Проблема вот в чем. Мне нужно проверять доступность обоих каналов независимо от того, какой сейчас используется. Для этого я выбрал самый простой способ - ping -I $iface. Правильно ли? Есть что-то лучше?

Когда активный основной линк, я могу пинговать с обоих интерфейсов, -I eth6 и -I ppp0 работают и отвечают. Когда шлюз по умолчанию меняется на резервный, -I ppp0 работает, а вот -I eth6 перестает, - «destination host unreachable». В итоге, после переключения на резервный канал, обратно я уже не возвращаюсь, потому что проверка основного канала заканчивается провалом независимо от его состояния. Почему так?

# основной
# ip r
default via 85.1.1.45 dev eth6
10.0.0.0/21 dev eth1  proto kernel  scope link  src 10.0.0.2
90.2.66.97 dev ppp0  proto kernel  scope link  src 90.2.2.2
85.1.1.44/30 dev eth6  proto kernel  scope link  src 85.1.1.46
# резервный
# ip r
default dev ppp0 scope link
10.0.0.0/21 dev eth1  proto kernel  scope link  src 10.0.0.2
90.2.66.97 dev ppp0  proto kernel  scope link  src 90.2.2.2
85.1.1.44/30 dev eth6  proto kernel  scope link  src 85.1.1.46
Как заставить это работать? Что можно улучшить/упростить? AS, BGP не предлагать :]

Любую информацию предоставлю. Скрипт прикладываю. Баш только изучаю, если есть замечания, ошибки, предложения - пожалуйста, расскажите :)

#!/bin/bash
LOG="/var/log/isp-connect.log"
exec &>>$LOG
CURRENT_IF=$(ip r | grep "default" | awk '{print $5}')
PINGHOST1="8.8.8.8"
PINGHOST2="8.8.4.4"
WAN1_IF="eth6"
WAN1_IP="85.1.1.46"
WAN1_GW="85.1.1.45"
WAN2_IF="ppp0"
WAN2_IP="90.2.2.2"
DATE=$(date "+%m/%d/%y %H:%M:%S")
SENDEMAIL="sendemail -f gw01@domain.ru -t log@domain.ru -u \"WAN STATUS\" -s mail01.my.domain.ru"
#
CHECK_WAN1() { ping -q -c 5 -I $WAN1_IF $PINGHOST1 > /dev/null || ping -q -c 5 -I $WAN1_IF $PINGHOST2 > /dev/null; }
CHECK_WAN2() { ping -q -c 5 -I $WAN2_IF $PINGHOST1 > /dev/null || ping -q -c 5 -I $WAN2_IF $PINGHOST2 > /dev/null; }
ROUTE_WAN1() { route del default; route add default gw $WAN1_GW $WAN1_IF; sleep 5; }
ROUTE_WAN2() { route del default; route add default dev $WAN2_IF; sleep 5; }
#
if [ "$CURRENT_IF" == $WAN1_IF ]; then
        CHECK_WAN1
        if [ $? -ne 0 ]; then
                echo "[FAIL] $DATE WAN1 link is DOWN."
                echo "[INFO] $DATE Checking WAN2."
                CHECK_WAN2
                if [ $? -ne 0 ]; then
                        echo "[FAIL] $DATE ISP-SWITCH failed. Cannot connect to WAN2."
                        $SENDEMAIL -m "[FAIL] $DATE WAN1 and WAN2 are down. Switching is not possible."
                        exit
                else
                        ROUTE_WAN2
                        echo "[OK] $DATE WAN2 connection established."
                        bash /etc/iptables/wan2.ipt
                        # ssh to squid-server placeholder
                        # echo "[OK] $DATE squid configuration changed to EMERGENCY."
                        $SENDEMAIL -m "[WARN] WAN1 is down. Switched to WAN2."
                        exit
                fi
        else
                echo "[INFO] $DATE WAN1 link is UP. There is nothing to do."
                exit
        fi
#
elif [ "$CURRENT_IF" == $WAN2_IF ]; then
        CHECK_WAN1
        if [ $? -ne 0 ]; then
                echo "[INFO] $DATE WAN1 link is still DOWN."
                exit
        else
                echo "[INFO] $DATE WAN1 link looks like UP."
                echo "[INFO] $DATE Trying WAN1."
                ROUTE_WAN1
                CHECK_WAN1
                        if [ $? -ne 0 ]; then
                                echo "[FAIL] $DATE Cannot verify WAN1 connection."
                                echo "[INFO] $DATE ISP-SWITCH was canceled."
                                ROUTE_WAN2
                                exit
                        else
                                echo "[OK] $DATE WAN1 connection established."
                                echo "[OK] $DATE Changing squid3 configuration to MAIN."
                                $SENDEMAIL -m "[OK] WAN1 is back. Switched to WAN1."
                                bash /etc/iptables/wan1.ipt
                                # ssh to squid-server placeholder
                                exit
                        fi
        fi
fi

Помоги ЛОР там, где не смог помочь гугл :(

 ,

strnd
()

nDPI как замена l7filter

Форум — General

Если кому интересно, то вот рецепт

На большом потоке ( >300мбит/с ) c большим числом протоколов (>20) используется примерно 40% одного ядра Intel(R) Xeon(R) CPU E31230@3.20GHz. Если поток больше или процессор слабее, то включаем RPS или используем сетевые карты с multi-queue и irq-affinity :)

Требуется много памяти. На каждое соединение расходуется примерно 800+264*0.7 байт.

Исходники теперь есть на https://github.com/vel21ripn/nDPI/tree/netfilter

 ,

vel
()

Вопросы по bash

Форум — General

1) При запуске bash, bash -i, bash -l не заметил разницы.
Но согласно ману:

а) Запущенный с первым символом первого аргумента, являющимся -, bash запускается как login shell.
Почему при этом запуск bash запускается как login и interactive shell?

б) ~/.bashrc дожен читать только interactive shell. Почему при запуске bash и bash -l bash читает ~/.bashrc?

т.е. все варианты запускают login interactive shell.

2) Как правильно запустить bash из параметра запуска ядра init= для выпонения подобного скрипта помещения системы в tmpfs?
init=/bin/bash -c '/путь_к_скрипту' или как?

3) Что означает опция --init-file file у bash'а?

 ,

teod0r
()

Собрать u-boot (ARM) тулчейном с hard float

Форум — Development

...возможно ли? U-Boot 2013.10, архитектура — armv7.

Если собирать с USE_PRIVATE_LIBGCC=yes:

drivers/mmc/libmmc.o: In function `mmc_berase':
/home/operator/u-boot/drivers/mmc/mmc_write.c:76: undefined reference to `__aeabi_uldivmod'
/home/operator/u-boot/drivers/mmc/mmc_write.c:76: undefined reference to `__aeabi_uldivmod'
ld.bfd: error: required section '.rel.plt' not found in the linker script
ld.bfd: final link failed: Неверная операция

Если без этого ключа:

ld.bfd: ошибка: /usr/lib/gcc/armv7l-unknown-linux-gnueabihf/4.8.2/libgcc.a(bpabi.o) использует регистровые аргументы VFP, а u-boot не использует
ld.bfd: failed to merge target specific data of file /usr/lib/gcc/armv7l-unknown-linux-gnueabihf/4.8.2/libgcc.a(bpabi.o)
ld.bfd: ошибка: /usr/lib/gcc/armv7l-unknown-linux-gnueabihf/4.8.2/libgcc.a(_divdi3.o) использует регистровые аргументы VFP, а u-boot не использует
ld.bfd: failed to merge target specific data of file /usr/lib/gcc/armv7l-unknown-linux-gnueabihf/4.8.2/libgcc.a(_divdi3.o)
ld.bfd: ошибка: /usr/lib/gcc/armv7l-unknown-linux-gnueabihf/4.8.2/libgcc.a(_udivdi3.o) использует регистровые аргументы VFP, а u-boot не использует
ld.bfd: failed to merge target specific data of file /usr/lib/gcc/armv7l-unknown-linux-gnueabihf/4.8.2/libgcc.a(_udivdi3.o)

Эта сборка велась прямо на целевой машине (ArchLinuxARM, gcc 4.8.2).
Если собирать на x86 кросс-тулчейном от Linaro (2013.08, gcc 4.8.2) — то же самое.
Если взять crosstool-ng и собрать не-hardfloat тулчейн с последними версиями всего, а потом собрать им — полученный бинарник работать не будет.

ЧЯДНТ?

 , ,

intelfx
()

Словил руткит

Форум — Security

Hi All!

Сегодня обнаружил на сервере (шлюз с контролем доступа) чужой процесс sfewfesfs. Нашёл файл, отправил на анализ — оказалось руткит.

Есть два вопроса:
1. Как он попал на сервер-шлюз с динамическим IP и без открытых портов? Внутрь сети открытые порты есть.
2. Какие есть программы для обнаружения подобного вторжения? Как не печально, кажется, мне нужен антивирус...

P.S. чуть не забыл: Slackware Linux 3.2.13

fractaler
()

График использования RAM в терминале

Форум — Admin

Сабж. Есть такие программы, которые кажут график использования RAM прямо в терминале, в реальном времени?

Нужно для live мониторинга утечек памяти на одном сервачке. Юзеры давят кнопки в веб-морде, а мы админы сидим рядом и смотрим, как скачут графики - хотелось бы так. Сейчас смотрим в htop, без всяких графиков, но это жутко неудобно, не видно трендов.

stevejobs
()

История одного взлома, помогите разобраться и обезвредить.

Форум — Security

История одного взлома, помогите.

Здравствуйте, уважаемые пользователи linux. Ситуация такова. История взлома: Пару недель назад взломали наш сервер, спустя бекап и 1 неделю взлом повторился, тогда стало ясно что началось все через админ панель wordpress. А именно через вот эти файлики /wp-content/themes/informations.php и /wp-content/themes/includes.php в которых были заккоментированы первые двестрочки, что позволило посылать сообщения с сервера через них. Собственно взлом и был найден потому что закончилась память из за логов и очереди сообщений. Сейчас естественно сайт выключили, и от wordpressa отказались. Поменяли пароли. И отключили sendmail. !!!Но через определенные промежутки времени очередь сообщений начинает понемногу заполняться spool/mqueue, о чем так же свидетельствует log/mail.info (sm-mta, sm-msp-queue, sendmail), т. е. сообщение вроде как пытается отправиться, но т. к. sendmail отключен, пишет ошибку в лог. Попытка отправки писем происходит примерно каждые 15-25 мин после перезагрузки компьютера прекращается на время, видимо взломщик нашел еще какую то уязвимость в настройках сервера, rkhunter ничего особенного не находит. Сам я не очень опытный в плане администрирования сервера, скажем что это не совсем мой профиль, но приходится этим заниматься. Все запросы ведутся с разных IP или человек просто заменяет в заголовке свой ip на рандомный, поэтому «вычислить по ip» ;) не получится. Помогите разобраться в некоторых логах линукса, найти уязвимость и закрыть ее. Дополнительно удалил inetd, swat.

Прилагаю отрывки из логов некоторых файлов c описанием и вопросами, именно отрывки с подозрением хотя они не однократно повторяются и забивают все логи:
1. отрывки из apache2/access.log

самое частое сообщение, не знаю что это

::1 - - [24/Nov/2013:17:42:49 +0400] "OPTIONS * HTTP/1.0" 200 126 "-" "Apache/2.2.22 (Debian) (internal dummy connection)"
изредка появляется (ip разные)
58.221.240.19 - - [25/Nov/2013:10:12:47 +0400] "-" 408 0 "-" "-"
1.1 наибольший интерес несут большое количество вот таких сообщений, я пробовал раскодировать по примеру /wp-content/themes/informations.php, но получился какой то бред знает кто что это?
95.65.85.116 - - [27/Aug/2013:19:42:11 +0400] "\x1b\xcf\xa9\xea\xf0E\t\xa2\x80\x85\x84Yi\xd6\xcb\x95\xb04\x0fpQ[b\x95\xb0Y2|OEpJs" 400 323 "-" "-"
95.106.76.117 - - [27/Aug/2013:20:15:10 +0400] "\x058\x80\x81A\xfa\xe0\x17zS3\xad%e\xf8G\xbc" 200 15287 "-" "-"
95.161.247.135 - - [27/Aug/2013:20:22:27 +0400] "7;\xf9~" 200 15287 "-" "-"
95.32.224.208 - - [27/Aug/2013:21:18:01 +0400] "\x8b\x9ck\xe9," 200 15287 "-" "-"
89.169.66.104 - - [27/Aug/2013:22:35:03 +0400] "\x181\x1c\xeb~" 200 15287 "-" "-"
1.2 что это за запрос? естествено файла http://www.mysite1.com/hnap1/ и http://www.mysite2.com/hnap1/ не существует
76.175.75.209 - - [25/Nov/2013:23:23:56 +0400] "GET /HNAP1/ HTTP/1.1" 404 501 "http://xxx.xxx.xxx.xxx/" "Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 (FM Scene 4.6.1)"
1.3 здесь я просто переименовал папку необычным образом и забыл про эти запросы, черт с ними
63.141.227.74 - - [02/Dec/2013:00:02:42 +0400] "GET /w00tw00t.at.blackhats.romanian.anti-sec:) HTTP/1.1" 404 490 "-" "ZmEu"
63.141.227.74 - - [02/Dec/2013:00:02:43 +0400] "GET /phpmyadmin/scripts/setup.php HTTP/1.1" 404 479 "-" "ZmEu"
63.141.227.74 - - [02/Dec/2013:00:02:43 +0400] "GET /pma/scripts/setup.php HTTP/1.1" 404 474 "-" "ZmEu"
63.141.227.74 - - [02/Dec/2013:00:02:44 +0400] "GET /myadmin/scripts/setup.php HTTP/1.1" 404 478 "-" "ZmEu"
63.141.227.74 - - [02/Dec/2013:00:02:44 +0400] "GET /MyAdmin/scripts/setup.php HTTP/1.1" 404 479 "-" "ZmEu"
1.4 видимо злоумышленник пользовался этими страницами, теперь их нет
190.78.79.20 - - [03/Dec/2013:00:03:39 +0400] "POST /wp-content/themes/informations.php HTTP/1.0" 408 530 "-" "-"
190.203.208.110 - - [19/Dec/2013:05:04:07 +0400] "POST /wp-content/themes/includes.php HTTP/1.0" 408 530 "-" "-"
1.5 что это за перебор? папка cgi-bin пуста.
221.213.100.238 - - [27/Nov/2013:06:26:56 +0400] "HEAD / HTTP/1.0" 200 400 "-" "-"
221.213.100.238 - - [27/Nov/2013:06:26:57 +0400] "POST /cgi-bin/php?-d aluon -d mod -d suhon=on -d uncts="" -d dne -d auto_pr%t -d cgi.force_redirect=0 -d t_=0 -d ut -n HTTP/1.1" 404 493 "-" "Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26(KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25"
221.213.100.238 - - [27/Nov/2013:06:26:57 +0400] "POST /cgi-bin/php5?  ...
221.213.100.238 - - [27/Nov/2013:06:26:58 +0400] "POST /cgi-bin/php-cgi?  ...
221.213.100.238 - - [27/Nov/2013:06:26:58 +0400] "POST /cgi-bin/php.cgi?  ... 
221.213.100.238 - - [27/Nov/2013:06:26:59 +0400] "POST /cgi-bin/php4? ... 
1.6 этих файлов я не нашел если злоумышленнику удалось их залить, то он их переименовал
61.147.99.202 - - [19/Dec/2013:19:38:40 +0400] "GET /web-console/ServerInfo.jsp HTTP/1.1" 404 488 "-" "-"
93.174.93.4 - - [03/Dec/2013:13:49:22 +0400] "GET /invoker/JMXInvokerServlet HTTP/1.0" 404 507 "-" "-"
1.7 что это? не нашел такого файла
::1 - - [17/Dec/2013:16:34:50 +0400] "POST /upload/loginIxje.php HTTP/1.1" 404 479 "-" "-"
1.8 ни по одной из этих строчек у меня нет мыслей, объясните пожалуйста?
61.231.87.94 - - [03/Dec/2013:04:47:23 +0400] "CONNECT mx0.mail2000.com.tw:25 HTTP/1.0" 404 12303 "-" "-"
92.240.68.152 - - [04/Dec/2013:19:38:43 +0400] "GET http://images4.byinter.net/333455180.gif HTTP/1.1" 404 480 "-" "webcollage/1.135a"
92.240.68.153 - - [19/Dec/2013:02:14:43 +0400] "GET http://thumbs.dreamstime.com\xc2:\xc2/x/gaseous-nebula-2248617.jpg HTTP/1.1" 400 527 "-" "webcollage/1.135a"
46.165.239.230 - - [21/Dec/2013:15:21:06 +0400] "GET http://85.17.141.182/proxychecker/check.cgi?action=getinfo HTTP/1.1" 404 502 "http://www.google.com/search?hl=ru&q=free+proxy+checker&sourceid=navclient-ff&ie=UTF-8" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
85.196.214.55 - - [23/Dec/2013:01:55:16 +0400] "GET http://www.msftncsi.com/ncsi.txt HTTP/1.1" 404 472 "-" "Mozilla/5.0 (Windows NT 5.1; rv:9.0.1) Gecko/20100101 Firefox/9.0.1"
1.9 видимо запросы от поисковой машины, наверное не о чем волноваться
198.20.70.114 - - [03/Dec/2013:16:16:14 +0400] "GET / HTTP/1.1" 200 24744 "-" "-"
198.20.70.114 - - [03/Dec/2013:16:16:14 +0400] "GET /robots.txt HTTP/1.1" 404 473 "-" "-"
1.10 таки нашел базу гад, пароль был слабый, но сейчас она под другой директорией.
176.223.119.50 - - [04/Dec/2013:02:37:01 +0400] "GET /db/ HTTP/1.1" 404 461 "-" "Mozilla/7.0 (compatible; MSIE 8.0; Windows Seven)"
176.223.119.50 - - [04/Dec/2013:02:37:02 +0400] "GET /myadmin/ HTTP/1.1" 200 3893 "-" "Mozilla/7.0 (compatible; MSIE 8.0; Windows Seven)"
176.223.119.50 - - [04/Dec/2013:02:37:02 +0400] "GET /mysqladmin/ HTTP/1.1" 404 468 "-" "Mozilla/7.0 (compatible; MSIE 8.0; Windows Seven)"

2. ps -aux в процессах висят пару неизвестных для меня пользователей, стоит ли из за них волноваться

1000      4058  0.0  0.0  96480  1332 ?        S    12:49   0:00 sshd: имя_пользователя_не_root@pts/0
1000     30346  0.0  0.0  22280  1576 pts/0    Ss   15:07   0:00 -bash
1000     30387  0.0  0.0  12532   788 ?        Ss   15:07   0:00 /usr/lib/openssh/sftp-server
avahi     3794  0.0  0.0  34160  1568 ?        S    12:49   0:00 avahi-daemon: running [название_компьютера.local]
avahi     3795  0.0  0.0  34032   228 ?        S    12:49   0:00 avahi-daemon: chroot helper
102       2931  0.0  0.0  30076   856 ?        Ss   12:49   0:00 /usr/bin/dbus-daemon --system
bind      2788  0.0  0.0 201212  2824 ?        Ssl  12:49   0:00 /usr/sbin/named -u bind
daemon    2701  0.0  0.0  16668   200 ?        Ss   12:49   0:00 /usr/sbin/atd
statd     1988  0.0  0.0  23340   920 ?        Ss   12:49   0:00 /sbin/rpc.statd

3. log/access.log я привел записи которые происходили когда никто не взаимодействовал с сервером: 3.1 что это?, очень много таких записей

Dec  1 08:09:01 название_компьютера CRON[29181]: pam_unix(cron:session): session opened for user root by (uid=0)
3.2 Debian-exim что это запользователь?
Dec  2 02:33:01 название_компьютера CRON[31931]: pam_unix(cron:session): session opened for user Debian-exim by (uid=0)
3.3 это перебор паролей? порт каждый раз меняется, таких записей тоже прилично
Dec  1 08:35:32 название_компьютера sshd[29243]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=123.125.210.210  user=root
Dec  1 08:35:32 название_компьютера sshd[29243]: pam_winbind(sshd:auth): getting password (0x00000388)
Dec  1 08:35:32 название_компьютера sshd[29243]: pam_winbind(sshd:auth): pam_get_item returned a password
Dec  1 08:35:32 название_компьютера sshd[29243]: pam_winbind(sshd:auth): request wbcLogonUser failed: WBC_ERR_AUTH_ERROR, PAM error: PAM_USER_UNKNOWN (10), NTSTATUS: NT_STATUS_NO_SUCH_USER, Error message was: No such user
...
Dec  1 08:35:34 название_компьютера sshd[29243]: Failed password for root from 123.125.210.210 port 22657 ssh2
Dec  1 08:35:34 название_компьютера sshd[29243]: Connection closed by 123.125.210.210 [preauth]
...
Dec  2 02:28:04 название_компьютера sshd[31923]: Invalid user guest from 82.221.102.182
Dec  2 02:28:04 название_компьютера sshd[31923]: input_userauth_request: invalid user guest [preauth]
Dec  2 02:28:04 название_компьютера sshd[31923]: pam_unix(sshd:auth): check pass;user unknown
Dec  2 02:28:04 название_компьютера sshd[31923]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=82.221.102.182
Dec  2 02:28:04 название_компьютера sshd[31923]: pam_winbind(sshd:auth): getting password (0x00000388)
Dec  2 02:28:04 название_компьютера sshd[31923]: pam_winbind(sshd:auth): pam_get_item returned a password
Dec  2 02:28:07 название_компьютера sshd[31923]: Failed password for invalid userguest from 82.221.102.182 port 57181 ssh2
Dec  2 02:28:08 название_компьютера sshd[31923]: Received disconnect from 82.221.102.182: 11: PECL/ssh2 (http://pecl.php.net/packages/ssh2) [preauth]
...
Dec  2 08:17:32 название_компьютера sshd[478]: Failed password for root from 58.30.38.28 port 48394 ssh2
Dec  2 08:17:32 название_компьютера sshd[478]: Received disconnect from 58.30.38.28: 11: Bye Bye [preauth]
...

4. отрывки из apache2/error.log также много ошибок к /wp-content/themes/informations.php но это потому что человек пытался взломать

[Fri Dec 27 13:46:31 2013] [error] [client 78.111.186.189] Invalid URI in request \xdf:\xddH\xe9h,tW\x11a\xd0\x0c\xec\xf7r\xc3\xa0b\xf2
[Fri Dec 27 15:39:06 2013] [error] [client 194.186.207.105] request failed: error reading the headers
[Tue Dec 24 09:51:58 2013] [error] [client 50.16.241.71] script not found or unable to stat: /usr/lib/cgi-bin/php
[Tue Dec 24 09:51:58 2013] [error] [client 50.16.241.71] script not found or unable to stat: /usr/lib/cgi-bin/php5
[Tue Dec 24 09:51:58 2013] [error] [client 50.16.241.71] script not found or unable to stat: /usr/lib/cgi-bin/php-cgi
[Tue Dec 24 09:51:58 2013] [error] [client 50.16.241.71] script not found or unable to stat: /usr/lib/cgi-bin/php.cgi
[Tue Dec 24 09:51:59 2013] [error] [client 50.16.241.71] script not found or unable to stat: /usr/lib/cgi-bin/php4
на бывший сайт с wordpress еще идет много запросов, но естественно он отключен но большая часть файла до отключения wordpressa была забита вот этим, что это? затерли что то важное огромным количеством записей?
fprintf.c:50: SM_REQUIRE((fp) != NULL && (fp)->sm_magic == (SmFileMagic)) failedAborted

 , , , ,

farodig
()

Замерить скорость работы боевого http сервера?

Форум — Web-development

Где найти информацию про замеры скорости работы самого веб сервера к примеру apache (вопрос-ответ), на конкретном железе?

 , веб-серверы

boomflack
()

Помогите с iptables u32

Форум — General

Здравствуйте. Имею UDP-приложение, подвергаемое атаке, необходимо защитить трафик при помощи iptables. Решил использовать модуль u32, сдампил легитимный трафик между клиентом и сервером. Пример пакета:

0x0000:  4500 003e 5fc6 0000 **7711** bcdb b2d6 a4e7  E..>_...w.......
0x0010:  25dd a972 d785 2703 002a feef 5453 3349  %..r..'..*..TS3I
0x0020:  4e49 5431 0065 0000 8801 8595 a300 0000  NIT1.e..........
0x0030:  0000 0000 0000 0000 0000 0000 0000       ..............
Я обнаружил, что в легальных пакетах 5 столбец в строке 0x0000 всегда равен 7711. При атаках с помощью hping и других это значение не равно 7711. Я решил при помощи модуля u32 принимать только такие пакеты, которые удовлетворяют вышеуказанному условию, но не могу понять, как сделать это с помощью u32. Натолкните на мысль, буду благодарен за помощь.

 , ,

Wheely
()

Используемая вами в production система управления конфигурациями

Голосования — Голосования

Выбираю систему для разворачивания у нас (если ещё удастся пробить её использование). Кроме определённых фич, хотелось бы получить знания/опыт работы с более популярным софтом, чтобы пригодилось в дальнейшем. Что используется у вас?

  1. не используется 561 (73%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. puppet 98 (13%)

    *******************************************************

  3. другое 51 (7%)

    *****************************

  4. chef 48 (6%)

    ***************************

  5. ansible 20 (3%)

    ***********

  6. salt 15 (2%)

    ********

  7. cfengine 11 (1%)

    ******

  8. bcfg2 5 (1%)

    **

  9. juju 4 (1%)

    **

  10. cdist 2 (0%)

    *

Всего голосов: 815, всего проголосовавших: 765

 bcfg2, cdist, , ,

selivan
()

Доменная служба под Linux с некоторым нестандартным функционалом

Форум — Admin

Доброго времени суток ЛОРовцы !
Начальник дал задание найти на просторах великого и могучего - ПО с функционалом подобным AD, но с некоторыми фишками, такими как : Хранение данных пользователя на сервере с этим AD (данные : офисные документы, установленные приложения, настройки рабочего стола и т.д.), установка софта при первом входе в систему под доменной учеткой.(были какие-то ещё требования, но это основные.) И всё это под linux.
Есть какие-нибудь соображения как всё это реализовать ?
Буду очень благодарен любой помощи.
Заранее спасибо.

 , , , ,

Ginfred
()

Зеркалирование трафика с физического порта на виртуальный

Форум — Admin

Доброго времени суток! Сабж: имеется физический сервер с парком виртуалок на борту на базе Xen. Виртуалки поделены на 4 VLAN'а, гипервизор в отдельном VLAN'е, физический порт сервера соединен с маршрутизатором Cisco 1921 - данный канал является транком для имеющихся VLAN'ов. У роутера всего 2 порта - второй смотрит наружу. В одном из VLAN'ов стоит виртуалка со Snort'ом, на которую нужно передавать весь поступающий на роутер извне трафик для анализа.

Вопрос: каким образом можно зеркалировать тарфик с физ. порта Cisco для дальнейшей передачи на виртуалку со Snort'ом для последующего анлиза?

PS. Полагаю, необходимо на роутере создать вирт. интерфейс, зазеркалировать на него трафик (как?), затем в xen-гипервизоре создать бридж, к которому присоединить вирт. интерфейс роутера и один из интерфейсов ВМ со Snort'ом, вот только не знаю как это сделать, да так, чтоб коннект к роутеру не отвалился (весь этот зоопарк на другом конце страны, так что ошибку допустить нельзя).

Incher
()

Нужен скрипт запускающий программу вместе со скринсейвером

Форум — Development

А также завершающий программу когда скринсейвер деактивируется.

Нашел вот такой скрипт:

#!/bin/bash

dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver',member='ActiveChanged'" | while read line ; do
    if [ x"$(echo "$line" | grep 'boolean true')" != x ] ; then 
sh /home/pl7ofit/script.sh # выполняется во время работы скринсейвера
        echo "ScreenSaver start"
	date
    fi
    if [ x"$(echo "$line" | grep 'boolean false')" != x ] ; then 
kill $(pgrep script.sh) # выполняется после завершения скринсейвера
        echo "ScreenSaver stop"
        date
    fi
    #echo ${line}
done

Он запускает мой скрипт, но не завершает его после пробуждения, гуру-sh скриптов скажите в чем проблема? PS: выполнение застревает на пятой строке и не двигается дальше.

 , , ,

Pr0f1t
()

Пересобрать raid по UUID

Форум — Admin
root@adam:~# blkid
/dev/sda1: UUID="91e90981-9dbb-3ec0-4719-3358ad3ababf" TYPE="linux_raid_member"
/dev/sda2: UUID="e772343f-3608-1587-b112-0081d74bbece" TYPE="linux_raid_member"
/dev/sda3: UUID="2bc7aae1-8685-1a63-4685-40b300dc4e0c" TYPE="linux_raid_member"
/dev/sdb1: UUID="91e90981-9dbb-3ec0-4719-3358ad3ababf" TYPE="linux_raid_member"
/dev/sdb2: UUID="e772343f-3608-1587-b112-0081d74bbece" TYPE="linux_raid_member"
/dev/sdb3: UUID="2bc7aae1-8685-1a63-4685-40b300dc4e0c" TYPE="linux_raid_member"
/dev/md0: UUID="3a12a6a8-7c99-4066-b1be-749b8c1cbcb5" TYPE="ext4"
/dev/md1: UUID="99df2b52-cf34-4eaa-85f3-965f0f9ec72e" TYPE="swap"
/dev/md2: UUID="LpNjS9-qfZ4-5WhG-jCOd-8DPb-ZZRe-VRXLLi" TYPE="LVM2_member"
/dev/mapper/data-mt: UUID="909326ba4f1deedf" TYPE="drbd"
/dev/mapper/data-ast: UUID="15b2f1243107f7de" TYPE="drbd"
/dev/mapper/data-zer: UUID="2e2ed4ba796171ae" TYPE="drbd"
/dev/mapper/data-test: UUID="9da101573d1bcaa9" TYPE="drbd"
/dev/mapper/data-elastix: UUID="e3e89d0e8928c864" TYPE="drbd"
root@adam:~# nano /etc/mdadm/mdadm.conf
  GNU nano 2.2.6                                    Файл: /etc/mdadm/mdadm.conf

CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=91e90981:9dbb3ec0:47193358:ad3ababf
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=e772343f:36081587:b1120081:d74bbece
ARRAY /dev/md2 level=raid1 num-devices=2 UUID=2bc7aae1:86851a63:468540b3:00dc4e0c

# This file was auto-generated on Fri, 11 Mar 2011 10:58:38 +0300
# by mkconf $Id$
 mdadm --detail --scan --verbose
ARRAY /dev/md0 level=raid1 num-devices=2 metadata=0.90 UUID=91e90981:9dbb3ec0:47193358:ad3ababf
   devices=/dev/sda1,/dev/sdb1
ARRAY /dev/md1 level=raid1 num-devices=2 metadata=0.90 UUID=e772343f:36081587:b1120081:d74bbece
   devices=/dev/sda2,/dev/sdb2
ARRAY /dev/md2 level=raid1 num-devices=2 metadata=0.90 UUID=2bc7aae1:86851a63:468540b3:00dc4e0c
   devices=/dev/sda3,/dev/sdb3

Задача переопределить массив по UUID (к сожалению при установке система разметила так как выше и вариантов не дала) и в связи с этим ряд вопросов:
1) Почему файл mdadm.conf отличается от вывода команды mdadm --detail --scan --verbose (Откуда тогда при старте массив собирается)?
2)Можно ли просто дописать в mdadm.conf

ARRAY /dev/md0 level=raid1 num-devices=2 metadata=0.90 UUID=91e90981:9dbb3ec0:47193358:ad3ababf
   devices=91e90981-9dbb-3ec0-4719-3358ad3ababf,91e90981-9dbb-3ec0-4719-3358ad3ababf
и перезагрузится?

petav
()

Гигантские файлы

Форум — Talks
# ls -l superfile.dat 
-rw-r--r-- 1 root root 8070450532247928832 Oct  6 00:06 superfile.dat

Угадайте, как я это сделал?

Файловая система без ошибок, файл существуют на самом деле и имеют такой размер. Ядро и утилиты не модифицированные.

 

Xenius
()

Проксификация через DNS-spoofing

Форум — Admin

Подскажите пожалуйста как проксифицировать некоторые сайты через tor. Не обязательно подменой DNS, но хочется так чтобы было не затратно по ресурсам (то есть прозрачно заворачивать весь трафик на прокси не подойдет)

 ,

Black_Roland
()

FreeBSD и shared memory file

Форум — Development

Есть код, который маппит шаред мемори:

namespace ipc = boost::interprocess;
sharedMemPool = new ipc::shared_memory_object( ipc::open_only, SHMEM_NAME, ipc::read_only );
mappedRegion = new ipc::mapped_region( *sharedMemPool, ipc::read_only )
Как определить какой файл в ФС freebsd соответствует шаред мемори?
В линуксах я делаю следующим образом:
char line[256] = { '\0' }; /* /path/to/shmem */
std::ostringstream command;
command << "lsof -Fn -p" << getpid() << "|grep " << SHMEM_NAME;
FILE *cmd = popen( command.str().c_str(), "r" );
fgets( line, sizeof(line), cmd );
pclose( cmd );
В freebsd 8.2 даже пути такого нет /dev/shm

 ,

nerdogeek
()

Выучи X за Y минут - документация к ЯП и технологиям в виде документированного кода!

Форум — Talks

Adam Bard с сообществом начал и развивает, а также приглашает всех поучаствовать в проекте Learn X in Y minutes - «Code documentation written as code!».

Где ознакомление с языком программирования, инструментом или технологией представлено в виде документированного кода на целевом ЯП.

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



Ведется работа над Go.

Возможно, некоторые найдут более читабельным версию на сайте проекта: http://learnxinyminutes.com

А не непосредственного репозитария с файлами в markdown: https://github.com/adambard/learnxinyminutes-docs

 ,

science
()

Ядро linux для начинающих и интересующих

Форум — Development

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

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

Я занимаюсь этим делом порядка 3.5 лет, рассказать есть что. Вопрос в том, кто будет это читать. Когда я работал в школе и вел кружок углубленной математики по программе Малого Мех-мата, то на него ходило 4 человека из всей параллели. Для интернет блога такое число будет слишком маленьким, даже для 10 читателей что-либо затевать смысла нет, это будет неинтересно.

Собственно, дайте знать, кому это интересно. И тогда можно будет оценить целесообразность.

Площадка, думаю, может быть, любая, ЖЖ или там вконтактик, сейчас не суть.

ttnl
()