книги хакеры / журнал хакер / 103_Optimized
.pdf
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
|||
|
|
X |
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|||
P |
|
|
|
|
|
NOW! |
o |
||||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
|||||
|
|
|
|
|
|
||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
|
.c |
|
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
|
||
|
|
|
|
-xcha |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
>>
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
ХАКЕР.PROw |
to |
|
|
|
|
|
||||
w Click |
|
|
|
|
|
|
||||
|
|
|
|
|
o |
m |
||||
|
w |
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
ОписаниеNetFlowвWikipedia
Сначаламынастроимсенсорынамашинахвсети,затемсконфигурируемколлектор,вкоторыйсенсорыбудутотправлятьинформациюо трафике.Потомрассмотримпримерытого,какспомощьюNetFlow-дан- ных,специальныхутилитдляработыснимиибазовыхзнанийвобласти shell-скриптингаответитьнавопросытипаупомянутыхвыше.Задача эффектнойвизуализацииполученныхданныхвыходитзарамкиэтой статьиибудетрешенавследующихномерахжурнала.
СуществуетмножествопрограммныхреализацийкомпонентовNetFlow под*nix-подобныесистемы.Мыостановимсянаследующих: •softflowd(www.mindrot.org/projects/softflowd)вкачествеNetFlow-
сенсора;
•flow-tools(www.splintered.net/sw/flow-tools)вкачествеутилитдля сбораинформацииотрафикеиработысней.
Выборэтихпрограммобусловленихпопулярностьюивозможностями работыподмножествомвариаций*nix-систем.Существуюттакже программы,заточенныеподкакую-либоконкретнуюоперационку. Например,вслучаеOpenBSDвкачествесенсорарекомендуетсяис-
пользоватьpfflowd(www.mindrot.org/projects/pfflowd),работающий всвязкеспакетнымфильтромPF.Тотжеразработчикпредлагаетflowd (www.mindrot.org/projects/flowd)—маленький,быстрыйибезопасный
NetFlow-коллектор,ккоторомуприлагаетсянаборутилитflowrrdдля отображенийNetFlow-данныхвrrd-базе(длядальнейшейобработкиихс помощьюRRDtool).
Вкачествеколлекторабудемиспользоватьмашинуподуправлением FreeBSD6.СенсорпоставимнашлюзподуправлениемOpenBSD4.1.
Установка и настройка
Установкуflow-toolsнаFreeBSDбудемпроизводитьштатно,изпортов:
$ cd /usr/ports/net-mgmt/flow-tools
$sudo make install clean
ВрезультатебудетустановленамассаутилитдляработысNetFlow. Подробнуюинформациюотом,чтожепоставленоизпорта,можно получить,например,спомощьюкоманды:
$ pkg_info -L flow-tools-0.68_1
Сейчаснасинтересуеттолькооднапрограммаизнабора—flow-capture. Этоиестьтотсамыйколлектор,которыйсобираетинформациюссенсоров.Аргументызапускаследующие:
/usr/local/bin/flow-capture -p /var/run/flow-capture. pid -N 3 -w /var/log/netflows -S 5 192.168.76.146/192.1 68.76.147/8818
СтруктураNetFlow(иллюстрацияизWikipedia)
Здесь/var/log/netflows—каталог,вкоторомсобираютсяNetFlow- данные;-N3—уровеньвложенностикаталоговвэтойпапке.Данные пишутсявформатеYYYY/YYYY-MM/YYYY-MM-DD/flow-file.Запись «192.168.76.146/192.168.76.147/8818»имеетформу«localip/remoteip/ port»,гдеlocalip—локальныйадресколлектора,накоторомflow-capture слушатьвходящиесоединенияотсенсоров;remoteip—адрессенсора (притакойнастройкеflow-captureбудетприниматьсоединениятолькос определенногохоста);port—порт,накоторомслушаетколлектор.Если сенсоровнесколько,можновыставитьremoteipв0(приниматьсоединениясовсеххостов),адоступразграничитьпакетнымфильтром.
Врезультатенашейнастройкиколлекторбудетслушатьнахосту 192.168.76.146(порт8818/udp)иприниматьсоединениясколлектора намашине192.168.76.147.
Осталосьтолькопрописатьколлекторвавтозапуск.Ксожалению,порт flow-toolsнесодержитrc-скриптдлязапускаколлекторавFreeBSD-стиле, поэтомумысамисоздадимflowd.shследующегосодержания:
#vi/usr/local/etc/rc.d/flowd.sh
#!/bin/sh
. /etc/rc.subr
name=flowd rcvar=`set_rcvar`
load_rc_config $name
:${flowd_enable:="NO"}
:${flowd_flags=""}
pidfile=${spamd_pidfile:-"/var/run/flow-capture.pid"} command=/usr/local/bin/flow-capture
command_args=»-p ${pidfile} -N 3 -w /var/log/netflows -S 5 192.168.76.146/192.168.76.147/8818"
stop_postcmd=stop_postcmd
stop_postcmd()
{
rm -f $pidfile
}
run_rc_command "$1"
Незабываемдобавитьзапись«flowd_enable="YES"»в/etc/rc.conf.
xàêåð 07 /103/ 07 |
/ 139 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
C |
|
E |
|
|||
|
|
X |
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
||
|
F |
|
|
|
|
|
|
t |
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
r |
|
P |
|
|
|
|
|
NOW! |
o |
||
|
|
|
|
|
|
||||
w Click |
|
BUY |
>>m |
||||||
to |
|
|
|
||||||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
. |
|
|
|
|
|
.c |
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
df |
|
|
n |
e |
||
|
|
|
|
-xcha |
|
|
|
ХАКЕР.PRO
>>ХАКЕР.
PFFlowd—родственникsoftflowdдляOpenBSDPF
Благодаряизумительнымpkg_toolsустановкасенсоранаOpenBSDнеоб- |
softflowd[26337]: Accumulated statistics: |
|
ременительна.ПрипрописаннойPKG_PATHнабираем: |
Number of active flows: 925 |
|
|
Packets processed: 14552628 |
|
$ sudo pkg_add softflowd-0.9.8 |
||
Fragments: 84 |
||
|
Ignored packets: 1080111 (1080111 non-IP, 0 too short) |
|
Иделовшляпе.Прописатьдемонвавтостарт«по-опенковскому»также |
||
Flows expired: 1013171 (0 forced) |
||
непредставляетпроблем.В/etc/rc.localдобавляем: |
Flows exported: 1980130 in 74625 packets (0 failures) |
«в случае OpenBSD в качестве сенсора рекомендуется использовать pfflowd, работающий в связке с пакетным фильтром PF. Тот же разработчик предлагает flowd
— маленький, быстрый и безопасный NetFlow-коллек- тор, к которому прилагается набор утилит flowrrd для отображений NetFlow-данных в rrd-базе»
#vi/etc/rc.local
if [ -x /usr/local/sbin/softflowd ]; then
echo -n 'softflowd '; /usr/local/sbin/softflowd -i fxp0 -n 192.168.76.146:8818
fi
Здесьfxp0—интерфейс,черезкоторыйпроходиттрафикикоторый будетслушатьсенсор;192.168.76.146:8818—хостипортколлектора,на которыйсенсорбудетотправлятьданныеопотокахтрафика.
Управляем!
Есливсезапущеноиработаеткорректно,тонасенсоремыувидимпри- мерноследующуюинформациюпотекущимnetflow-потокам:
# softflowctl statistics
... <skipped>
Авкаталоге/var/log/netflowsдолжныпоявитьсясобранныеданные:
$ ls -la /var/log/netflows/2007/2007-05/2007-05-14
drwxr-xr-x |
2 root |
wheel |
3584 14 май 18:45 ./ |
drwxr-xr-x |
16 root |
wheel |
512 14 май 00:00 ../ |
— rw-r--r-- |
1 root |
wheel |
19309 14 май 00:15 ft- |
v05.2007-05-14.000001+0400 |
|||
— rw-r--r-- |
1 root |
wheel |
18022 14 май 00:30 ft- |
v05.2007-05-14.001501+0400 |
|||
— rw-r--r-- |
1 root |
wheel |
21379 14 май 00:45 ft- |
v05.2007-05-14.003001+0400 |
|||
— rw-r--r-- |
1 root |
wheel |
20607 14 май 01:00 ft- |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
/ 140 |
xàêåð 07 /103/ 07 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
>>
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
ХАКЕР.PROw |
|
|
|
|
m |
|||||
w Click |
|
|
|
|
|
o |
||||
|
w |
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Страницапроектаsoftflowd
v05.2007-05-14.004501+0400
... <skipped>
Теперьначинаетсясамоеинтересное—то,радичегомы всезатеяли.Вооружившисьутилитамиизнабораflow-tools иминимальнымизнаниямиshell-скриптинга,мыбудем манипулироватьинформациейотрафике,ставяеена всестороннийучет!
Нампонадобятсяследующиеутилиты:
•flow-catдляконкатенациинесколькихnetflow-файлов;
•flow-statдлягенерацииотчетовпоnetflow-файлам;
•flow-printдлявыводаинформацииоnetflow-потокахв текстовомвиде.
Переченьзадач,которыеможнорешатьспомощьюflowtools,ограничиваетсятолькофантазиейадминистратора. Попробуюочертитьтипичныйкругзадач,подкоторые будутнаписаныскрипты:
•Уведомлениеадминистратораопревышениикакой-либо машинойдневноголимитатрафикавNМбсвозможностью блокировкиэтоймашиныпакетнымфильтром«довыясненияобстоятельств».
•Уведомление администратора о превышении ка- ким-либо сервером месячного лимита трафика в N Гб. Информативно и полезно для самоконтроля, например, в ситуации, когда в конторе имеются серверы, а оплата интернета производится по трафику с оплаченным лимитом.
•Детальная,отсортированнаяnetflow-информацияпо трафикузалюбойдень,месяц,год.Удобнадлявыяснения вопросоввроде:«Актоиоткудаунаспятогочислакачнул 800мегабайт?».
•Архивациястарыхnetflow-данных(месячнойдавности). Примеробработкизаписейспомощьюflow-catиflow-stat:
flowcat="/usr/local/bin/flow-cat" flowstat="/usr/local/bin/flow-stat" flows="/var/log/netflows"
$flowcat $flows/$year/$month/$day | $flowstat -f10 -p -S3
Результатом будет таблица из пяти колонок: src ip, dst ip, number of flows, number of bytes, number of packets. Выяс-
нить, кто же превысил лимит, можно, например, так:
SUBJ="$INBOUND TRAFFIC ALERT» MSG="Alert!!! Some of your machines gets more than 100 mbytes today. See details below."
$flowcat $flows/$year/$month/$day | $flowstat -f10 -p -S3 | tail -20 | \ while read SRC DST undef COUNT undef; do
if [ $COUNT -gt 100000000 ]; then
echo -e "$MSG\n$COUNT bytes from $SRC to $DST" | mail -s "$SUBJ" toxa
echo $DST >> /etc/pf.blockedusers
fi done
В этом случае пользователю toxa высылается уведомление о том, что определенная машина выкачала более 100 Мб трафика, и ее адрес заносится в таблицу /etc/ pf.blockedusers. В конфиге пакетного фильтра /etc/pf.conf
имеем:
table <blocked> persist file /etc/ pf.blockedusers
block quick from <blocked> to any
Разумеется, все примеры разумно разнести по соответствующим скриптам и выполнять их с помощью cron(8) с определенной периодичностью. Примеры рабочих скриптов, реализующих означенный функционал, можно найти на нашем диске. z
i
Отмечутриинтересныепрограммыв набореflow-tools(1):
•flow-dscan
—анализирует netflow-потокина предметпопыток сканированияпортов иналичиянекорректносформированных пакетов;
•flow-gen—гене-
рируеттестовые netflow-потоки,
полезнодляотладки;
•flow-rptfmt—поз-
воляетвыводить netflow-данныев HTML.
xàêåð 07 /103/ 07 |
/ 141 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
|||
|
|
X |
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
r |
|
||
P |
|
|
|
|
|
NOW! |
o |
|
|
||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|
|||
w Click |
|
|
|
|
|
ХАКЕР.PRO |
|
||||
to |
>>m |
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
. |
|
|
|
|
|
.c |
|
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
|
||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
-xcha |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
правильногопитания
СОВЕТЫПОДОРАБОТКЕДЕШЕВЫХБЛОКОВПИТАНИЯ
Качественные блоки питания — не то чтобы редкость, но явление отнюдь не повсеместное. Китайские мастера ухитряются собирать блоки питания, выкинув из них максимум деталей, и при этом совершенно не заботятся о последствиях. Ну какое им дело до сбоев сервера или полного выгорания всех его узлов? Вот и приходится брать паяльник в свои лапы и доводить китайское чудо до технологического совершенства.
ытуетмнение,чтовблокпитаниялучшевообщенесоваться, Б асразупокупатьхорошийинадежный,вкоторомвсечто
нужноужесделано.Увы!Такихблоковпитания,по-види- мому,простонесуществует.Конкурентнаяборьбадиктует своисхематическиерешения.Иесликачествофильтрациинапряжения
производителиещехотькак-топринимаютвовнимание(впротивном случаетестовыелабораториитутжезабаняттакойблокпитания),то защитакомпьютераотперенапряженияпрактическиникакиникемне реализована,чтооткрываетогромныйтворческийпростордлякустарнойдоработки,идущейблокупитаниятольконапользу.
Такжеговорят,чтохорошийблокпитанияотличитьотплохогоможно по...весу!Действительно,легкийблокпитанияснадписью«450ватт» идетлесомвместескитайскимиколонкамисзаявленноймощностьюв 1000ватт,носампосебевесничегонезначит!Корпусизтолстогометал- ла,массивныерадиаторы,добротныедросселиитрансформаторы—все это,безусловно,оченьхорошо,носхемотехническиерешениямногих тяжелыхблоковпитанияпростоужасны.Идажевысокаяценаотнюдь непоказателькачества.Дотехпорпокамынезаберемсявовнутрьине пощупаемвсеузлысвоимируками,ничегоконкретногосказатьнельзя. Кстати,практическивсеблокипитанияпостроеныпоодномуитомуже принципу,ипотомуихсхемыдовольнопохожи.
Все эксперименты с блоком питания следует проводить только в
«автономном» режиме (то есть без компьютера), используя в качестве нагрузки резисторы или лампы накаливания соответствующей мощности и контролируя напряжение вольтметром. Без нагрузки блок питания включать недопустимо: даже если он не выйдет из строя, то просто не заведется, а если и заведется, то значения выходных напряжений окажутся весьма далекими от действительности.
Мыглавнымобразомбудемговоритьобюджетныхблокахпитания,установленныхвдомашнихсерверахилисерверахнебольшихорганизаций. Работатьимприходитсявсуровыхусловияхкруглосуточногорежима, зачастуюприповышенныхтемпературах,причемвсеэто—безвсякого присмотра!Неудивительно,чтоблокипитания,едваотработавгарантийныйсрок,выходятизстроя,издесьихможетспаститолькодоработка.
Вентиляторы
Остановка(илизамедлениевращения)вентиляторанеприводитк немедленномуотказублокапитания,однаковызываетперегревегоэлементов,ведущийкнеобратимойдеградациикристалловиускоренному высыханиюэлектролитов(примечание:натанталовыеконденсаторы этонераспространяется,нотольковдешевыхмоделяхихневстретишь).Электронныеключиуходятвутечку,ещебольшеусиливающую разогревэлектролитов.Вточкесоединенияихобкладоксвыводами протекаютдеструктивныехимическиепроцессы,которыеспособству-
/ 142 |
XÀÊÅÐ 07 /103/ 07 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-xcha |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
>>
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
ХАКЕР.PROw |
to |
|
|
|
|
|
||||
w Click |
|
|
|
|
|
|
||||
|
|
|
|
|
o |
m |
||||
|
w |
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Отключениелинии+12Вотштатного |
Принципиальнаясхематипичногоблокапитания |
стабилизатора |
|
ютростуэквивалентногопоследовательногосопротивления(ESR).А сопротивление—это,преждевсего,тепло,рассеиваемоеконденсато- ромиприводящеекеговспучиваниюсотказомотвыполнениясвоих прямыхфункциональныхобязанностей.Хорошо,еслиделокончится срабатываниемзащитыисамоизоляциейблокапитания.Хуже,еслив немчто-топробьетивспыхнетлокальныйпожар,последствиякоторого довольнопредсказуемы.Нонебудемогрустном.
Беремлюбой(подходящийпогабаритам)вентиляторсдатчикомвращенияивыводимегонаматеринскуюплату,чтопозволяетвестипостоянныймониторингоборотовкакштатнымисредствами(спомощьюBIOS), такиразличнымиутилитами.Нетакужсложнонаписатьпрограмму, отправляющуюsmsнателефонадминистратора,еслиоборотыупадут нижедопустимогоуровня.
Ещелучше—закрепитьнапереднейстенкеблокапитания(той,чтобли- жекCD/DVD-приводу)второйвентилятор,дующийвтомженаправле- нии,чтоипервый(какправило,выдувающийвоздухизкорпусанаружу). Этотвторойвентиляторнастоятельнорекомендуетсянакрытьрадиаторомотпроцессора,чтобыегоребра(гнутые,конечно)превратилисьв своеобразнуюловушкудляпыли,котораябудетоседатьнаничегонеох- лаждающемрадиаторе-сетке,аненарадиаторахвнутриблокапитания, теплоотдачакоторыхотэтогозначительноуменьшается.
Устранениеперекосанапряжения
Практическивсебюджетныеблокипитанияимеюткрайнепримитивную цепьобратнойсвязи,приводящуюкперекосунапряженийполиниям +5и+12В.Стабилизатор,собранныйнаШИМ-микросхеме(ШИМрас- шифровываетсякак«широтно-импульсныймодулятор»),воченьгрубом приближенииможноуподобитьоперационномуусилителю,охваченномуотрицательнойобратнойсвязью,соединяющейвходсвыходом. Приувеличениинапряжениянавыходесигналнавходеуменьшается,в результатечеговыходнойсигналпадает.И,соответственно,наоборот,за счетчегоиобеспечиваетсястабилизация.
Еслибыблокпитаниявыдавалтолькооднонапряжение(иливнемстояло быдвеШИМ-микросхемы),никакихпроблемнебылобы.Ноунасесть всегооднаШИМ-микросхемаидвавыходныхнапряжения:+5и+12В (линию3,3Вмыврасчетнеберем,посколькуонаобычнозапитывается ототдельногостабилизатора,алинии-5и-12Вчащевсеговообщенеста- билизированы;впрочем,откитайцевможноожидатьвсего,втомчислеи нестабилизированных3,3В).
Чтомыимеем?Чтобыхотькак-тозаставитьстабилизаторфункциониро- вать,пообратнойсвязинаШИМ-микросхемуподаетсяусредненноена- пряжение,снимаемоеделителемслиний+5и+12В.Приравномерном распределениинагрузкимеждуобеимилиниямиблокпитанияработает
нормально.Новтом-тоидело,чтонагрузкаредкобываетравномерной, ипотомублокипитанияискусственнозатачиваютсяпроизводителемпод типичнуюконфигурациюрабочейстанции,котораясущественноотличаетсяотконфигурациисервера,доверхузабитогожесткимидисками, запитаннымиотлинии+12В.
Какследствие,влинии+12Ввозникаетпровал,исреднеенапряжение падает.Стабилизаторреагируетнаэтоповышениемнапряженияна линии+12В,новместеснейподнимаетсяи+5В,причемзначительно сильнее!Сдругойстороны,еслилиния+5Внедогружена,нанейобразуетсяизбытокнапряжения,ана+12Ввозникаетпровал,приводящийк нестабильнойработежесткихдисковизачастуюкпотереданных.
Всерверныхблокахпитанияэтапроблемарешаетсявведениемвторого трансформатораивтороймикросхемыШИМ,которые,междупрочим, стоятденег!Воткитайцынанихиэкономят.Темнеменееустановить дополнительныйстабилизаторналинию+12Вможноисамостоятельно. Почемуименнона+12В,анена+5В?Деловтом,чтомаксимальныйток налинии+5ВпоATX-спецификацииможетдостигать30ампер,стаби- лизациякоторыхявляетсясложнойинженернойзадачей,фактически требующейсозданиявторогоблокапитания.Втожевремяпредельно допустимыйтокналинии+12Всоставляетвсего3-4ампера,скоторыми легкосправляетсядешевыйлинейныйстабилизатор.
Цельюдоработкиблокапитанияявляетсяотключениелинии+12Вот штатногостабилизаторасжесткойфиксациейлинии+5В,чтоосущест- вляетсяподборомсопротивлениявцепиобратнойсвязиШИМ-микро- схемы.Другимисловами,блокпитаниябудетстабилизироватьтолько линию+5В,аслинией+12Вмыразберемсясами.
Конденсаторыивсе,чтоснимисвязано
Высыханиеэлектролитическихконденсатороввцепяхфильтров приводиткпотереемкостии,какследствие,кувеличениюамплитуды пульсаций,негативносказывающемсянастабильностиработыпроцес- сора,оперативнойпамятиивзначительноменьшейстепени—жестких дисков.Привысыханииконденсатороввцепяхуправленияинтегральны-
Отличия серверного БП от обычного
•раздельнаястабилизациялиний+5и+12В;
•защитаэлектронныхключейотпробояиливходавразнос;
•защитаБПоткатастрофическогоперегреваи/иливозгорания;
•усиленнаясистемавентиляциидлякруглосуточногорежимаработы;
•ограничениезарядноготокаэлектролитовнаматеринскойплатеи жесткихдисках;
•защитаблокапитанияоткороткихзамыканий(каквнутренних,таки внешних).
xàêåð 07 /103/ 07 |
/ 143 |
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
|||
|
|
X |
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
|||
|
F |
|
|
|
|
|
|
t |
|
||
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
r |
|
|
P |
|
|
|
|
|
NOW! |
o |
|
|||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
>>m |
|
||||
w Click |
to |
|
|
|
ХАКЕР.PRO |
||||||
|
|
|
|
||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
|||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
|||
|
|
|
|
-xcha |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
Принципиальнаясхемапростоголинейногостабилизаторана12В
мипреобразователями(конверторами)напряжения,частотапоследних растетиможетдостигатькритическивысокихвеличин,чтопагубно сказываетсякакнасамихпреобразователях,такинакачествепитающего напряжения.
Последствиявысыханияэлектролитовнабазахключевыхтранзисторов имеютвесьмадалекоидущиепоследствия.Собственноговоря,сами конденсаторыпонадобилисьзатем,чтобыположительноенапряжение набазахтранзистороввозникалотолькоприподачеоткрывающих импульсов.Призакрывающихимпульсах(равнокакивпаузахмежду импульсами)конденсаторыобеспечиваютотрицательноенапряжение, гарантированнозапирающеетранзисторитемсамымзащищающееего откоммутационныхпомех,которыенеизбежновозникаютприподобных переключениях.
Дляэтогодостаточноемкостив1мкФ(иличутьбольшей)спробивнымнапряжениемконденсаторав50В.Однакосовременемемкость постепенноуменьшается,и,когдаонадостигает0,1-0,5мкФ,впаузах междукоммутативнымиимпульсаминапряжениенабазевплотную приближаетсякнулевойотметке,врезультатечеготранзисторы закрываютсятолькопризапирающихимпульсах.Учитывая,чтоконеци началоимпульсоввсегдасопровождаетсякоммутационнымивыбросами,которыемогутбытькакположительными,такиотрицательными, ключевыетранзисторыстановятсяпрактическинеуправляемыми
иначинаютхаотичнооткрыватьсяизакрываться,врезультатечего возникаетугрозаодновременногооткрытияобоихключейсразу,аэто сквознойтокипробой.
Такчтоеслиблокпитанияужепоработалкакое-товремя,всеэлектро- литическиеконденсаторырекомендуетсяпоменятьнатанталовыеили простолюбыедостойные.Приэтомследуетпроверитьемкостьконденсатороввовходныхфильтрах.Жадныекитайцыобычноеене«добирают». Длястабильнойработыблокапитаниянеобходимоиметькакминимум 1мкФнакаждыйватт(тоесть470мкФдля400 ваттногоблокапитания вполнедостаточно).Пробивноенапряжениедолжнобытьнениже400В. Всеэлектролитическиеконденсаторынастоятельнорекомендуется зашунтироватькерамическимисемкостьюпорядка0,33мкФипробивнымнапряжением,взятымсзапасом.Деловтом,чтоэлектролиты крайнеплохопропускаютвысокочастотнуюсоставляющую,оказываяей большоесопротивление,асопротивление,какужеговорилось,означает рассеиваниетеплаинеминуемыйразогрев,врезультатекоторогопроцессывысыханияидутударнымитемпами.Керамическиеконденсаторыже беспрепятственнопропускаютвысокочастотнуюсоставляющую,просто
иэлегантнорешаяэтусуровуюпроблему.Кстати,количествокерамикив блокепитаниякосвеннопозволяетсудитьокачествепоследнего.Чемее больше,темлучше.
Ипоследнее.Электролиты,расположенныевблизирадиаторов,непомешаетизолироватькусочкамипаронита(илилюбымидругимитеплоизоляторами),однаконивкоемслучаенестоитзакатыватьконденсаторв паронитцеликом!Отэтогоемутолькохужестанет.
Защитаблокапитанияот«козы»
Короткоезамыкание(сокращенноКЗ)—однаизсамыхнеприятный вещей,которыемогутслучитьсясблокомпитания.С«козой»обычно справляютсяпосредствомплавкогопредохранителя.Проблемавтом, чтоеслиБПподдерживаетнескольковходныхнапряжений(акакправило,онихподдерживает,вовсякомслучаевконструктиве),тономинал
Номиналырезисторовдлясозданияиспытательнойнагрузки
предохранителярассчитываетсянатокнаименьшегонапряжения (обычно110В).Апосколькумощностьравнапроизведениютокананапряжение,топрипереходена220Впредохранительработаетсбольшим запасом,которыйможнобылобыиуменьшить,еслибыне...начальный токзарядаэлектролитическихконденсаторов.
Решениесостоитвовключениирезисторананесколькодесятковомов последовательноспредохранителем.Токпоследнеготеперьможно уменьшитьилиже...вовсеисключитьегоизсхемы,посколькурезистор будетработатькакпредохранитель,ограничиваятоккороткогозамыкания.Естественно,мощностьрезисторадолжнабытьдостаточнадля того,чтобыон...сгорелпри«козе»,еслижеоннесгорит,занегосгорят другие,гораздоболеедорогостоящиеэлементы.
Рассчитатьнеобходимыйноминалрезистораоченьпросто.Берем datasheetнаключевыетранзисторыисмотримпредельнодопустимыйток.Например,дляблокапитания,собранногонабазе2SC4242, техническиехарактеристикиможнопочерпнутьотсюда:www. datasheetarchive.com/search.php?q=2SC4242&sType=part.Изспеци-
фикацииследует,чтопредельнодопустимыйтокравенсемиамперам. Делим370Вна7ампериполучаем,чторезисторана60Омбудетвполне достаточно.
Спрашиваешь,откудавзяласьвеличина370В,когдавсетиунасвсего 220В?Такведьнамостовомвыпрямителепослесглаживанияфильтром действующеенапряжениеувеличиваетсяв1,7раз,а220Вх1,7==374 В.Естественно,чемвышесопротивление,тембольшенанемпадение напряжения,иеслиперестараться,блокупитанияпридетсяоченьтуго.В лучшемслучаеонбудетработатьвнештатномрежиме,вхудшем—прос- тонесможетобеспечитьнадлежащеекачествопитания.Поэтомубрать сопротивлениесзапасомнестоит.Здесьлучшенедобрать,чемперебрать.Сдругойстороны,дажерезисторв10Омограничиттоккороткого замыкания,изащита(еслитаковаяпредусмотрена)имеетвсешансы сработатьдотого,каквылетятключевыетранзисторы.Авотплавкийпредохранитель,увы,оченьчасторасплавляетсяужепослетого,какпогаснут последниеязыкипламенииблокпитаниявыгоритдотла.
Вцеляхпротивопожарнойбезопасностивовходнуюцепьблокапитания желательнопоставитьтерморазмыкательградусовна100поЦельсию, размещенныйрядомссиловымиэлементами,наслучайихкатастрофическогоперегрева.
Заключение
Разумеется,мыохватилидалеконевсеаспектыдоработкисерверных блоковпитания,однакозаваливатьчитателямассойготовыхрецептов тоженелучшийвариант.Главное—датьтолчок.Показать,чтобюджет- ныесхемотехническиерешениядалекиотсовершенстваимогутбыть улучшенывесьмапростымиидешевымисредствами.Аужзавыбором конкретныхреализацийделонестанет!z
6 аргументов против обычного БП в серверах
1.Ухудшаюткачествопитанияужепосленесколькихлетэксплуатации.
2.Подверженывозгораниюилишеныпротивопожарныхсредств.
3.Нерассчитанынакруглосуточнуюработубезприсмотра.
4.Страдаютхроническимперекосомполиниям+5и+12В.
5.Несправляютсяспитаниеммножестважесткихдисков.
6.НеотвечаютТУ,предъявляемымдлясерверов.
/ 144
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
|
|
|
|||
|
|
X |
|
|
|
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
|
|
|
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
r |
|
|||||
P |
|
|
|
|
|
NOW! |
o |
|
||||||
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|
|
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
|
|||||||
|
|
|
|
|
|
|
||||||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
|
|
|
. |
|
|
|
|
|
.c |
|
|
|
|
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
|
|
|
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|
|
|
|||
|
|
X |
|
|
|
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
|
|
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
r |
|
|
|
||
P |
|
|
|
|
|
NOW! |
o |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
|
|
|
||||
|
|
|
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
|
|
|
. |
|
|
|
|
|
.c |
|
|
|
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
|
|
|
df |
|
|
n |
e |
|
|
|
|
||
|
|
|
|
-xcha |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hang |
e |
|
|
|
|
|
|
|
|
C |
|
E |
|
|
|||
|
|
X |
|
|
|
|
|
|||
|
- |
|
|
|
|
|
d |
|
||
|
F |
|
|
|
|
|
|
t |
|
|
|
D |
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
r |
||
P |
|
|
|
|
|
NOW! |
o |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
BUY |
|
|
|||
|
|
|
|
to |
|
|
|
|
|
|
w Click |
|
|
|
|
|
m |
||||
|
|
|
|
|
|
|||||
w |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
o |
|
|
. |
|
|
|
|
|
.c |
|
||
|
|
p |
|
|
|
|
g |
|
|
|
|
|
|
df |
|
|
n |
e |
|
||
|
|
|
|
-x cha |
|
|
|
|