Perl. Добавить из файла в хеш.
Я в перле нуб, так что если вопрос простой - не пинайте, доки потом почитаю ). Есть некий файл, в котором Ключ1: значение1 Ключ2: значение2
Подскажите, как внести данные в хеш перла?
Я в перле нуб, так что если вопрос простой - не пинайте, доки потом почитаю ). Есть некий файл, в котором Ключ1: значение1 Ключ2: значение2
Подскажите, как внести данные в хеш перла?
Нужно мониторить службу (bacula) по порту 9102. Работает, или нет.
Пробовал создавать items-ы
tcp_perf,9102
net.tcp.port[, 9102] - не ест такое. Или ничего не выводит в первом случае, или выводит данные не имеющие отношения к реальности. В чем может быть дело?
На хосте -
# zabbix_agentd -p
agent.ping [u|1]
agent.version [s|1.6.2]
system.localtime [u|1322575675]
system.run[echo test] [m|ZBX_NOTSUPPORTED]
web.page.get[localhost,,80] [t|EOF]
web.page.perf[localhost,,80] [d|0.000000]
web.page.regexp[localhost,,80,OK] [s|EOF]
vfs.file.exists[/etc/passwd] [u|1]
vfs.file.time[/etc/passwd,modify] [u|1308650370]
vfs.file.size[/etc/passwd] [u|1665]
vfs.file.regexp[/etc/passwd,root] [s|root]
vfs.file.regmatch[/etc/passwd,root] [u|1]
vfs.file.cksum[/etc/passwd] [u|388425422]
vfs.file.md5sum[/etc/passwd] [s|5fa94d299c1b07bc77eb0327f355154d]
net.tcp.dns[127.0.0.1,localhost] [u|0]
net.tcp.port[,80] [u|0]
system.hostname [t|gw.lightsoft.ru]
system.uname [t|FreeBSD gw.lightsoft.ru 8.2-RELEASE FreeBSD 8.2-RELEASE #2: Mon Apr 18 20:49:17 MSD 2011:/usr/obj/usr/src/sys/GENERIC amd64]
system.users.num [d|2.000000]
log[logfile] [m|Accessible only as active check!]
eventlog[system] [m|Accessible only as active check!]
kernel.maxfiles [u|12328]
kernel.maxproc [u|6164]
vfs.fs.size[/,free] [u|171130880]
vfs.fs.inode[/,free] [u|138162]
vfs.dev.read[hda,ops,avg1] [m|ZBX_NOTSUPPORTED]
vfs.dev.write[hda,ops,avg1] [m|ZBX_NOTSUPPORTED]
net.tcp.listen[80] [d|2.000000]
net.if.in[lo0,bytes] [u|176066614474]
net.if.out[lo0,bytes] [u|176042569922]
net.if.total[lo0,bytes] [u|352109184396]
net.if.collisions[lo0] [u|0]
vm.memory.size[free] [u|353644544]
proc.num[inetd,,] [u|0]
proc.mem[inetd,,] [u|0]
system.cpu.switches [u|1106226897]
system.cpu.intr [u|94138548]
system.cpu.util[all,user,avg1] [m|Collector is not started!]
system.cpu.load[all,avg1] [d|0.267578]
system.cpu.num[online] [u|4]
system.swap.size[all,free] [u|8518074368]
system.swap.in[all] [m|ZBX_NOTSUPPORTED]
system.swap.out[all,count] [m|ZBX_NOTSUPPORTED]
system.uptime [u|5382294]
system.boottime [u|1317193381]
net.tcp.service[ssh,127.0.0.1,22] [u|1]
net.tcp.service.perf[ssh,127.0.0.1,22] [d|0.008950]
gw#
Есть скрипт, который рисует респонс статус вебсервера.
cat ng.sh
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import httplib
netloc = 'wiki2.lst224.b.ls1.ru'
path = '/'
method = "GET"
connect = httplib.HTTPConnection(netloc)
connect.request(method, path)
response = connect.getresponse()
connect.close()
print response.status
./ng.sh wiki2.lst224.b.ls1.ru
netloc = str(input(''))
Нужен скриптик, который дергал бы удаленный сайт, и, в случае, если там ошибка nginx (502 например) - плевал бы 502 в консоль. Иначе нолик. Что-то совсем не соображу, с какой стороны подступится. нарна вгетом ее дернуть, а дальше что?
Есть zabbix, в котором настроен экшен, рассылающий смс при каких то событиях (сервер недоступен, апач в дауне и прочее). Бывает такое, что апач нужно рестартануть, сервер перезагрузить - триггер срабатывает и сообщение шлется. Можно ли как то настроить таймаут наподобии «сервер был недоступен 10 минут, после этого шлем смс»?
Есть файлик вида
^@1^@9^@8^@
198
Добрый день. Задача с помощью заббикса мониторить баланс GSM модема. Есть некий скрипт, который с помощью ussd запроса *102# выдает баланс. Прав у заббикса его запускать хватает:
%whoami
zabbix
%/usr/local/zabbix_templates/bin/balance.sh
398
%
В конфиге zabbix agent он описан так:
tail -n 1 /usr/local/etc/zabbix/zabbix_agentd.conf
UserParameter=balance,/usr/local/zabbix_templates/bin/balance.sh
А вот в агент почему-то данные не поступают:
zabbix_agentd -p balance [m|ZBX_NOTSUPPORTED]
Здравствуйте. Стоит следующая задача. Есть сервер с FreeBSD, на нем работают пользователи. Нужно подсчитать количество используемого ими трафика. Считать надо с помощью pf (политика партии). На машине шлюза нет. Раньше считалось все с помощью ipfw:
# /sbin/ipfw show
20000 7087 669681 count ip from me to any uid 20088
20001 35 3171 count ip from me to any uid 20089
...
cat /etc/pf.conf
set loginterface em0
ext_if = em0
pass in all
pass out all
pfctl -s info
No ALTQ support in kernel
ALTQ related functions disabled
Status: Enabled for 0 days 00:23:11 Debug: Urgent
Interface Stats for em0 IPv4 IPv6
Bytes In 3235805785 144
Bytes Out 1817231302 0
Packets In
Passed 16693343 2
Blocked 5 0
Packets Out
Passed 9543056 0
Blocked 0 0
State Table Total Rate
current entries 5880
searches 26570250 19101.5/s
inserts 88683 63.8/s
removals 83146 59.8/s
Counters
match 121536 87.4/s
bad-offset 0 0.0/s
fragment 0 0.0/s
short 0 0.0/s
normalize 0 0.0/s
memory 0 0.0/s
bad-timestamp 0 0.0/s
congestion 0 0.0/s
ip-option 0 0.0/s
proto-cksum 0 0.0/s
state-mismatch 5 0.0/s
state-insert 0 0.0/s
state-limit 0 0.0/s
src-limit 0 0.0/s
synproxy 0 0.0/s
В ipfw можно выдернуть счетчики трафика, содержащие информацию о UID-е пользователя:
# /sbin/ipfw show
20000 7087 669681 count ip from me to any uid 20088
20001 35 3171 count ip from me to any uid 20089
...
...
pfctl -vsn
No ALTQ support in kernel
ALTQ related functions disabled
nat on 192.168.101.255 inet from 192.168.101.0/24 to any -> 192.168.101.255
[ Evaluations: 3072607 Packets: 0 Bytes: 0 States: 0 ]
[ Inserted: uid 0 pid 99399 ]
Здравствуйте. Что-то творится с syslog-ng, он почему то дважды дублирует сообщения. Вот конфиг:
source src_lst22 { udp(ip("192.168.101.122") port(515)); };
destination messages_hst { file("/var/log.hosting/$HOST/messages.$HOST"); };
destination security_hst { file("/var/log.hosting/$HOST/security.$HOST"); };
destination authlog_hst { file("/var/log.hosting/$HOST/auth.log.$HOST"); };
destination maillog_hst { file("/var/log.hosting/$HOST/maillog.$HOST"); };
......
......
......
filter f_auth { facility(auth); };
filter f_authpriv { facility(authpriv); };
filter f_not_authpriv { not facility(authpriv); };
filter f_cron { facility(cron); };
filter f_daemon { facility(daemon); };
filter f_ftp { facility(ftp); };
filter f_kern { facility(kern); };
filter f_lpr { facility(lpr); };
filter f_mail { facility(mail); };
filter f_news { facility(news); };
filter f_security { facility(security); };
filter f_user { facility(user); };
filter f_uucp { facility(uucp); };
filter f_local0 { facility(local0); };
filter f_local1 { facility(local1); };
filter f_local2 { facility(local2); };
filter f_local3 { facility(local3); };
filter f_local4 { facility(local4); };
filter f_local5 { facility(local5); };
filter f_local6 { facility(local6); };
filter f_local7 { facility(local7); };
filter no_apache { not facility(local2); };
filter f_messages { level(info) and not facility(auth, authpriv, mail, news); };
filter httpd_pr { program(httpd);};
filter nginx_pr { program(nginx);};
filter f_emerg { level(emerg); };
filter f_alert { level(alert..emerg); };
filter f_crit { level(crit..emerg); };
filter f_err { level(err..emerg); };
filter f_warning { level(warning..emerg); };
filter f_notice { level(notice..emerg); };
filter f_info { level(info..emerg); };
filter f_debug { level(debug..emerg); };
filter f_is_debug { level(debug); };
filter only_info { level(info); };
filter only_err { level(err); };
filter f_ppp { program("ppp"); };
filter f_slip { program("startslip"); };
filter f_proftpd { program("proftpd"); };
filter f_clamd { program("clamd");};
filter f_clamd_not { not program("clamd");};
filter f_proftpd_not { not program("proftpd"); };
filter f_clamscan { program("clamscan");};
filter f_apache_not { not program ("apache");};
filter f_cron_not {not program ("cron");};
log { source(src_lst22); filter(f_err); filter(no_apache);destination(console_hst); flags(final); };
log { source(src_lst22); filter(f_kern); filter(f_warning);filter(no_apache); destination(console_hst); flags(final); };
log { source(src_lst22); filter(f_auth); filter(f_notice);filter(no_apache); destination(console_hst); flags(final); };
log { source(src_lst22); filter(f_mail); filter(f_crit);filter(no_apache); destination(console_hst); flags(final); };
log { source(src_lst22); filter(f_kern); filter(f_debug);filter(no_apache); destination(messages_hst); flags(final); };
log { source(src_lst22); filter(f_lpr); filter(f_info);filter(no_apache); destination(messages_hst); flags(final); };
log { source(src_lst22); filter(f_mail); filter(f_crit);filter(no_apache); destination(messages_hst); flags(final); };
log { source(src_lst22); filter(f_news); filter(f_err);filter(no_apache); destination(messages_hst); flags(final); };
log { source(src_lst22); filter(f_security); destination(security_hst); flags(final); };
log { source(src_lst22); filter(f_auth); filter(f_info); destination(authlog_hst); flags(final); };
log { source(src_lst22); filter(f_authpriv); filter(f_auth); filter(f_info); destination(authlog_hst); flags(final); };
log { source(src_lst22); filter(f_mail); filter(f_info); filter(f_clamd_not);destination(maillog_hst);flags(final); };
log { source(src_lst22); filter(f_lpr); filter(f_info); destination(lpd-errs_hst); flags(final); };
log { source(src_lst22); filter(f_ftp); filter(f_info); destination(xferlog_hst); flags(final); };
log { source(src_lst22); filter(f_cron); destination(cron_hst); flags(final); };
log { source(src_lst22); filter(f_is_debug); destination(debuglog_hst); flags(final); };
log { source(src_lst22); filter(f_emerg); destination(allusers_hst); flags(final); };
log { source(src_lst22); filter(f_slip); destination(slip_hst); flags(final); };
log { source(src_lst22); filter(f_ppp); destination(ppp_hst); flags(final); };
log { source(src_lst22); filter(f_proftpd); destination(proftpd_hst); flags(final); };
log { source(src_lst22); filter(f_ftp); destination(proftpd_hst); flags(final); };
log { source(src_lst22); filter(f_clamd); destination(clamd_hst); flags(final); };
log { source(src_lst22); filter(f_local3); filter(f_info); destination(clamscan_hst); flags(final); };
log { source(src_lst22); filter(f_local6); filter(f_info); destination(svn.up_hst); flags(final); };
log { source(src_lst22); filter(f_local2); filter(only_info); destination(apache_hst_access); flags(final);};
log { source(src_lst22); filter(f_local2); filter(only_err); destination(apache_hst); flags(final); };
log { source(src_lst22); filter(f_local7); filter(only_err); destination(nginx_hst); flags(final); };
log { source(src_lst22); filter(f_local7); filter(only_info); destination(nginx_hst_access); flags(final); };
log { source(src_lst22); filter(f_local4); filter(only_info); destination(php_hst); flags(final); };
log { source(src_lst22); filter(f_messages);filter(no_apache); filter(f_cron_not); destination(messages_hst); flags(final); };
log { source(src_lst22); filter(f_notice); filter(f_proftpd_not); filter(f_not_authpriv); filter(no_apache); destination(messages_hst); flags(final); };
Открываем lst122# tail -f auth.log.lsp13
Jun 27 14:16:18 lsp13 su: amihailov to root on /dev/pts/0
Jun 27 14:16:18 lsp13 su: amihailov to root on /dev/pts/0
Jun 27 14:16:18 lsp13 su: amihailov to root on /dev/pts/0
Jun 27 14:16:18 lsp13 su: amihailov to root on /dev/pts/0
Jun 28 15:44:29 lsp13 sshd[38277]: Received disconnect from 192.168.0.241: 11: disconnected by user
Jun 28 15:44:29 lsp13 sshd[38277]: Received disconnect from 192.168.0.241: 11: disconnected by user
Добрый день. Никто не сталкивался с задачей, хранения хистори на openfire сервере? Стоит Openfire 3.7.0, там через модуль arhiving можно посмотреть историю. Насколько я понял, это реализуется через XEP-0136: http://xmpp.org/extensions/xep-0136.html С ним, тоже насколько я понял умеет работать один клиент - vacuum. У меня в упор не видит хистори. Кто-нибудь такое настраивал?
Есть скриптик, который читает с помощью read в переменную название диры. Нужно ограничить ввод регой ~[a-z0-9_-]+\.[a-z]{2,5}~i Чот туплю как реализовать, подскажете?
Добрый день. Следующий вопрос. Есть веб сервер апач плюс энджинкс, на сайте в директорию admin доступ только по ssl плюс авторизация через .htaccess. Возможно ли защитить ссл-ем только авторизацию, без шифрования всей сессии?
Добрый день. Нужно, чтобы энджинкс, видя в урле admin, перебрасывал на https: c http://мой_любой_сайт/admin перебрасывал на https://мой_любой_сайт/admin
Правило rewrite ^(.*) https://$host/$1 - работает, но перебрасывает все, всегда и везде. написал rewrite ^/(.admin) https://$host/admin; - не работает. Помогите написать пожалуйста.
Здравствуйте. Нужно чтобы mod rewrite, видя в урле /admin перекидывал на https. Yе силен в регулярных выражениях, написал
RewriteCond %{HTTP_HOST} !^$\admin
RewriteRule ^(.*) https://%{HTTP_HOST}%{REQUEST_URI}
Здравствуйте.
Следующая задача.
Есть апач с виртуальными хостами.
Задача состоит в том, чтобы по локейшну, например admin включался ssl, то есть к примеру для урла http://www.mysite.ru/admin включался ssl.
Править все .htaccess не резон - долго и муторно.
Привет. Существует ли в природе какая-нибудь более менее работоспособная веб морда к ОпенВиПиЭну? Задача автоматизировать (дабы потом кому-нибудь была возможность делегировать) просмотр-создание-удаление-блокировка сертификатов и редактирование пушей как минимум.
Добрый день. Стоит постфикс+TLS. Постфикс смотрит во внешнюю сетку и во внутренюю. Возможно ли вообще сделать, чтобы когда, человек коннектился снаружи у него по нешифрованному каналу смтп обрубал соединение, а из локалки соответсвенно принимал?
Есть файлик с мейлами
mail.tmp
alex@mail.ru
vlad@list.ru
Нужно из него получить файл вида
alex@mail.ru /home/mail/mail.ru/alex
vlad@list.ru /home/mail/list.ru/vlad
Пишу скриптик
#!/bin/sh
cat mail.tmp | while read line
do
USER=`awk -F@ '{print $1}'`
DOMAIN=`awk -F@ '{print $2}'`
# echo $DOMAIN
echo $line /usr/local/$DOMAIN/$USER
done
Почему то затыкается на первом юзере. Если в цикле не определять переменные, то все ок, только и адреса подставить не получается.
Народ, помогите, устал биться уже. Постфикс не цепляет пользователей из лдап. Конфиг постфикса:
queue_directory = /var/spool/postfix
command_directory = /usr/local/sbin
daemon_directory = /usr/local/libexec/postfix
data_directory = /var/db/postfix
mail_owner = postfix
myhostname = lst103.ls1.ru
mydomain = mydomain.ru
mydestination = $myhostname, localhost, localhost.localdomain, localhost.$mydomain, $mydomain, mydomain.ru
myorigin = $mydomain
inet_interfaces = all
local_recipient_maps = unix:passwd.byname $alias_maps
unknown_local_recipient_reject_code = 550
mynetworks_style = subnet
mynetworks =192.168.0.0/16, 127.0.0.0/8
biff = no
debug_peer_list = 127.0.0.1 192.168.0.241
virtual_transport = virtual
mailbox_transport = virtual
local_transport = virtual
message_size_limit = 10280000
mailbox_size_limit = 20480000
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_application_name = smtpd
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
cyrus_destination_recipient_limit=1
broken_sasl_auth_clients = yes
smtpd_pw_server_security_options = noanonymous
virtual_uid_maps = static:1001
virtual_gid_maps = static:1001
virtual_recipient_maps = ldap:ldapsource
#virtual_alias_maps = ldap:ldapsourcealias
#virtual_alias_maps = ldap:ldapsource
virtual_mailbox_size_limit = 20480000
virtual_minimum_uid = 500
virtual_mailbox_base =/var/spool/mail
virtual_result_attribute = mailbox
#virtual_mailbox_maps = ldap:ldapsource
virtual_maildir_extended = yes
ldapsource_server_host = 192.168.101.104
ldapsource_search_base = ou=people,dc=mydomain,dc=ru
ldapsource_server_port = 389
#ldapsource_domain = mydomain.ru
ldapsource_query_filter = (&(mail=%s))
#ldapsource_result_attribute = mailbox
ldapsourcealias_server_host = 192.168.101.104
ldapsource_bind = yes
ldapsource_bind_dn = cn=ldapadmin,dc=mydomain,dc=ru
ldapsource_bind_pw = secret
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mail_name = exchange
mail_version = 0.1
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version) (Windows 3.11)
debug_peer_level = 4
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5
delay_warning_time = 4
sendmail_path = /usr/local/sbin/sendmail
newaliases_path = /usr/local/bin/newaliases
mailq_path = /usr/local/bin/mailq
setgid_group = maildrop
manpage_directory = /usr/local/man
Судя по всему - к лдапу оно подключается, и он постфиксу что то даже отдает, судя по логу:
May 6 07:34:04 lst104 slapd[4352]: connection_get(10): got connid=1034
May 6 07:34:04 lst104 slapd[4352]: connection_read(10): checking for input on id=1034
May 6 07:34:04 lst104 slapd[4352]: op tag 0x63, time 1304667244
May 6 07:34:04 lst104 slapd[4352]: conn=1034 op=101 do_search
May 6 07:34:04 lst104 slapd[4352]: >>> dnPrettyNormal: <dc=mydomain,dc=ru>
May 6 07:34:04 lst104 slapd[4352]: <<< dnPrettyNormal: <dc=mydomain,dc=ru>, <dc=mydomain,dc=ru>
May 6 07:34:04 lst104 slapd[4352]: => bdb_search
May 6 07:34:04 lst104 slapd[4352]: bdb_dn2entry("dc=mydomain,dc=ru")
May 6 07:34:04 lst104 slapd[4352]: search_candidates: base="dc=mydomain,dc=ru" (0x00000001) scope=2
May 6 07:34:04 lst104 slapd[4352]: => bdb_dn2idl("dc=mydomain,dc=ru")
May 6 07:34:04 lst104 slapd[4352]: => bdb_equality_candidates (objectClass)
May 6 07:34:04 lst104 slapd[4352]: => key_read
May 6 07:34:04 lst104 slapd[4352]: <= bdb_index_read: failed (-30989)
May 6 07:34:04 lst104 slapd[4352]: <= bdb_equality_candidates: id=0, first=0, last=0
May 6 07:34:04 lst104 slapd[4352]: => bdb_equality_candidates (objectClass)
May 6 07:34:04 lst104 slapd[4352]: => key_read
May 6 07:34:04 lst104 slapd[4352]: <= bdb_index_read 2 candidates
May 6 07:34:04 lst104 slapd[4352]: <= bdb_equality_candidates: id=2, first=17, last=27
May 6 07:34:04 lst104 slapd[4352]: => bdb_equality_candidates (mail)
May 6 07:34:04 lst104 slapd[4352]: => key_read
May 6 07:34:04 lst104 slapd[4352]: <= bdb_index_read 1 candidates
May 6 07:34:04 lst104 slapd[4352]: <= bdb_equality_candidates: id=1, first=27, last=27
May 6 07:34:04 lst104 slapd[4352]: bdb_search_candidates: id=1 first=27 last=27
May 6 07:34:04 lst104 slapd[4352]: => send_search_entry: conn 1034 dn="cn=user11,ou=people,dc=mydomain,dc=ru"
May 6 07:34:04 lst104 slapd[4352]: <= send_search_entry: conn 1034 exit.
May 6 07:34:04 lst104 slapd[4352]: send_ldap_result: conn=1034 op=101 p=3
May 6 07:34:04 lst104 slapd[4352]: send_ldap_response: msgid=102 tag=101 err=0
А сам постфикс при попытке написать письмо говорит:
May 6 07:49:37 lst103 postfix/smtpd[60539]: connect from unknown[192.168.0.241]
May 6 07:49:38 lst103 postfix/smtpd[60539]: NOQUEUE: reject: RCPT from unknown[192.168.0.241]: 550 5.1.1 <user11@mydomain.ru>: Recipient address rejected: User unknown in local recipient table; from=<user11@mydomain.ru> to=<user11@mydomain.ru> proto=ESMTP helo=<[192.168.0.241]>
May 6 07:49:38 lst103 postfix/smtpd[60539]: disconnect from unknown[192.168.0.241]
В лдапе соответственно корень dc=mydomain, dc=ru, там объект ou=people, в нем user11, в атрибутах которого прописан mail user11@mydomain.ru
← назад | следующие → |