WackoWiki: RafaelMalikov/ancor ...

Home Page | Изменения | Новые Комменты | Пользователи | Каталог | Регистрация | Вход:  Пароль:  

Установка стандартного сервера

Оглавление документа

Комплектация:
мать Intel Server Boadr
шасси Сервер с подсистемой Serial ATA RAID
процессор Intel Pentium D
модули памяти 1024 MB DIMM DDR2–533 ECC кол-во 4
диски SATA 80GB кол-во 4
диски SATA 500GB кол-во 1
RAID-контроллер Intel SRCS16, Serial ATA RAID 6 портовый, 64-bit/66MHz, 64MB Cache
CD DVD DVD+/-RW 16x

1. Собираем RAID10

При загрузке рэйд контролера на экране показывает четыре диска и приглашение Намите Ctrl G для входа в настройки, жмем, далее:
– нажимаем(мышью) кнопку Start
– выбираем конфигурация
– выбираем новая конфигурация
– выставляем галочку кастом (потверждаем Да)
– с помощью мыши и кнопки Ctrl выбираем первый и второй винты, жмем добавить в массив
– с помощью мыши и кнопки Ctrl выбираем третий и четвертый винты, жмем добавить в массив
– жмем Принять
– по умолчанию предлагает создать RAID10
– вводим в поле Размер вводим цифирке которые в правом нижнем углу соответсвуют RAID10
– принять, далее
– на вопрос инициализировать рэйд ответить да, некоторе время идет инициализация
– выход, когда попросит перезагружить компьютер контрал аль дел


Это для АЛМ2.4

rpm -Uvh ftp://updates.altlinux.com/Master/2.4/i586/RPMS.updates/libapt-0.5.15cnc6-alt6.M24.2.i586.rpm ftp://updates.altlinux.com/Master/2.4/i586/RPMS.updates/apt-0.5.15cnc6-alt6.M24.2.i586.rpm ftp://updates.altlinux.com/Master/2.4/i586/RPMS.updates/apt-conf-Master-1.16-alt2.noarch.rpm ftp://updates.altlinux.com/Master/2.4/i586/RPMS.updates/alt-gpgkeys-0.3.1-alt1.M24.2.i586.rpm

2. Установка ALC 3.0

Разбивка диска:
/dev/sda
/boot – 256M, в Дополнительно обе галочки, система ext2/3
без точки монтировани – 8192M, в Дополнительно только верняя галочка, система SWAPFS
/ (корень) – 3072M, в Дополнитель все галочки убраты(далее все так), система ext2/3
/usr – 3072M5120M, ext2/3
/var – 61440M, ext2/3
/home – остальное, ext2/3
/dev/sdb
/var/backup – все что есть на диске, ext2/3


Обновление системы:
правим файл /etc/apt/sources.list раскоментируем две строчки

rpm [alt] ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/3.0/ i586 classic
rpm-src [alt] ftp://ftp.altlinux.ru/pub/distributions/ALTLinux/3.0/ i586 classic


правим файл /etc/apt/sources.list.d/distribution.list комментируем строчку

#rpm cdrom:[ALT Linux 3.0.4 Installer (caprifoil)]/ ALTLinux base main


обновляем ключи: идем по ссылке
ftp://updates.altlinux.ru/3.0/i586/RPMS.updates/
берем отуда ссылки на последнии версии пакетов alt-gpgkeys apt-conf и устанавливаем их, на текущей момент делаем так
rpm -Uvh ftp://updates.altlinux.ru/3.0/i586/RPMS.updates/apt-conf-3.0-1.18-alt1.2.noarch.rpm \
ftp://updates.altlinux.ru/3.0/i586/RPMS.updates/alt-gpgkeys-0.3.8-alt5.i586.rpm


после этого делаем
apt-get update && apt-get dist-upgrade


Обновление ядра:
проверяем какое на текущий момент последнее ядро и модули
apt-get install kernel-image-std26-smp
apt-get install kernel-modules-cdfs-std26-smp
apt-get install kernel-modules-subfs-std26-smp


Инсталируем их, на текущий момент:
apt-get install kernel-image-std26-smp#2.6.12-alt11 \
kernel-modules-cdfs-std26-smp#2.6.12-alt1.132620.11 \
kernel-modules-subfs-std26-smp#0.9-alt6.132620.11


