freebsd vds kvm
firewall freebsd
Подсказки о том, как собрать поддержку этих firewall в ядре в /usr/src/sys/conf/NOTES.
Основные опции:
запуск /etc/rc.conf.
задаются:
особенности
nat
шейпинг
Основные опции:
### ipfw
options IPFIREWALL # поддержка файрвола
options IPFIREWALL_VERBOSE # поддержка логирования
options IPDIVERT # поддержка divert-сокетов (нужна для natd)
options DUMMYNET # поддержка шейпера dummynet
### ipf
options IPFILTER # поддержка файрвола
options IPFILTER_LOG # поддержка логирования
### pf
device pf # поддержка файрвола
device pflog # поддержка логирования
device pfsync # отслеживание состояния
options ALTQ # поддержка шейпера ALTQ
запуск /etc/rc.conf.
задаются:
### ipfw
firewall_enable="YES" # поддержка файрвола
firewall_type="/etc/ipfw.rules" # тип (способ инициализации)
natd_enable="YES" # поддержка natd
### ipf
ipfilter_enable="YES" # поддержка файрвола
ipfilter_rules="/etc/ipf.rules" # файл с правилами
ipnat_enable="YES" # поддержка ipnat
ipnat_rules="/etc/ipnat.rules" # файл с правилами NAT
### pf
pf_enable="YES" # поддержка файрвола
pf_rules="/etc/pf.rules" # файл с правилами
особенности
// ipfw
add check-state
add allow tcp from any to any out setup via rl0 keep-state
// ipf
pass out on rl0 proto tcp from any to any flags S keep state
// pf
pass out on rl0 proto tcp from any to any flags S/SA keep state
nat
// ipfw (должен быть запущен natd на порту 8668)
add divert 8668 ip from 10.10.0/24 to any out via bge0
add divert 8668 ip from any to 1.2.3.4 in via bge0
// ipf (правила выносятся в ipnat.rules, запускаются командой ipnat)
map rl0 10.10.0.0/24 -> 1.2.3.4/32
// pf (размещаются в общей конфигурации перед правилами фильтрации)
nat on rl0 from 10.10.0.0/24 to any -> 1.2.3.4/32
шейпинг
// ipfw
add pipe 1 ip from any to 192.168.0.0/24
pipe 1 config bw 128Kbit/s
// pf
altq on rl0 cbq queue q_limited
queue q_limited bandwidth 128Kb cbq(default)
pass quick from any to 192.168.0.0/24 keep state queue q_limited
backup dd freebsd
через файл
на прямую с диска на диск
запись образа на диск
могут быть проблемы записи корневого раздела. может помочь шаманство с sysctl
или создание раздела такой же версии и копированием файлов
dd if=/dev/ad0 of=/iso.iso bs=8K conv=noerror,sync
на прямую с диска на диск
dd if=/dev/ad0 of=/dev/ad1 bs=8K conv=noerror,sync
запись образа на диск
dd if=/iso.iso of=/dev/ad1 bs=8K conv=noerror,sync
могут быть проблемы записи корневого раздела. может помочь шаманство с sysctl
или создание раздела такой же версии и копированием файлов
скорость диска
мерим скорость диска на вдс от Клодо
результат прямо омрачает с клодо.
мерим диск на одном из служебных серверов с RAID1 на сата дисках, ось UBUNTU
мерим диск на сервере под шаред хостинг, дисковая RAID10 SAS диски, ось FreeBSD.
сервер живой, нагружен без малого под 15-20%
мерим скорость записи и чтения на диск файла в 512 Мб на вдс, ось CentOS
мерим скорость записи/чтения на самой вдс ноде… раздел для вдс образов, RAID10 SAS диски. сервер живой, нагружен без малого под 25-30%
ubuntu raid6 12tb, 16 дисков sata по 1тб.
сервер загружен в ночное время. тест проводился с относительно спокойное состояние дисковой.
вывод. пока сам не сделаешь, лучше тебя никто не сделает. думаю скоро будем переходить на ssd диски, как только придет их черед.
www.clodo.ru
результат прямо омрачает с клодо.
[root@ns3 ~]# dd if=/dev/zero of=tempfile count=512 bs=1024k conv=fdatasync
512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 13.9991 s, 38.4 MB/s
[root@ns3 ~]#
мерим диск на одном из служебных серверов с RAID1 на сата дисках, ось UBUNTU
root@icata:/var/log# dd if=/dev/zero of=tempfile count=512 bs=1024k conv=fdatasync
512+0 записей считано
512+0 записей написано
скопировано 536870912 байт (537 MB), 5,47437 c, 98,1 MB/c
root@icata:/var/log#
мерим диск на сервере под шаред хостинг, дисковая RAID10 SAS диски, ось FreeBSD.
сервер живой, нагружен без малого под 15-20%
s1# dd if=/dev/zero of=tempfile count=512 bs=1024k
512+0 records in
512+0 records out
536870912 bytes transferred in 2.044129 secs (250.47 Mbytes/sec)
s1#
мерим скорость записи и чтения на диск файла в 512 Мб на вдс, ось CentOS
[root@ipv6 ~]# dd if=/dev/zero of=tempfile count=512 bs=1024k conv=fdatasync
512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 4.36952 s, 123 MB/s
[root@ipv6 ~]#
мерим скорость записи/чтения на самой вдс ноде… раздел для вдс образов, RAID10 SAS диски. сервер живой, нагружен без малого под 25-30%
[root@vds-node02 tmp]# dd if=/dev/zero of=tempfile count=512 bs=1024k conv=fdatasync
512+0 записей считано
512+0 записей написано
скопировано 536870912 байт (537 MB), 2,74562 c, 196 MB/c
[root@vds-node02 tmp]#
ubuntu raid6 12tb, 16 дисков sata по 1тб.
сервер загружен в ночное время. тест проводился с относительно спокойное состояние дисковой.
root@backup:/home/_script# dd if=/dev/zero of=tempfile count=512 bs=1024k conv=fdatasync
512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 1,89082 s, 284 MB/s
root@backup:/home/_script#
вывод. пока сам не сделаешь, лучше тебя никто не сделает. думаю скоро будем переходить на ssd диски, как только придет их черед.
php5 ffmpeg FreeBSD
ставим ffmpeg
подключаем
phpinfo или php -i
установка проверена под
Port: php5-ffmpeg-0.6.0_7
Path: /usr/ports/graphics/php5-ffmpeg
Info: The ffmpeg shared extension for php
подключаем
/usr/local/etc/php/extensions.ini
extension=ffmpeg.so
phpinfo или php -i
ffmpegffmpeg-php version 0.6.0-svn
ffmpeg-php built on Oct 21 2012 23:22:22
ffmpeg-php gd support enabled
ffmpeg libavcodec version Lavc52.123.0
ffmpeg libavformat version Lavf52.111.0
ffmpeg swscaler version SwS0.14.1
установка проверена под
php -v
PHP 5.3.16 with Suhosin-Patch (cli) (built: Sep 6 2012 18:51:57)
Copyright © 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright © 1998-2012 Zend Technologies
with the ionCube PHP Loader v4.0.10, Copyright © 2002-2011, by ionCube Ltd.
Динамическая маршрутизация в FreeBSD с BIRD, Quagga
under
получить список подсетей из кваги и залить по ftp
http://subnets.ru/wrapper.php?p=7
http://subnets.ru/blog/?p=1728
http://subnets.ru/blog/?p=19
http://subnets.ru/forum/viewtopic.php?f=3&t=371&start=30
hostname AS123456
password zebra
enable password zebra
log file /var/log/bgpd.log
router bgp 123456
bgp router-id 173.45.248.98
bgp log-neighbor-changes
no synchronization
network 48.151.4.0/23
neighbor 173.45.248.97 remote-as 45975
neighbor 178.45.248.97 next-hop-self
neighbor 178.45.248.97 route-map ROSTELEKOM_IN in
neighbor 178.45.248.97 route-map ROSTELEKOM_OUT out
!
ip prefix-list bogons description bogus nets
ip prefix-list bogons seq 15 permit 0.0.0.0/8 le 32
ip prefix-list bogons seq 20 permit 127.0.0.0/8 le 32
ip prefix-list bogons seq 30 permit 10.0.0.0/8 le 32
ip prefix-list bogons seq 35 permit 172.16.0.0/12 le 32
ip prefix-list bogons seq 40 permit 192.168.0.0/16 le 32
ip prefix-list bogons seq 45 permit 169.254.0.0/16 le 32
ip prefix-list bogons seq 50 permit 224.0.0.0/4 le 32
ip prefix-list bogons seq 55 permit 240.0.0.0/4 le 32
ip prefix-list default description default route
ip prefix-list default seq 10 permit 0.0.0.0/0
ip prefix-list our-CIDR-blocks seq 5 permit 48.151.4.0/23 le 32
ip prefix-list upstream-out seq 10 permit 48.151.4.0/23
!
ip as-path access-list 1 permit _6451[2-9]_
ip as-path access-list 1 permit _645[2-9][0-9]_
ip as-path access-list 1 permit _64[6-9][0-9][0-9]_
ip as-path access-list 1 permit _65[0-9][0-9][0-9]_
!
route-map ROSTELEKOM_IN deny 100
match as-path 1
!
route-map ROSTELEKOM_IN deny 110
match ip address prefix-list bogons
!
route-map ROSTELEKOM_IN deny 115
match ip address prefix-list default
!
route-map ROSTELEKOM_IN deny 120
match ip address prefix-list our-CIDR-blocks
!
route-map ROSTELEKOM_IN permit 200
set local-preference 100
!
route-map ROSTELEKOM_OUT permit 100
match ip address prefix-list upstream-out
!
route-map ROSTELEKOM_OUT deny 200
gw# vtysh
Hello, this is Quagga (version 0.99.21).
Copyright 1996-2005 Kunihiro Ishiguro, et al.
gw#
clear Reset functions
configure Configuration from vty interface
copy Copy from one file to another
debug Enable debug messages for specific or all part.
disable Turn off privileged mode command
end End current mode and change to enable mode
exit Exit current mode and down to previous mode
list Print command list
no Negate a command or set its defaults
ping Send echo messages
quit Exit current mode and down to previous mode
show Show running system information
ssh Open an ssh connection
start-shell Start UNIX shell
telnet Open a telnet connection
terminal Set terminal line parameters
traceroute Trace route to destination
undebug Disable debugging functions (see also 'debug')
write Write running configuration to memory, network, or terminal
gw#
получить список подсетей из кваги и залить по ftp
#!/bin/bash
# получить список подсетей AS и залить на фтп
file=/tmp/zebra/peering_as_subnets
echo "sh ip ro bgp" | vtysh | grep 127,0,0.1 | awk {'print $2'} > $file
echo "send $file" | pftp lt.lan
rm $file