Три способа миграции с SPS 2003 на MOSS 2007 Нелли Садретдинова prescan.exe /c preupgradescanconfig.xml /all prescan.exe /c preupgradescanconfig.xml /v URL stsadm -o enumsites -url http://server_name –redirectedsites stsadm.exe -o upgrade -sidebyside -url http://server_name/sites/site_name stsadm -o addcontentdb -url -databaseserver –databasename -databaseuser -databasepassword stsadm -o createweb -url -sitetemplate SPSMSITEHOST -title "Личные узлы" stsadm -o restoressp -title -url -ssplogin -mysiteurl -indexserver -indexlocation -keepindex -sspdatabaseserver -sspdatabasename -ssppassword stsadm.exe –o backup –url http://servername/sitecollectionname -filename SiteCollectionBackup.dat stsadm.exe –o restore –url http://servername/sitecollectionname -filename SiteCollectionBackup.dat begin tran declare @s as nvarchar(4000) SELECT @s=replace (cast(PortalRecoveryBackup as nvarchar(4000)), '"', '') FROM PortalProperties print @s update PortalProperties set PortalRecoveryBackup = @s select PortalRecoveryBackup from PortalProperties -- ок? commit stsadm -o databaserepair -url http://siteurl -databasename databasename -deletecorruption psconfig.exe -cmd upgrade -reghostonupgrade psconfig -cmd upgrade -inplace v2v -wait -force ----------------------------------------------------------------------------------------------------------------- Система управления запросами OTRS Сергей Яремчук $ perl -MCPAN -e shell $ cd /opt $ tar -xjvf otrs-2.2.2.tar.bz2 $ mv otrs-2.2.2 otrs $ cd otrs $ sudo useradd -d /opt/otrs/ -c 'OTRS user' otrs $ cat /etc/apache2/apache2.conf | grep Group $ sudo cp Kernel/Config.pm.dist Kernel/Config.pm $ sudo cp Kernel/Config/GenericAgent.pm.dist Kernel/Config/GenericAgent.pm # Адрес сервера $Self->{DatabaseHost} = 'localhost'; # Название базы данных $Self->{Database} = 'otrs'; # Пользователь и пароль для доступа, для зашифровки пароля можно использовать bin/CryptPassword.pl $Self->{DatabaseUser} = 'otrs'; $Self->{DatabasePw} = 'пароль'; $ sudo perl -cw /opt/otrs/bin/cgi-bin/index.pl $ sudo perl -cw /opt/otrs/bin/PostMaster.pl $ sudo bin/SetPermissions.sh /opt/otrs otrs www-data www-data www-data Alias /otrs-web/ "/opt/otrs/var/httpd/htdocs/" ScriptAlias /otrs/ "/opt/otrs/bin/cgi-bin/" $ sudo cp scripts/apache2-httpd-new.include.conf /etc/apache2/sites-enabled/otrs.conf $ sudo /etc/init.d/apache2 restart $ cat /opt/otrs/doc/test-email-1.box | /opt/otrs/bin/PostMaster.pl # SendmailModule $Self->{"SendmailModule"} = "Kernel::System::Email::SMTP"; $Self->{"SendmailModule::Host"} = "mail.example.com"; $Self->{"SendmailModule::AuthUser"} = "user"; $Self->{"SendmailModule::AuthPassword"} = "password"; ----------------------------------------------------------------------------------------------------------------- Проектируем систему обмена данными Иван Коробко AbeCmd /enable /server MOON "TEST" ----------------------------------------------------------------------------------------------------------------- Используем Windows Messenger в корпоративной среде Иван Коробко declare @@support int select @@support=ResourceId from Resource where UserAtHost=‘help@firm.ru’ INSERT INTO [Contact] select ResourceId, @@support, 1, convert(varbinary,''), convert(varbinary,''), convert(varbinary,'') from Resource Where ResourceId Not In ( select c.OwnerId from Contact as c, Resource as r where c.BuddyId=r.ResourceId and r.UserAtHost=‘help@firm.ru’ ) ----------------------------------------------------------------------------------------------------------------- Мониторинг сети с BixData Сергей Яремчук $ wget -c http://www.bixdata.com/files/BixServer-2.7-linux-1-DB.tar.gz $ sudo tar xzvf BixServer-2.7-linux-1-DB.tar.gz $ wget -c http://www.bixdata.com/files/BixDesktop-2.7-linux-1.tar.gz $ sudo tar xzvf BixDesktop-2.7-linux-1.tar.gz $ adduser bixdata $ cd bixdata $ su bixdata $ nohup ./runserver.sh & $ ./rundesktop.sh $ nohup ./bixagent > out & $ mysqladmin --user=root create bixdata $ mysql -u root bixdata mysql> GRANT ALL ON bixdata.* TO ' bixdata'@'localhost' IDENTIFIED BY 'password' mysql> flush privileges; mysql> quit false false Admin server serverpass true Admin password Admin pass true 17070 7071 17071 192.168.1.58 17070 ----------------------------------------------------------------------------------------------------------------- Один из вариантов настройки спутникового Интернета в Mandriva Linux 2007 Александр Пчелинцев gprsec ping www.ya.ru su - rpm -ihv /mnt/cdrom/i586/media/main/kernel-source-2.6.17.5mdv-1-1mdv2007.0.i586.rpm make xconfig make #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18) #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17) make #!/bin/bash make -C /usr/src/dvb reload chmod +x dvbstart ./dvbstart STV:11595:V:1:29270:0:0 #!/bin/bash dvbnet -p ifconfig dvb0_0 hw ether ./globax globax.conf szap -n 1 -c channels.conf screen -dmS my_cons ./start_inet ----------------------------------------------------------------------------------------------------------------- Строим бюджетный сервер для малых или средних компаний Часть 1 Павел Семенец # cd /usr/ports/net/openldap23-server # make all install clean # /usr/local/sbin/slapasswd # Подключаем схемы include /usr/local/etc/openldap/schema/core.schema include /usr/local/etc/openldap/schema/cosine.schema include /usr/local/etc/openldap/schema/inetorgperson.schema include /usr/local/etc/openldap/schema/nis.schema include /usr/local/etc/openldap/schema/samba.schema include /usr/local/etc/openldap/schema/dnsdomain2.schema pidfile /var/run/openldap/slapd.pid argsfile /var/run/openldap/slapd.args # Подключаем внешние модули хранилищ modulepath /usr/local/libexec/openldap moduleload back_ldbm # Распределяем права доступа к некоторым атрибутам хранилища access to attrs=userPassword by self write by anonymous auth by * none access to attrs=sambaLMPassword by self write by anonymous auth by * none access to attrs=sambaNTPassword by self write by anonymous auth by * none access to * by self write by anonymous read by * none # Описываем хранилище # Указываем, какой тип хранилища используем database ldbm # Задаем контейнер верхнего уровня suffix "dc=example,dc=com" # Задаем контейнер администратора сервера rootdn "cn=root,dc=example,dc=com" # Записываем полученную ранее hash-последовательность для авторизации на сервере rootpw {SSHA}j8ztWZaAL/kSxPei4TT8+pxs6bmqHSdy # Указываем, где находится хранилище directory /var/db/openldap-data # Описываем важные для нас индексы поиска по дереву index objectClass,uidNumber,gidNumber eq index cn,sn,uid,displayName pres,sub,eq index memberUid,mail,givenname eq,subinitial index sambaSID,sambaPrimaryGroupSID,sambaDomainName eq index aRecord pres,eq index associatedDomain pres,eq,sub # cd /usr/ports/net/samba3 # make all install clean # cp /usr/local/share/examples/samba/LDAP/samba.schema /usr/local/etc/openldap/schema/ # cd /usr/ports/dns/powerdns # make all install clean # cd /usr/ports/dns/powerdns-recursor # make all install clean # cd /usr/local/etc/openldap/schema # fetch http://www.linuxnetworks.de/pdnsldap/dnsdomain2.schema slapd_enable="YES" slapd_flags='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap://127.0.0.1/ ldap://172.16.0.1/"' slapd_sockets="/var/run/openldap/ldapi" # cd /usr/local/etc/rc.d # mv slapd.sh 010.slapd.sh # mv pdns.sh 020.pdns.sh # mv pdns-recursor 015.pdnsr.sh # mv samba 025.samba.sh # rm -rf /var/db/openldap-data/* # /usr/local/etc/rc.d/010.slapd start samba_enable="YES" smbd_enable="YES" nmbd_enable="YES" # /usr/local/etc/rc.d/030.samba.sh start # net getlocalsid | awk ‘BEGIN{FS=”is: “}{print $2}’ >~/localsid # cat ~/localsid # /usr/local/etc/rc.d/030.samba.sh stop [global] # Указываем Samba перекодировать имена файлов, для того чтобы и на самом сервере, # и у клиента они отображались в правильной кодировке. Так как у меня на сервере # системная локаль ru_RU.KOI8-R, то следующие 3 строчки будут выглядеть как показано ниже. # Если у вас другая системная локаль, обратитесь к документации Samba для получения # более подробной информации dos charset = 866 unix charset = KOI8-R display charset = KOI8-R # Описываем наш сервер и домен workgroup = EXAMPLE server string = Samba PDC %v (Example.com) netbios name = SRV update encrypted = yes obey pam restrictions = yes # Указываем Samba использовать LDAP passdb backend = ldapsam:ldap://127.0.0.1/ pam password change = yes passwd chat debug = yes # Указываем Samba, где хранить логи log level = 1 log file = /var/log/samba/log.%m max log size = 1000 # Активируем сервер времени для клиентов Samba time server = yes # Указываем несколько параметров для увеличения быстродействия сервера socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192 max xmit = 16644 use sendfile = no large readwrite = no # Указываем скрипты для работы с учетными записями # (cкрипты используются при выполнении команды net) add user script = /usr/local/sbin/smbldap-useradd -a -m "%u" delete user script = /usr/local/sbin/smbldap-userdel -r "%u" add group script = /usr/local/sbin/smbldap-groupadd -p "%g" delete group script = /usr/local/sbin/smbldap-groupdel "%g" add user to group script = /usr/local/sbin/smbldap-groupmod -m "%u" "%g" delete user from group script = /usr/local/sbin/smbldap-groupmod -x "%u" "%g" set primary group script = /usr/local/sbin/smbldap-usermod -g"%u" "%g" add machine script = /usr/local/sbin/smbldap-useradd -w "%u" # Указываем Samba, какой скрипт запускать при логине пользователя logon script = logon.cmd # Указываем Samba, где хранить перемещаемые профили пользователей logon path = \\%L\%U\profile logon drive = Z: logon home = \\%L\%U # Указываем Samba работать в качестве первичного доменного контроллера # и мастера браузера сети domain logons = yes os level = 255 preferred master = yes domain master = yes local master = yes # Описываем, где Samba должна искать информацию об учетных записях в OpenLDAP # и как она там хранится ldap admin dn = cn=root,dc=example,dc=com ldap delete dn = yes ldap user suffix = ou=Users ldap group suffix = ou=Groups ldap machine suffix = ou=Computers ldap passwd sync = yes ldap suffix = dc=example,dc=com ldap ssl = no host msdfs = yes # Указываем логины пользователей, используемые для администрирования сервера admin users = smbroot # Описываем права доступа к серверу hosts allow = 172.16.0. 127. profile acls = yes # Описываем общедоступные ресурсы [netlogon] comment = Network Logon Service path = /home/samba/netlogon/ write list = root "@Domain Admins" browseable = no read only = no guest ok = yes # Описываем директории пользователей [homes] comment = Homefolder path = /home/samba/%U hide files = /.*/ valid users = %S "@Domain Admins" read only = No create mask = 0644 directory mask = 0775 # cd /usr/ports/net/smbldap-tools/ # make all install clean # cd /usr/local/etc/smbldap-tools # Указываем полученный ранее локальный sid, находящийся в файле ~/localsid SID="S-1-5-21-4089634979-3265135400-2542302168" # Указываем имя нашего домена sambaDomain="EXAMPLE" # Указываем подключение к OpenLDAP-серверу (так как у нас # один сервер, то первичный и вторичный сервер указываем одинаковые) slaveLDAP="127.0.0.1" slavePort="389" masterLDAP="127.0.0.1" masterPort="389" # Отключаем ssl tls-шифрование ldapTLS="0" verify="require" cafile="/etc/opt/IDEALX/smbldap-tools/ca.pem" clientcert="/etc/opt/IDEALX/smbldap-tools/smbldap-tools.pem" clientkey="/etc/opt/IDEALX/smbldap-tools/smbldap-tools.key" # Описываем, как хранятся записи в дереве LDAP suffix="dc=example,dc=com" usersdn="ou=Users,${suffix}" computersdn="ou=Computers,${suffix}" groupsdn="ou=Groups,${suffix}" idmapdn="ou=Idmap,${suffix}" sambaUnixIdPooldn="sambaDomainName=EXAMPLE,${suffix}" scope="sub" hash_encrypt="SSHA" crypt_salt_format="%s" # Описываем параметры по умолчанию userLoginShell="/usr/sbin/nologin" userHome="/home/samba/%U" userHomeDirectoryMode="700" userGecos="System User" defaultUserGid="513" defaultComputerGid="515" skeletonDir="/etc/skel" defaultMaxPasswordAge="999" userSmbHome="\\SRV\%U" userProfile="\\SRV\%U\profile" userHomeDrive="Z:" userScript="logon.cmd" mailDomain="example.ru" with_smbpasswd="0" smbpasswd="/usr/bin/smbpasswd" with_slappasswd="0" slappasswd="/usr/sbin/slappasswd" slaveDN="cn=root,dc=example,dc=ru" slavePw="password" masterDN="cn=root,dc=example,dc=ru" masterPw="password" # cd /usr/ports/net/nss_ldap # make all install clean # cd /usr/local/etc # touch nss_ldap.conf base dc=example,dc=com bind_policy soft bind_timelimit 10 host 127.0.0.1 idle_timelimit 3600 ldap_version 3 nss_base_group ou=Groups,dc=example,dc=com?one nss_base_passwd ou=Users,dc=example,dc=com?one nss_base_passwd ou=Computers,dc=example,dc=com?one nss_base_shadow ou=Users,dc=example,dc=com?one nss_connect_policy persist nss_paged_results yes pagesize 1000 port 389 scope one timelimit 30 pam_password md5 ssl no group: files ldap group_compat: nis hosts: files dns networks: files passwd: files ldap passwd_compat: nis shells: files # echo “password” > /etc/ldap.secret # chmod 0600 /etc/ldap.secret # rm -rf /usr/local/etc/samba/* # /usr/local/bin/smbpasswd -w password # /usr/local/sbin/smbldap-populate -a smbroot -b guest # slapcat | grep dn # cd /usr/local/etc && mkdir ldapfiles && cd ldapfiles # touch zone.ldiff # Создаем ветку для харнения записей DNS dn: ou=dns,dc=example,dc=com objectClass: top objectClass: organizationalUnit ou: dns description: domain zones # Создаем ветку для хранения корневой зоны. # Так как корневой зоной для нас является «com», то dn: dc=com,ou=dns,dc=example,dc=com objectClass: dNSDomain2 objectClass: domainRelatedObject dc: com associateddomain: com # Создаем SOA-запись для хранения зоны. # Так как FQDN имя нашего домена «example.com», то dn: dc=example,dc=com,ou=dns,dc=example,dc=com objectClass: dNSDomain2 objectClass: domainRelatedObject dc: example SOARecord: ns.example.com root@example.com 1 1800 3600 86400 7200 NSRecord: ns.example.com MXRecord: 10 mail.example.com ARecord: 172.16.0.1 associatedDomain: example.com # Создаем запись вида ns IN A 172.16.0.1 dn: dc=ns,dc=example,dc=com,ou=dns,dc=example,dc=com objectClass: dNSDomain2 objectClass: domainRelatedObject dc: ns ARecord: 172.16.0.1 associatedDomain: ns.example.com # Создаем запись вида mail IN CNAME ns для Mail-сервера dn: dc=mail,dc=example,dc=com,ou=dns,dc=example,dc=com objectClass: dNSDomain2 objectClass: domainRelatedObject dc: mail CNAMERecord: ns.example.com associatedDomain: mail.example.com # Создаем запись вида ldap IN CNAME ns # для OpenDLDAP-сервера dn: dc=ldap,dc=example,dc=com,ou=dns,dc=example,dc=com objectClass: dNSDomain2 objectClass: domainRelatedObject dc: ldap CNAMERecord: ns.example.com associatedDomain: ldap.example.com # Создаем запись вида srv IN CNAME ns для нашего сервера dn: dc=srv,dc=example,dc=com,ou=dns,dc=example,dc=com objectClass: dNSDomain2 objectClass: domainRelatedObject dc: srv CNAMERecord: ns.example.com associatedDomain: srv.example.com # /usr/local/bin/ldapadd -x -D "cn=root,dc=example, dc=com" -w password -f zone.ldiff # cd /usr/local/etc/pdns/ ldap-host=127.0.0.1 ldap-basedn=ou=dns,dc=example,dc=com ldap-method=strict allow-recursion=127.0.0.1,172.16.0.0/24 launch=ldap local-address=172.16.0.1 recursor=127.0.0.1 config-dir=/usr/local/etc/pdns daemon=yes guardian=yes disable-tcp=no disable-axfr=no module-dir=/usr/local/lib/ socket-dir=/var/run version-string=powerdns daemon=yes local-address=127.0.0.1 local-port=53 quiet=yes pdns_enable="YES" pdns_recursor_enable="YES" # /usr/local/etc/rc.d/015.pdnsr.sh start # /usr/local/etc/rc.d/020.pdns.sh start # nslookup 172.16.0.1 # nslookup example.com # /usr/local/etc/rc.d/030.samba.sh start # net rpc join -U smbroot%password # net prc testjoin -U smbroot%password # net prc info -U smbroot%password # smbclient -L SRV -U smbroot%password ----------------------------------------------------------------------------------------------------------------- fsbackup: удобная и компактная утилита для резервного копирования Максим Тимофеев tar xzf arch.tar.gz home/user/.bash_history ----------------------------------------------------------------------------------------------------------------- Как организовать сервис телерадиовещания в интранет-сети Антон Кустов vlc --ts-es-id-pid --programs=16,17,18,65,75 dvb: \ --dvb-adapter=0 --dvb-frequency=12207000 --dvb-s\ rate=27500000 --dvb-voltage=18 –sout-standard-access=udp\ --udp-caching=600 --sout-standard-mux=ts –sout\ '#duplicate{dst=std{dst=230.1.1.1}, select="program=8201",\ dst=std{dst=230.1.1.2},select="program=8204",\ dst=std{dst=230.1.1.3},select="program=8208",\ dst=std{dst=230.1.1.4},select="program=8211",\ dst=std{dst=230.1.1.6},select="program=8202",\ dst=std{dst=230.1.1.7},select="program=8203",\ scodes=dvbs}' -d #! /bin/sh set -e case "$1" in start) /sbin/modprobe dvb-core dvb_shutdown_timeout=0 /sbin/modprobe skystar2 /sbin/modprobe stv0299 ;; stop) /sbin/modprobe -r skystar2 /sbin/modprobe -r stv0299 /sbin/modprobe -r dvb-core ;; *) echo "Usage: /etc/init.d/dvb {start|stop}" exit 1 esac exit 0 #! /bin/sh while [ 0 ]; do thread=$(tcpstat -o '%B' -F -s 7 | awk -F. '{print($1)}') sig0=$(dvbsnoop -n 1 -timeout 10 -s signal -adapter 0\ | tail -n 1 | awk -F\ '{printf $7}') sig1=$(dvbsnoop -n 1 -timeout 10 -s signal -adapter 1\ | tail -n 1 | awk -F\ '{printf $7}') sig2=$(dvbsnoop -n 1 -timeout 10 -s signal -adapter 2\ | tail -n 1 | awk -F\ '{printf $7}') echo $sig0 $sig1 $sig2 $thread >> /usr/dvb/log if [ $thread -lt 3300000 ] ; then echo $thread echo "Завершаем все процессы VLC" killall -9 vlc echo "Выгружаем DVB-S модули" /etc/init.d/dvb stop echo "Запускам DVB-S модули" /sbin/modprobe dvb-core dvb_shutdown_timeout=0 /sbin/modprobe skystar2 /sbin/modprobe stv0299 echo "Запускаем VLC с новыми DVB-S модулями" vlc --ts-es-id-pid --programs=16,17,18,65,75 dvb:\ --dvb-adapter=0 --dvb-frequency=12207000 –dvb-s\ rate=27500000 --dvb-voltage=18 --sout-standard-access=udp \ --udp-caching=600 --sout-standard-mux=ts\ –sout '#duplicate{dst=std{dst=230.1.3.1},\ select="program=16",dst=std{dst=230.1.3.2},\ select="program=17",dst=std{dst=230.1.3.3},\ select="program=18",dst=std{dst=230.1.3.4},\ select="program=65",dst=std{dst=230.1.3.5},\ select="program=75", sap,name="Radio_Music_Box",\ scodec=dvbs}' -d pidof vlc > vlcpid0 vlc --ts-es-id-pid –programs=8201,8204,8208,8211,8202,8203\ dvb: --dvb-adapter=1 --dvb-frequency=12597000 \ --dvb-srate=27500000 --dvb-voltage=13 \ --sout-standard-access=udp --udp-caching=600 \ --sout-standard-mux=ts –sout '#duplicate{\ dst=std{dst=230.1.1.1},select="program=8201",\ dst=std{dst=230.1.1.2},select="program=8204",\ dst=std{dst=230.1.1.3},select="program=8208",\ dst=std{dst=230.1.1.4},select="program=8211",\ dst=std{dst=230.1.1.6},select="program=8202",\ dst=std{dst=230.1.1.7},select="program=8203",\ scodes=dvbs}' -d pidof vlc > vlcpid1 vlc --ts-es-id-pid --programs=525 dvb: --dvb-adapter=2\ --dvb-frequency=12692000 –dvb-srate=27500000 –dvb-voltage=13\ --sout-standard-access=udp --udp-caching=600 \ --sout-standard-mux=ts --sout '#duplicate{dst=std{\ dst={230.1.2.1},select="program=525"}' -d pidof vlc > vlcpid2 sleep 14 echo `date +%d.%m.%Y"-"%k:%M:%S` SignalLevel[0,1,2,eth1]: $sig0 $sig1 $sig2 $thread\ >> /var/log/dvb/restartlog0 echo $thread – "Значение потока в норме" fi done #EXTINF:0,EuroNews udp://@230.1.1.4 #EXTINF:0,BBC udp://@230.1.1.2 #EXTINF:0,1Kanal udp://@230.1.1.3 ......... Playlist5 ... ... ... ----------------------------------------------------------------------------------------------------------------- Организуем хранение ключей OpenSSH в центральном сервере OpenLDAP Виталий Банковский mkdir certs; cd certs CA.sh -newca openssl req -new -nodes -keyout newreq.pem -out newreq.pem CA.sh -newca cp newreq.pem /usr/local/etc/openldap/certs/slapd.key cp newcert.pem /usr/local/etc/openldap/certs/slapd.cert TLS_CACERTDIR /etc/cacerts/ c_rehash /etc/cacets/ # Корневая структура каталога BASE dc=example,dc=com # Адреса LDAP-серверов. Указывается главный и запасной OpenLDAP-серверы. # Подробности установки и использования такой схемы описываются в разделе # «Репликация и вторичный сервер OpenLDAP» URI ldap://ldap.example.com ldap://ldap2.example.com # Переходить в режим шифрования после подсоединения к серверу openLDAP ssl start_tls tar -xzvf openldap-xxx.tgz ./configure --enable-bdb --with-tls –with-threads \ --disable-ipv6 make depend make make install include /usr/local/etc/openldap/schema/cosine.schema include /usr/local/etc/openldap/schema/nis.schema include /usr/local/etc/openldap/schema/openssh-lpk_openldap.schema TLSVerifyClient never TLSCipherSuite HIGH TLSCertificateFile /usr/local/etc/openldap/certs/slapd.cert TLSCertificateKeyFile /usr/local/etc/openldap/certs/slapd.key TLSCACertificateFile /etc/cacert.pem database bdb suffix "dc=example,dc=com" rootdn "cn=manager,dc=example,dc=com" rootpw super-user-pass directory /var/openldap/unix-accounts index uidNumber,gidNumber,uid,cn,objectClass,memberUid eq # Обьем памяти, выделяемой для кэша: # первое число – объем в гигабайтах; # второе число – объем в мегабайтах; # третье число – количество сегментов кэша. # Если это число – больше единицы, то кэш будет разбит # на указанное количество сегментов set_cachesize 0 52428800 0 # Следующая секция - параметры для лог-файлов. # Все значения указываются в байтах. # Объем кэша для кэширования имен файлов, в байтах set_lg_regionmax 1048576 # Максимальный размер лог-файлов. При превышении # этого параметра произойдет ротация лог-файлов set_lg_max 10485760 # Объем кэша для лог-файлов: set_lg_bsize 2097152 # Путь к директории, где будут хранится лог-файлы set_lg_dir /var/log/openldap/ # Описание компании dn: dc=example, dc=com dc: example objectclass: dcObject objectclass: organizationalUnit ou: Our company name # Описание группы пользователей, # находящихся на третьем уровне иерархии dn: ou=people, dc=example, dc=com ou: people objectclass: organizationalUnit slapadd -l startup.ldif -v -f /usr/local/etc/openldap/slapd.conf /usr/local/libexec/slapd ldapsearch -x -b 'dc=example,dc=com' -ZZ -H ldap://127.0.0.1 dn: uid=chat-domain-com,ou=People,dc=example,dc=com objectclass: top objectclass: person objectclass: organizationalPerson objectclass: posixAccount objectclass: ldapPublicKey description: John Doe Account userPassword: x cn: John sn: Doe uid: chat-domain-com uidNumber: 65535 gidNumber: 65535 homeDirectory: /home/chat-domain-com sshPublicKey: ssh-rsa AAA... sshPublicKey: ssh-rsa BBB... ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDxZpHyn4DqM5T6lxI/p4caUvf84cAXcqFkedbptW TBpK4ADSMrCXNpiivZ5f5ZRDP6WcFmWfvnIPgfC/860xgXhU9I2n/fA+epxc6RqYOXZN3J kBn0JhYWEt6GYpcBPVwV1ShoyA6oqKwx2PAzYaGwRpTTf7I3Ndxlkz2p4gBDwpN61V759O /kWgrRg2kDwPxEDhmkKbMHTSZS3pt10U86bSVWMfr4Q9WqVc4AxrkaAiTZB6GCm2TUvYiM MWQybnhTM2sx7KdihWiY31bIROcPiT+z5+oS/kCoy40gIlaHdGW7W2RPApeTzZxOZcflaN d1myjHHkooDDByVbktPxfP info@example.com ssh-keygen -t rsa|dsa ldapadd -f user1.ldif -x -D "cn=Manager,dc=example,dc=com" \ -H ldap://127.0.0.1 -w 'super-user-pass' tar -xzvf openssh-xxx.tgz cp openssh-lpk-xxx.patch cd openssh-xxx patch -p 2 < openssh-lpk-xxx.patch ./configure --sysconfdir=/usr/local/etc/openssh-ldap \ –prefix=/usr/local/openssh-ldap –with-ldap make make install # Использовать LPK UseLPK yes # Взять параметры работы с сервером OpenLDAP из внешнего файла LpkLdapConf /etc/openssh-ldap.conf replica host=ldap2.example.com starttls=yes binddn="cn=Manager,dc=example,dc=com" bindmethod=simple credentials='super-user-pass' replogfile /var/log/openldap/ldap_replica.log updatedn cn=manager,dc=example,dc=com /usr/local/libexec/slurpd ldapsearch -x -b 'dc=example,dc=com' -v -H ldaps://ldap2.example.com perl -MCPAN -e 'install Net::LDAP' #!/usr/bin/perl use strict; use Net::LDAP; # Адрес сервера OpenLDAP. Адрес указывается в качестве # параметра при запуске этого скрипта my $ldaphost = $ARGV[0]; # Имя учетной записи my $uid = 'chat-example-com; # Имя пользователя и фамилия пользователя my $cn = 'John'; my $sn = 'Smith'; # Расположение учетной записи в иерархии базы LDAP my $dn = 'ou=People,dc=example,dc=com'; # Путь к домашнему каталогу my $homedir = '/home/chat-domain-com'; # Получаем из файла public_keys.txt ключи пользователей, # имеющих аккредитацию для данного ресурса open(F, “public_keys.txt”); my @ssh_keys=; close(F); # Параметры суперпользователя и адрес главного # сервера OpenLDAP my $suser_name = 'cn=manager, dc=example, dc=com'; my $suser_pass = 'super_user_passw'; # Подключение к серверу OpenLDAP с аккредитацией # суперпользователя my $ldap = Net::LDAP->new( $ldaphost ); my $mesg = $ldap->bind( $suser_name, password => $suser_pass); # Добавить учетную запись my $result = $ldap->add( "uid=$uid,$dn", attr => [ 'cn' => $cn, 'sn' => $sn, 'uid' => $uid, 'userPassword' => "x", 'uidNumber' => 65535, 'gidNumber' => 65535, 'homeDirectory' => $homedir, 'sshPublicKey' => @ssh_keys, 'objectclass' => ['top', 'person', 'posixAccount', 'ldapPublicKey' ], ] ) || die "error in installing new account\n"; $result->code && warn "failed to add entry: ", $result->error ; # # Пример для модификации учетной записи # # Поиск записи и получение дескриптора $mesg = $ldap->search(filter => "(uid=$user->{username})", base=>$dn); $mesg->code && die $mesg->error; my $entry = $mesg->entry(0); # Замена параметров учетной записи $entry->replace(sn=>$sn); # Занесение обновленных данных обратно в сервер OpenLDAP my $result = $entry->update($ldap); # # Пример для удаления учетной записи # my $result= $ldap->delete( "uid=$uid,$dn"); print "error: in ldap trying to delete $uid $result->error" if($result->code); (project_id, member_id) PermitRootLogin without-password ----------------------------------------------------------------------------------------------------------------- Защищаем локальные ресурсы сети Андрей Бирюков vdfcryptc -M c:\local.vdf -S 10M -G -r x:\start.bat -D W ----------------------------------------------------------------------------------------------------------------- bugtraq, стр. 87 сайт Google.com -----------------------------------------------------------------------------------------------------------------