Удаляем старое ядро:
apt-get remove kernel-image-std26-up
cd /boot/
rm -f initrd-up.img vmlinuz-up


Правим /etc/lilo.conf
:%s/up/smp/


Иницализируем lilo:
lilo
reboot

3. Настройка демонов.

apt-get install dhcp-server bind-utils shadow-edit bind wget squid samba traceroute

DHCP-SERVER

файл /etc/dhcp/dhcpd.conf

ddns-update-style none;
local-address 192.168.63.1;
authoritative;

subnet 192.168.63.0 netmask 255.255.255.0 {
    option routers          192.168.63.1;
    option subnet-mask      255.255.255.0;

    option nis-domain       "smr.ancor.ru";
    option domain-name      "smr.ancor.ru";
    option domain-name-servers  192.168.63.1;
    option netbios-name-servers 192.168.63.1;
    option netbios-dd-server 192.168.63.1;
    option netbios-node-type 2;

    range 192.168.63.101 192.168.63.200;
    default-lease-time 21600;
    max-lease-time 43200;
}

#host host {
#    hardware ethernet 00:11:0a:ed:44:07;
#    fixed-address 192.168.0.254;
#}

bind(DNS)

в файл /var/lib/bind/etc/rfc1912.conf в начало добавляем

view "internal" {
    match-clients {
                192.168.0.0/16;
                127.0.0.0/8;
        };


в файл /var/lib/bind/etc/local.conf в конец добавляем

zone "." {
                type hint;
                file "/zone/root";
        };

        zone "OffeceName.ancor.ru" in {
                type master;
                file "/zone/db.OfficeName.ancor.ru";
                allow-query { 127.0.0.1; 192.168.0.0/16; };
        };

        zone "0.168.192.in-addr.arpa" in {
                type master;
                file "/zone/db.192.168.0";
                allow-query { 127.0.0.1; 192.168.0.0/16; };
        };
};


создаем зону корневых серверов (что бы не зависить от месного провайдера)
cd /var/lib/bind/zone/
wget ftp://ftp.internic.net/domain/named.root
mv named.root root


создаем зону OffeceName.ancor.ru
vim db.OfficeName.ancor.ru

$TTL 36000
@   IN  SOA OfficeName.ancor.ru. root.OfficeName.ancor.ru. (
        YYYYMMDDHH      ;
        3h              ;
        1h              ;
        1w              ;
        1h      )       ;

            IN  NS  ns.OfficeName.ancor.ru.

@    IN  A   192.168.0.1
ns    IN  A   192.168.0.1
mail        IN  A   192.168.0.1
proxy       IN  A   192.168.0.1

$include db.OficeName.ancor.ru.dyn


vim db.OficeName.ancor.ru.dyn

o101  in a 192.168.0.101
o102  in a 192.168.0.102
.............
o200  in a 192.168.0.200


i=101 ; while [ $i -lt 201 ] ; do echo "n$i IN A 192.168.0.$i" >> db.OficeName.ancor.ru.dyn ; let i=i+1 ; done


создаем обратную зону
vim db.192.168.0

$TTL 36000
@   in soa  OfficeName.ancor.ru. root.OfficeName.ancor.ru. (
    YYYYMMDDHH      ;
    3h              ;
    1h              ;
    1w              ;
    1h      )       ;

    IN  NS  ns.OfficeName.ancor.ru.

1 IN  PTR OfficeName.ancor.ru.

$include db.192.168.0.dyn


vim db.192.168.0.dyn

101  in ptr o101.OfficeName.ancor.ru.
102  in ptr o102.OfficeName.ancor.ru.
.................
200  in ptr o200.OfficeName.ancor.ru.

i=101 ; while [ $i -lt 201 ] ; do echo "$i in ptr n$i.nvkz.ancor.ru." >> db.192.168.0.dyn ; let i=i+1 ; done
for ((i=101; i< 201; i++)) ; do echo "$iDim also lamer" ; done

squid(PROXY)


Создаем файлы

