Archive

Posts Tagged ‘FreeBSD’

настройка bind

December 9th, 2008
echo "named_enable="YES"" >> /etc/rc.conf

прописать зону (взять образцовую)

/etc/rc.d/named forcestart

Образцовая зона:

$TTL 3600
domain.com.    IN    SOA    ns1.domain.com.    root.domain.com.    (
20010610    ; Serial
10800        ; Refresh
3600        ; Retry
604800        ; Expire
86400    )    ; Minimum TTL

@       IN      NS      ns1.domain.com.
@       IN      NS      ns2.domain.com.
ns1     IN      A       1.2.3.1
ns2     IN      A       1.2.3.1
@       IN      A       1.2.3.1
*       IN      A       1.2.3.1
@       IN      MX 10 mail.domain.com.

Можно использовать такой скрипт для добавления доменов (create_dns.sh):

#!/bin/sh

# first param - domain, Second - IP

# Domains base
BASE="/etc/namedb"

sed -e "s/domain.com/$1/g" "$BASE/master/sample" > "$BASE/master/$1.db.tmp"
sed -e "s/1.2.3.1/$2/g" "$BASE/master/$1.db.tmp" > "$BASE/master/$1.db"
echo "zone \"$1\" { type master; file \"$BASE/master/$1.db\"; };" >> $BASE/named.conf
rm "$BASE/master/$1.db.tmp"

service named reload
# /etc/rc.d/named forcerestart

Для массового добавления доменов:

#!/bin/sh

# Domains base
BASE="/etc/namedb"
IP="3.3.3.3"

cat /home/adwedes/dnslist| while read domain; do

    sed -e "s/domain.com/$domain/g" "$BASE/master/sample" > "$BASE/master/$domain.db.tmp"
    sed -e "s/1.2.3.1/$IP/g" "$BASE/master/$domain.db.tmp" > "$BASE/master/$domain.db"
    echo "zone \"$domain\" { type master; file \"$BASE/master/$domain.db\"; };" >> $BASE/named.conf
    rm "$BASE/master/$domain.db.tmp"

done

/etc/rc.d/named forcerestart

dns, FreeBSD , ,

make.conf

December 9th, 2008
WITHOUT_X11=yes
WITHOUT_IPV6=yes

FreeBSD ,

часовой пояс

December 8th, 2008

tzsetup, первый вопрос – NO
ребут
ntpdate pool.ntp.org

или

ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

FreeBSD ,

синхронизация времени

December 8th, 2008

в crontab

12      0       *       *       *       root    /usr/sbin/ntpdate pool.ntp.org > /dev/null

FreeBSD ,

установка gmirror

December 8th, 2008

обновление freebsd

December 8th, 2008

Обновление системы. сделать (обновление в рамках текущего релиза, работает только с RELEASE)

freebsd-update fetch
freebsd-update install

Обновление портов, первоначально

portsnap fetch
portsnap extract
portsnap update

в крон:

/usr/sbin/portsnap cron > /dev/null
/usr/sbin/portsnap update > /dev/null

FreeBSD ,

включение ipfw

December 8th, 2008
firewall_enable="YES"
firewall_script="/usr/local/etc/ipfw.rules"

создать файл с правилами, проверить что в них нам будет доступ по ssh. Например такой:

#!/bin/sh

ipfw -q -f flush
cmd="ipfw -q add "
sshport="222"

# remote control
$cmd 150 allow tcp from 1.2.3.1 to me dst-port $sshport

# services
$cmd 1000 allow icmp from any to any
$cmd 1020 allow tcp from any to me dst-port 21,25,80
$cmd 1021 allow udp from any 53 to me
$cmd 1022 allow udp from any to me 53
$cmd 1023 allow udp from any to me 161

# general
$cmd 1035 allow ip from any to any via lo0
$cmd 1040 allow ip from me to any
$cmd 1050 allow ip from any to any established

# all traffic for some hosts
$cmd 1070 allow ip from 1.2.3.1 to me
/etc/rc.d/ipfw forcestart &

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

Перед включением рекомендуется поставить задачу в кронтаб, на всякий случай, чтобы сработала через пару минут:

25 22 * * * root ipfw -q add 10 allow all from any to any

FreeBSD ,

loader.conf

December 8th, 2008

в loader.conf если система i386

kern.maxdsiz=1073741824
kern.dfldsiz=1073741824
kern.maxssiz=1073741824

# если активно используется sendfile в nginx то стандартного количества буферов может не хватать. см netstat -m

kern.ipc.nsfbufs=30240

### только если планируется десятки тысяч соединений. для i386 надо в ядро options KVA_PAGES=512
### vm.kmem_size=1073741824
при любой системе (надо ли? вроде как повышает вероятность ддоса)

accf_data_load="YES"
accf_http_load="YES"

FreeBSD , , ,

RSS-подписка