Такие разные пароли
Иван Квасников
dn: "CN=Domain Admins PSO,CN=Password Settings Container,CN=System,DC=dc01,DC=domain,DC=corp"
changetype: add
objectClass: msDS-PasswordSettings
msDS-MaximumPasswordAge:-1728000000000
msDS-MinimumPasswordAge:-864000000000
msDS-MinimumPasswordLength:8
msDS-PasswordHistoryLength:24
msDS-PasswordComplexityEnabled:TRUE
msDS-PasswordReversibleEncryptionEnabled:FALSE
msDS-LockoutObservationWindow:-18000000000
msDS-LockoutDuration:-18000000000
msDS-LockoutThreshold:0
msDS-PasswordSettingsPrecedence:20
msDS-PSOAppliesTo:"CN=Domain Admins,CN=Users,DC=dc01,DC=domain,DC=corp"
ldifde –i –f pso.ldf
dsget user "CN=Administrator,CN=Users,DC=domain,DC=corp" –effectivepso
-----------------------------------------------------------------------------------------
Создаем шлюз с системой учета трафика на слабом компьютере
Николай Емашев
# cd /usr/ports/www/squid/
# make install clean
# /usr/ports/www/lightsquid
# make install clean
Alias /statistica "/usr/local/www/lightsquid"
AddHandler cgi-script .cgi
AllowOverride All
$logpath ="/usr/local/squid/logs/";
$skipurl = "get.theon.ru|91\.144\.144\.|penzadom.ru";
$lang ="ru-koi8";
$templatename ="ric";
$bigfilelimit = 20*1024*1024;
$perusertrafficlimit = 300*1024*1024;
192.168.2.7 Есин Виктор
192.168.2.8 Калинин Владимир
# echo 'ipcad_enable="YES"' >> /etc/rc.conf
# ee /usr/local/etc/ipcad.conf
capture-ports enable;
// Интерфейс заменить на свой
interface rl0 filter "ip and dst net 192.168.2.0/24 and not src net 192.168.2.0/24";
// Считаем все адреса
aggregate 0.0.0.0/0 strip 32;
// Теперь укажем, какие порты как отображать
aggregate 1-19 into 65535;
aggregate 20-21 into 21;
aggregate 22-23 into 22;
aggregate 25 into 25;
aggregate 24 into 65535;
aggregate 26-79 into 65535;
aggregate 80-81 into 0;
aggregate 82-109 into 65535;
aggregate 110 into 110;
aggregate 111-442 into 65535;
aggregate 443 into 443;
aggregate 444-3127 into 65535;
aggregate 3128 into 0;
aggregate 3129-65535 into 65535;
// Настройки rsh-сервера, с помощью которого будет просматриваться статистика
rsh enable at 127.0.0.1;
rsh root@127.0.0.1 admin;
rsh root@127.0.0.1 backup;
rsh root@127.0.0.1;
rsh 127.0.0.1 view-only;
rsh ttl = 3;
rsh timeout = 30;
chroot = /var/log/ipcad;
dumpfile = ipcad.dump;
pidfile = ipcad.pid;
1. #!/bin/sh
2. # Диапазон адресов локальной cети, указываем подсеть
3. net="192.168.2"
4. ttime=`/usr/bin/rsh localhost sh ip acco|grep 'Accounting data saved'|awk '{print ($4)}'`
5. /usr/bin/rsh localhost clear ip accounting
6. /usr/bin/rsh localhost show ip accounting checkpoint|grep $net|awk -v vtime=$ttime '{print (vtime".000",1,$2,"TCP_MISS/200",$4,"CONNECT",$1":"$5,"-","DIRECT/"$1,"-")}' >>/usr/local/squid/logs/access.log
options IPFIREWALL
# Логгинг пакетов, если в правиле написано `log`
options IPFIREWALL_VERBOSE
# Защита от атак типа флудинга
options IPFIREWALL_VERBOSE_LIMIT=50
# Перенаправление пакетов
options IPFIREWALL_FORWARD
# Трансляция адресов
options IPDIVERT
# Разрешающее последнее правило, что делает брандмауэр открытым
# (на случай каких-либо ошибок в конфигурационных скриптах)
options IPFIREWALL_DEFAULT_TO_ACCEPT
# Сбросим список
ipfw -q -f flush
# Установим префикс команды для набора правил
cmd="ipfw add"
########################squid############################
# Разрешаем исходящий трафик с сервера
$cmd 50 allow all from me to any
# Разрешаем входящий трафик к серверу
$cmd 50 allow all from any to me
# Делаем прозрачный прокси
$cmd 100 fwd 127.0.0.1,3128 tcp from 192.168.2.0/24 to any 80
chmod 755 /usr/local/scripts/firewall.sh
firewall_enable="YES"
firewall_script="/usr/local/scripts/firewall.sh"
# arp -an | awk -v OFS="\t" '{print(substr($2, 2, length($2)-2), $4)}' > /usr/local/etc/mac_control
# arp -d -a
# arp -f /usr/local/etc/mac_control
#!/bin/sh
# Static ARP-table loader
# http://www.opennet.ru/base/net/arp_fix_bsd.txt.html
# Сергей Супрунов amsand@yandex.ru.
case $1 in
start)
arp -d -a > /dev/null
arp -f /usr/local/etc/mac_control > /dev/null
echo 'Static ARP-table is loaded'
;;
stop)
arp -d -a > /dev/null
echo 'Static ARP-table is unloaded'
;;
restart)
arp -d -a > /dev/null
arp -f /usr/local/etc/mac_control > /dev/null
echo 'Static ARP-table is reloaded'
;;
status)
arp -an
;;
*)
echo "Usage: `basename $0` {start|stop|restart|status}" >&2
;;
esac
exit 0
ifconfig_rl0="inet 192.168.x.x netmask 255.255.255.0 staticarp"
# СЕТЕВЫЕ ОПЦИИ
# Указываем, на каком порту будет крутиться наш прокси и делаем его прозрачным
http_port 3128 transparent
# Указываем, какие url не кэшировать, а отправлять запросы напрямую
acl QUERY urlpath_regex cgi-bin \? cmd dst dk?st.cmd
no_cache deny QUERY
# РАЗМЕРЫ КЭША И ПАМЯТЬ
# Объем занимаемой памяти
cache_mem 23 MB
# При достижении данного уровня заполнения кэша - в процентах,
# начинается ускоренный процесс удаления старых объектов
cache_swap_high 95
# Процесс удаления старых объектов заканчивается, если достигнут данный уровень
cache_swap_low 90
# Максимальный и минимальный объект в кэше
maximum_object_size 1096 KB
minimum_object_size 37 KB
# Максимальный объект в памяти
maximum_object_size_in_memory 1024 KB
# ЛОГ-ФАЙЛЫ И ПАПКИ С КЭШЕМ
# Расположение папки с кэшем и его размер (в данном случае 400 Мб)
cache_dir ufs /usr/local/squid/cache 400 16 256
# Формат логов
logformat squid %ts.%03tu %6tr %>a %Ss/%03Hs %a %Ss/%03Hs %h] [%a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %h" "%{User-Agent}>h" %Ss:%Sh
# Папка с логами
access_log /usr/local/squid/logs/access.log squid
cache_log /usr/local/squid/logs/cache.log
cache_store_log /usr/local/squid/logs/store.log
# Ротация логов (не забудьте добавить задание в cron)
logfile_rotate 1
# НАСТРОЙКИ ДЛЯ ВНЕШНИХ ПРОГРАММ
# Под каким анонимным пользователем заходить на ftp
ftp_user anonimous@mail.ru
# Ширина листинга ftp
ftp_list_width 64
# Пассивный или активный режимы
ftp_passive off
hosts_file /etc/hosts
# ТОНКАЯ НАСТРОЙКА КЭША
# Используется для определения устаревания объекта в кэше
# (подробнее о значениях можно узнать здесь - http://www.bog.pp.ru/work/squid.html)
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
# Некоторые негативные ответы тоже кэшируются - connection refused и 404 not found - ttl
# задает их время жизни в кэше
negative_ttl 5 minutes
positive_dns_ttl 15 hours
negative_dns_ttl 1 minute
# КОНТРОЛЬ ДОСТУПА
# -------------------------------------------------------
#acl password proxy_auth REQUIRED
acl fileupload req_mime_type -i ^multipart/form-data$
acl javascript rep_mime_type -i ^application/x-javascript$
# Обозначаем диапазоны адресов:
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
# К каким портам разрешать доступ
acl SSL_ports port 443 563 5223
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 5190 # icq
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 5222 # jabber
acl Safe_ports port 1025-65535 # unregistered ports
acl CONNECT method CONNECT
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_reply_access allow all
icp_access allow all
# АДМИНСКИЕ ПАРАМЕТРЫ
# Почтовый адрес, на который будет послано письмо, если в Squid возникнут проблемы
cache_mgr schmel@xak-faq.info
# Если запустить Squid от имени root, то поменять UID на указанный
cache_effective_user squid
# Не показывать версию Squid
httpd_suppress_version_string on
# Отображаемое имя хоста
visible_hostname unknown
# Память для пулов, можете поставить свое значение, в зависимости от мощности машины
# memory_pools on
# memory_pools_limit 25 MB
# Скрываем, что идем через прокси
forwarded_for off
header_access Via deny all
# Сбор статистики о клиентах
client_db on
coredump_dir /usr/local/squid/cache
#####НАСТРОЙКА ПУЛОВ И ДОСТУПА К ОПРЕДЕЛЕННЫМ САЙТАМ######
# В этом файле записываются url, которым мы не будем резатьскорость
# (чаще – это внутренние ресурсы провайдера)
acl provider url_regex -i "/usr/local/etc/squid/acl/provider"
# Белый список
acl good_url url_regex "/usr/local/etc/squid/acl/good_url"
# Список слов, запрещенных в url
acl bad_urlpath urlpath_regex "/usr/local/etc/squid/acl/bad_urlpath"
# Список запрещенных сайтов
acl bad_url url_regex "/usr/local/etc/squid/acl/bad_url"
# Список сайтов с клубничкой
acl porno_url url_regex "/usr/local/etc/squid/acl/porno_url"
# Рекламные сайты
acl banner_url url_regex "/usr/local/etc/squid/acl/banner_url"
# Все вышеперечисленные файлы можно брать из баз rejik или SquidGuard
# Доступ к локальному веб-серверу (для статистики и ошибок)
acl web_server_users src 192.168.2.0/24
acl web_server src 192.168.2.1
http_access allow good_url
http_access allow provider
###############ЗАПРЕТ ДОСТУПА И ОШИБКИ###################
http_access deny bad_urlpath !good_url
http_access deny bad_url !good_url
http_access deny porno_url !good_url
http_access deny banner_url !good_url
# Поставим редирект на прозрачную картинку
deny_info http://192.168.2.1/squid/rek/1x1.gif bad_urlpath
deny_info http://192.168.2.1/squid/rek/1x1.gif bad_url
deny_info http://192.168.2.1/squid/rek/1x1.gif banner_url
deny_info http://192.168.2.1/squid/rek/1x1.gif porno_url
########ДЕЛИМ КАНАЛ НА ВСЕХ ПОЛЬЗОВАТЕЛЕЙ################
# В этом файле IP-адрес тех, кому разрешим доступ
acl InternetUsers src "/usr/local/etc/squid/acl/InternetUsers"
# Админу отдельный пул, без ограничений
acl admin src 192.168.2.3
# В этом файле сайты, доступные всем разрешенным, даже тем, кто попал в бан-лист
acl no_quota url_regex -i "/usr/local/etc/squid/acl/no_quota_url"
# Список пользователей, превысивших лимит трафика и попавших в бан-лист
acl banusers src "/usr/local/etc/squid/acl/user_deny"
# Дневное время
acl day time 08:00-23:59
################ДЕЛИМ КАНАЛ В ДНЕВНОЕ ВРЕМЯ###############
# Количество пулов – 2 (дневной и ночной)
delay_pools 2
# Класс пула 2й
delay_class 1 2
# Первые 300 Кб закачиваются на максимальной скорости, потом скорость не более 18 Кб\с
delay_parameters 1 -1/-1 18000/300000
# Сайты в provider и пользователь admin обходят эти ограничения
delay_access 1 allow InternetUsers day !provider !admin
delay_access 1 deny all
##############НОЧНОЙ ДОСТУП###########################
# Здесь снимаем ограничения на скорость скачивания
delay_class 2 2
delay_parameters 2 -1/-1 -1/-1
delay_access 2 allow !day InternetUsers !admin
delay_access 2 deny all
# А здесь - наоборот, режем до минимума тем, кто решил закачку на ночь поставить
#delay_class 2 2
# Первые 50 Кб – на максимальной скорости, далее не более 4 Кб\с
#delay_parameters 2 -1/-1 4000/50000
#delay_access 2 allow !day InternetUsers !admin
#delay_access 2 deny all
################################################
http_access allow admin
# Разрешим пользователям внутренней сети доступ к веб-серверу, для отображения статистики и ошибок
http_access allow web_server_users web_server
# Блокировка пользователей, которые превысили лимит (файл user-deny),
# и разрешение доступа только к тем IP и сайтам, которые перечислены в файле
# no_quota_url
http_access allow InternetUsers !banusers
http_access allow no_quota banusers
http_access deny banusers all
http_access deny all
# Cоздадим файл ERR_DENIED. Представляет собой html-страницу с грозными заявлениями о вреде расхищения
# корпоративного трафика. Поместить в папку с другими ошибками (например /usr/local/etc/squid/errors/Russian-1251)
deny_info ERR_DENIED all
########РЕДИРЕКТОР##########################
# Если вы все-таки решили установить rejik
#url_rewrite_program /usr/local/rejik/redirector /usr/local/rejik/redirector.conf
#url_rewrite_children 15
# Директория с ошибками
error_directory /usr/local/etc/squid/errors/Russian-1251
traf_limit.pl
#!/usr/bin/perl
# Довесок на LightSquid Project (c) 2004-2005 Sergey Erokhin aka ESL
# Скрипт создает файл user_deny для ограничения Интернета по трафику
# Автор: Иван Лонин loninia@apksouz.ru 2008 год
use File::Basename;
# Не очень хорошо напрямую писать путь к конфигурационному
# файлу, но не хотелось sh-файл для сron делать
require "/etc/squid/traf_limit/config";
#($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)= localtime(time);
@dat=localtime(time);
$year =1900+$dat[5];
$month=1 + $dat[4];
$filter="$year$month";
#print "$log_path/$filter*\n";
@daylist=glob("$log_path/$filter*");
foreach $daypath (sort @daylist) {
open FF,"<$daypath/.total";
$totaluser=;chomp $totaluser;$totaluser=~s/^user: //;
$totalsize=;chomp $totalsize;$totalsize=~s/^size: //;
while () {
($user,$size,$hit)=split;
$h{$user}{size}+=$size;
$h{$user}{hit}+=$hit;
}
close FF;
}
#
$cummulative=0;
open RES,">$res_file";
print RES "# файл содержит пользователей, превысивших квоту.\n# автоматически переписывается скриптом traf_limit.pl\ndolzhen_bit_odin_user\n";
foreach $user (sort {$h{$b}{size}<=>$h{$a}{size}} keys %h) {
$all4user=$h{$user}{size}/1024/1024;
if ($vip_user{$user}{size} > 0) {
$limit=$vip_user{$user}{size};
}else{
$limit=$all_limit;
}
if ($all4user >= $limit) {
print RES "$user\n";
# print "$h{$user}{size}\n";
};
}
#!/usr/bin/perl
# путь к логам lightsquid
$log_path="/www/lightsquid/report";
# Файл, в который пишутся пользователи, превысившие лимит
$res_file="/usr/local/etc/squid/acl/user_deny";
# Лимит трафика в мегабайтах
$all_limit=1500;
# Привилегированные пользователи с повышенным или пониженным
# лимитом для каждого пользователя строка формата:
#$vip_user={<имя_пользователя}{size}=<лимит_в_мегабайтах>;
$user1="192.168.2.3";
$vip_user{user1}{size}=7000;
# chmod 775 /etc/squid/traf_limit/config
# chmod 775 /etc/squid/traf_limit/traf_limit.pl
# crontab –e
# В 4:55 сбрасывать трафик из коллектора ipcad в логи прокси-сервер
55 04 * * * /usr/local/scripts/ipcad.sh
# В 5:05 снимать статистику LightSquid
05 05 * * * /usr/local/www/lightsquid/lightparser.pl
# В 5:15 запускать скрипт лимита по трафику
15 05 * * * /usr/local/etc/squid/traf_limit/traf_limit.pl
# 5:25 производить ротацию логов
25 05 * * * /usr/local/sbin/squid -k rotate
# Запуск скрипта, удаляющего старые логи
35 05 * * * /usr/local/scripts/rmsquidlogs.sh
#!/bin/sh
rm /usr/local/squid/logs/access.log.0
rm /usr/local/squid/logs/cache.log.0
rm /usr/local/squid/logs/store.log.0
-----------------------------------------------------------------------------------------
Каталог Active Directory. Поиск объектов с помощью PowerShell
Иван Коробко
Листинг 1. Поиск объектов по заданным критериям (VB.NET)
Dim obj As New DirectorySearcher("LDAP://RootDSE")
obj.SearchScope = SearchScope.Subtree
obj.Filter = "(&(objectClass=person)(name=a*)(!objectClass=computer))"
obj.Sort.PropertyName = "cn"
obj.Sort.Direction = SortDirection.Ascending
For Each element As SearchResult In obj.FindAll()
Dim obj2 As DirectoryEntry = element.GetDirectoryEntry()
msgbox obj2.Properties("cn").Value)
Next
Листинг 2. Поиск объектов по заданным критериям (PowerShell)
$obj = new-object DirectoryServices.DirectorySearcher ("LDAP://RootDSE")
$obj.SearchScope = "Subtree"
$obj.Filter = "(&(objectClass=person)(name=a*)(!objectClass=computer))"
$obj.Sort.PropertyName = "cn"
$obj.Sort.Direction = "Ascending"
$obj.FindAll() | %{
$obj2=$_.GetDirectoryEntry()
$obj2.cn
-----------------------------------------------------------------------------------------
Синхронизируем данные между компьютерами с помощью сервисов сетевого хранения
Виталий Банковский
encfs ~/.Dropbox/Private ~/Dropbox.Open
mv ~/.licq ~/Dropbox.Open/
ln -s ~/Dropbox.Open/.licq ~/.licq
./configure
make
make installing
tar -xzvf coda-x.x.x.tar.gz
cd coda-x.x.x
./configure
make
make install
clog username
-----------------------------------------------------------------------------------------
Оборудование Cisco для «самых маленьких»
Сергей Крутилин
Router>show ?
Router>show ip ?
Router#sh conf | include interface
Router#conf t
Router(config)#int et 0
Router(config-if)#ip address 192.168.5.3 255.255.255.0
Router#wr mem
Router#copy tftp: startup-config
Router#copy tftp: running-config
Address or name of remote host []?192.168.5.1
Source filename []?cisco871-strat-config
C:\>telnet 192.168.5.3
Router#conf t
Router(config)#line vty 0 4
Router(config−line)#login
Router(config−line)#password samag
C:\>telnet 192.168.5.3
Router#conf t
Router(config)#enable secret samagsecret
Router(config)#username user secret samaguser
Router(config)#^Z
Router#wr mem
C:\>telnet 192.168.5.3
Router#conf t
Router(config)#ip nat pool Internet 1.2.3.4 1.2.3.4 netmask 255.255.255.248
Router#conf t
Router(config)#ip nat pool Internet 1.2.3.4 1.2.3.6 netmask 255.255.255.248
Router(config)#ip access-list 10 permit 192.168.5.0 0.0.0.255
Router(config)#ip nat insi\de source list 10 pool Internet overload
Router(config)#int et 0
Router(config-if)#in nat inside
Router(config-if)#int et 1
Router(config-if)#in nat outside
Router(config)#ip route 0.0.0.0 0.0.0.0 et 1 (ip route 0.0.0.0 0.0.0.0 Ethernet 1)
Router(config)#ip route 0.0.0.0 0.0.0.0 внешний_IP-адрес_шлюза_провайдера (ip route 0.0.0.0 0.0.0.0 a.b.c.d)
Router(config-if)#^Z
Router#wr mem
Router(config)#ip access-list 10 permit 192.168.5.0 0.0.0.255
Router(config)#ip access-list 101 permit tcp host a.b.c.d host w.x.y.z
Router(config)#ip access-list 101 permit tcp host w.x.y.z host a.b.c.d
Router(config)# no ip access-list 101 permit tcp host a.b.c.d host w.x.y.z
Router(config)# ip access-list extended SamagACL
Router(config-ext-nacl)# permit tcp host a.b.c.d host w.x.y.z
Router(config-ext-nacl)# no permit tcp host a.b.c.d host w.x.y.z
Router(config)#access-list 111 permit tcp any any eq 80
Router(config)#access-list 111 permit tcp any any eq WWW
Router(config)#access-list 111 permit tcp any any eq ?
Router(config)#ip nat inside source static tcp 192.168.5.2 25 a.b.c.d 25 extendable
Router(config)# ip dhcp pool Office
Router(config-dhcp)# network 192.168.5.0 255.255.255.0
Router(config-dhcp)# domain-name samag.ru
Router(config-dhcp)#default-router 192.168.5.3
Router(config-dhcp)# dns-server 192.168.5.2
Router(config-dhcp)#lease 7
Router(config)# ip dhcp excluded-address 192.168.5.3 192.168.5.4
Router(config)#^Z
Router#wr mem
-----------------------------------------------------------------------------------------
Самые распространенные ошибки при программировании на JS
Антон Карев
Листинг 1
1 $(document).ready(function() {
2 $('div.update').click(function() {
3 var updateID = $(this).attr('rel');
4 $.get('/news/', { ref:updateID },
5 function(data) {
6 $(updateID+'Container').append(data);
7 });
8 })
9 });
Листинг 2
Sports News
<р>
р>
Update!
Листинг 3
Sports News
<р>
US GP : Vettel fastest in Austin second practice