echo "^http://www\.ancor\.ru/" > /etc/squid/msie.acl
echo "bugzilla.altlinux.org" > /etc/squid/https.acl
echo "^http://banner\.job\.ru/" > /etc/squid/banners.acl
echo "^http://www\.porno\.ru/" > /etc/squid/badsites.acl
echo "192.168.0.1" > /etc/squid/supervisor.acl
echo "194.87.11.112" > /etc/squid/blacklist.acl
echo "^http://www\.ancor\.ru/" > /etc/squid/good_url.acl


Создаем файл /etc/squid/squid.conf

hierarchy_stoplist cgi-bin ?

acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

cache_mem 300 MB

cache_dir ufs /var/spool/squid 1536 16 256

auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

refresh_pattern ^ftp:       1440    20% 10080
refresh_pattern ^gopher:    1440    0%  1440
refresh_pattern .       0   20% 4320

acl fileupload req_mime_type -i ^multipart/form-data$
acl javascript rep_mime_type -i ^application/x-javascript$
acl shit  rep_mime_type -i ^application/
acl audio rep_mime_type -i ^audio/
acl video rep_mime_type -i ^video/
acl pdf   rep_mime_type -i ^application/pdf$
acl javas rep_mime_type -i ^application/x-javascript$
acl text  rep_mime_type -i ^text/
acl image rep_mime_type -i ^image/
acl empty rep_mime_type -i ^$
#
acl msie browser MSIE
#
acl msied url_regex     -i "/etc/squid/msie.acl"
acl https dstdomain     -i "/etc/squid/https.acl"
acl bnrs url_regex      -i "/etc/squid/banners.acl"
acl badsites url_regex  -i "/etc/squid/badsites.acl"
acl ancor_zone url_regex  -i ^http://\w+\.ancor\.ru/
#
acl worktime time 08:00-23:59
#
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
acl Jabber_ports port 5222 5223
acl Safe_ports port 80      # http
acl Safe_ports port 21      # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70      # gopher
acl Safe_ports port 210     # wais
acl Safe_ports port 1025-65535  # unregistered ports
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 CONNECT method CONNECT

acl supervisor src "/etc/squid/supervisor.acl"
acl baduser src "/etc/squid/blacklist.acl"
acl good_url url_regex "/etc/squid/good_url.acl"

http_access allow manager localhost
http_access deny manager
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports !Jabber_ports

http_access allow all supervisor
http_reply_access allow all ancor_zone
http_reply_access allow all supervisor
http_access deny CONNECT !https
http_access deny fileupload
http_access deny badsites
http_access deny msie !msied

acl localnet  src 192.168.0.0/16
http_access allow localnet

# And finally deny all other access to this proxy
http_access allow localhost
http_access deny all

http_reply_access allow all good_url
#
http_reply_access allow text
http_reply_access allow image
http_reply_access allow pdf
http_reply_access allow javas
http_reply_access allow empty
http_reply_access deny audio
http_reply_access deny video
http_reply_access deny baduser
http_reply_access deny all

cache_mgr root@OfficeName.ancor.ru

cache_effective_user squid

visible_hostname none

coredump_dir /var/spool/squid

SMB(File sharing)


Останавливаем самбу (по умолчанию запущена):
service smb stop


Создаем каталоги для шарингов

mkdir /home/soft
chmod 777 /home/soft
mkdir /var/share
mkdir /var/share/share
chown :users /var/share/share
chmod 2770 /var/share/share


Копируем в папку sort старнадтрый софт:
cd /home/soft
rsync -a malikov@192.168.7.49:/home/distribs/STANDART/ .
chown root:root /home/soft -R
chmod a+w /home/soft -R


Создаем скрипт для заведения пользователей:
vim /sbin/ua

#!/bin/bash

if [ "$2" == "" ]; then
        echo 
        echo "User Add - create new ANCOR user (Linux, Samba) and set up password."
        echo "Create user at netware first, password has to be the same."
        echo
        echo "Usage: ua [user] [password]"
        echo
        echo "   Ex: ua pupkin 12345"
        echo "  Creates new user with password 12345"
        echo
        exit
fi

if [ "$1" == "root" ]; then
        echo ERROR: You can\'t do it
        exit
fi

/usr/sbin/useradd -g users -s /bin/false -d /home/"$1" -m "$1"

echo "$2" | /usr/sbin/passwd --stdin "$1"

echo -e "$2\n$2\n" | /usr/bin/smbpasswd -a -s "$1"

mkdir -p /var/lib/samba/profiles/$1
chown -R $1:users /var/lib/samba/profiles/$1
chmod 700 /var/lib/samba/profiles/$1

chmod 700 /sbin/ua


Заводим администратора
ua admin passwd
добавляем его в группу netadmin в редакторе vigr


Создаем файл конфигурации самбы /etc/samba/smb.conf:

# Global parameters
[global]
dos charset = CP866
unix charset = UTF-8
display charset = UTF-8
workgroup = ANCOROFFICENAME
server string = Samba server on %h (v. %v)
interfaces = 192.168.0.1
log file = /var/log/samba/log.%m
max log size = 50
add user script = /usr/sbin/useradd -s /bin/false %u
add machine script = /usr/sbin/useradd -d /dev/null -g machines -c 'Machine Account' -s /bin/false -M %u
logon path = \\%L\Profiles\%U
domain logons = Yes
logon script = logon.bat
os level = 64
preferred master = Yes
domain master = Yes
dns proxy = No
wins support = Yes
username map = /etc/samba/smbusers
ldap ssl = no
idmap uid = 10000-20000
idmap gid = 10000-20000
admin users = admin @netadmin
printer admin = admin
hosts allow = 192.168.0. 127.
use sendfile = Yes
# 1C
defer sharing violations = No
veto oplock files = /*.doc/*.xls/*.XLS/*.DOC/

printcap name = cups
load printers = yes

[homes]
comment = Home Directory for '%u'
read only = No
browseable = No

[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon
guest ok = Yes

[Profiles]
path = /var/lib/samba/profiles
read only = No
create mask = 0600
directory mask = 0700
guest ok = Yes
browseable = No

[print$]
path = /var/lib/samba/printers
browseable = yes
read only = yes
write list = @admin root admin

[printers]
comment = All Printers
path = /var/spool/samba
printable = Yes
browseable = Yes
guest ok = yes
writable = no
printable = yes
create mode = 0700
#print command = lpr-cups -P %p -o raw %s -r   # using client side printer drivers.

[soft]
comment = Distributives
path = /home/soft
public = yes
read only = yes
printable = no
create mask = 0744
directory mask = 0755
write list = @netadmin

[share]
comment = OfficeName File Share
path = /var/share/share
read only = No
public = yes
writable = yes
printable = no
create mask = 0660
directory mask = 0770
write list = @users
read list = @users


Создаем скрипт запуска для пользователей:
vim /var/lib/samba/netlogon/logon.bat

@echo off

NET TIME \\OFFICESERVER /SET  /YES

set d=C:
if exist d:\winnt\win.ini set d=D:

start "mozilla" "%D%\program files\mozilla.org\mozilla\mozilla.exe"

if not exist c:\temp mkdir c:\temp

net use j: /delete
net use s: /delete

net use j: \\officeserver\soft
net use s: \\officeserver\share

if exist c:\meta\meta.exe goto metaok

mkdir c:\meta
mkdir c:\meta\data
copy j:\meta\meta.exe c:\meta\
copy j:\meta\meta.ini c:\meta\

:metaok

xcopy /Y j:\meta\meta.exe c:\meta\ > nul
xcopy /Y j:\meta\meta.ini c:\meta\ > nul

cscript J:\auto\audit.vbs


что бы посмотреть sid групп, используем команду net groupmap list


net groupmap modify unixgroup=netadmin ntgroup=Administrators sid=S-1-5-32-544
net groupmap modify unixgroup=netadmin ntgroup="Domain Admins" sid=...
net groupmap modify unixgroup=users ntgroup="Domain Users" sid=...


Установка metasrv


[root@srv root]# adduser nick
[root@srv root]# passwd nick
[root@srv root]# logout
[root@srv root]# su - nick

[nick@srv nick]# mkdir METASERVERDATA
[nick@srv nick]# mkdir metasrv


на devel1:
killall metasrv
killall -9 metasrch
su – nick
rsync -a METASERVERDATA/ nick@metasrv3:/home/nick/METASERVERDATA/
rsync -a metasrv/ nick@metasrv3:/home/nick/metasrv/
exit
su -l -c «/home/nick/metasrv/run» nick

BackUp

Создаем каталоги для бэкапа:
mkdir /var/backup/etc
mkdir /var/backup/etc/tcb
mkdir /var/backup/etc/samba
mkdir /var/backup/home
mkdir /var/backup/share
mkdir /var/backup/lib
mkdir /var/backup/mail


Запускаемые скрипты:
/root/rsync.hourly:

#!/bin/bash

cd /etc

rsync --password-file=~/password -a /etc/passwd /var/backup/etc/
rsync --password-file=~/password -a --delete /etc/tcb /var/backup/etc/
rsync -a /etc/samba/ /var/backup/etc/samba/

for a in /var/share/share /home /var/lib /var/spool/mail ; do
    NAME=`echo $a | perl -ane 's/.*\/([^\/]+)/$1/g; print'`
    cd /var/backup/$NAME
    rm -rf $NAME.5h
    for b in 5 4 3 2; do
        mv $NAME.$(($b-1))h $NAME.${b}h
    done
    cp -al $NAME.0h $NAME.1h
    rsync -a --exclude-from=/root/excludes --delete-excluded --delete $a/ $NAME.0h/
    touch $NAME.0h
done


/root/excludes:

*.bmp
*.BMP
*.jpg
*.JPG
*.MPG
*.mpg
*.gif
*.GIF
*.tif
*.TIF
*.zip
*.ZIP
*.tmp
*.TMP
*.mp3
*.MP3
*.mpeg
*.psd
*.eps
*.rpm
*.iso
*.7z
*.tbz
*.bz2
*.??
*.txt
nick/
soft/


rsync.period:

#!/bin/bash
# ./rsync.period [letter]
# letter - w,d,m,y

cd /var/backup
for a in *; do
    if [ "$a" = "etc" ] ; then
            echo "$a = $a"
    else
        cd $a
        rm -rf $a.3$1
        for b in 3 2 1; do
            mv $a.$(($b-1))$1 $a.${b}$1
        done
        cp -al $a.0h $a.0$1
        touch $a.0$1
        cd ..
    fi
done


Добравляем от root в crontab -e

3 8-22  *  *   1-5  ./rsync.hourly
17  0   *   *  1-5  ./rsync.period d
17  1   *   *   1   ./rsync.period w
20  1   1   *   *   ./rsync.period m

FireWall

В /etc/sysconfig/iptables в секцию
*filter
:OUTPUT ACCEPT [3451908:1922696184]
добавляем:

-A INPUT -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -s 192.168.0.0/255.255.255.0 -p udp -m udp --dport 22 -j ACCEPT
-A INPUT -s 213.33.160.232/255.255.255.248 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -s 213.33.160.232/255.255.255.248 -p udp -m udp --dport 22 -j ACCEPT
-A INPUT -s 62.231.22.160/255.255.255.224 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -s 62.231.22.160/255.255.255.224 -p udp -m udp --dport 22 -j ACCEPT
-A INPUT -d ipp -p tcp -m tcp --dport 389 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -d ipp -p tcp -m tcp --dport 3128 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 21 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 53 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 110 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 139 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 143 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 443 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 445 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 901 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 4559 -j DROP
-A INPUT -d ipp -p tcp -m tcp --dport 22 -j REJECT --reject-with icmp-port-unreachable
-A INPUT -d ipp -p udp -m udp --dport 22 -j REJECT --reject-with icmp-port-unreachable

От Макса для Сахалинского сервера

В секцию
*nat
:OUTPUT ACCEPT [27588:1780733]
добавляем:
-A POSTROUTING -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 29809 -j MASQUERADE
-A POSTROUTING -s 192.168.0.0/255.255.255.0 -d 62.231.22.169 -p tcp -m tcp --dport 25 -j MASQUERADE
-A POSTROUTING -s 192.168.0.0/255.255.255.0 -d 62.231.22.169 -p tcp -m tcp --dport 995 -j MASQUERADE


Распечатываем инструкцию и отправляем сервер


Страницы, ссылающиеся на данную: RafaelMalikov/SmbLdap


 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]
Donate
Время работы: 3.330 s
Использовано памяти: 2.313 Mb