Проект Thinstation. Теория и практика успешного внедрения тонких клиентов Артём Ильин root@ubuntu:~# tar xvjf Thinstation-2.2.2.tar.bz2 sa@ubuntu:~$ sudo -i [sudo] password for sa: root@ubuntu:~# gedit /home/sa/thin/build/Thinstation-2.2.2/build.conf root@ubuntu:~# ./build Пример файла thinstation.hosts # HOST MAC GROUPS COMMENTS thinstation1 000103014152 1920@60 term2 fdd # IVANOV thinstation2 000103014152 1024@60 term1 usb # PETROV Пример файла thinstation.conf.1024@60 SCREEN_RESOLUTION="1024x768" #разрешение экрана SCREEN_HORIZSYNC="30-65" #горизонтальная частота (Khz) SCREEN_VERTREFRESH="60" #вертикальная частота (Hz) SCREEN_COLOR_DEPTH="16" #число бит на пиксель (8,16,24) Пример файла thinstation.conf.thinstation1 FREERDP_USERNAME="Ivanov" ----------------------------------------------------------------------------------------------------------------- Linux-HA-терминальный кластер для работы с «1C» 8.2 Алексей Камнев alias bond0 bonding options bond0 miimon=100 mode=3 DEVICE=bond0 BOOTPROTO=none ONBOOT=yes NETWORK=192.168.0.0 IPADDR=192.168.0.1 # на втором узле IPADDR=192.168.0.2 NETMASK=255.255.255.0 USERCTL=NO service network restart yum install drbd kmod-drbd} global { usage-count no; } resource r0 { protocol C; startup { wfc-timeout 0; degr-wfc-timeout 120; } disk { on-io-error detach; } net { cram-hmac-alg "sha1"; shared-secret "Secret";} syncer { rate 10M; } on lw { device /dev/drbd0; disk /dev/sda2; address 192.168.0.1:7788; meta-disk internal; } on lw2 { device /dev/drbd0; disk /dev/sda2; address 192.168.0.2:7788; meta-disk internal; } } resource r1 { ...аналогично r0 только для устройства /dev/sda5 } drbdadm create-md r0 drbdadm create-md r1 service drbd start drbdadm -- --overwrite-data-of-peer primary all watch -n 1 cat /proc/drbd mkfs.ext3 /dev/drbd0 mkfs.ext3 /dev/drbd1 yum localinstall\ 1C_Enterprise82-common-8.2.11-236.i386.rpm\ 1C_Enterprise82-common-nls-8.2.11-236.i386.rpm\ 1C_Enterprise82-crs-8.2.11-236.i386.rpm\ 1C_Enterprise82-crs-nls-8.2.11-236.i386.rpm\ 1C_Enterprise82-server-8.2.11-236.i386.rpm\ 1C_Enterprise82-server-nls-8.2.11-236.i386.rpm\ 1C_Enterprise82-ws-8.2.11-236.i386.rpm\ 1C_Enterprise82-ws-nls-8.2.11-236.i386.rpm —nogpgcheck yum localinstall\ postgresql-8.4eter-8.4.4-eter1.1centos.i586.rpm\ postgresql-8.4eter-contrib-8.4.4-eter1.1centos.i586.rpm\ postgresql-8.4eter-server-8.4.4-eter1.1centos.i586.rpm --nogpgcheck su postgres initdb -D /var/lib/pgsql/data --locale=ru_RU.UTF-8 exit local all all trust host all all 127.0.0.1/32 trust host all all 0.0.0.0/0 md5 psql -U postgres -c "ALTER USER postgres PASSWORD 'secret'" service postgresql start service srv1cv82 start yum install heartbeat logfacility daemon node lw node lw2 keepalive 1 warntime 10 deadtime 30 initdead 120 udpport 694 ucast eth0 192.168.1.1 ucast eth0 192.168.1.2 ucast bind0 192.168.0.1 ucast bind0 192.168.0.2 auto_failback off ping 192.168.1.254 # Проверка доступности сетевой коммутатора respawn hacluster /usr/lib/Heartbeat/ipfail crm off lw IPaddr::192.168.1.10/24/eth0 lw DRBDdisk::r0 Filesystem::/dev/drbd0::/var/lib/pgsql/data::ext3 postgresql lw DRBDdisk::r1 Filesystem::/dev/drbd1::/home::ext3 ----------------------------------------------------------------------------------------------------------------- Проект GOsa². Система централизованного управления ИТ-инфраструктурой Сергей Яремчук $ sudo apt-cache show gosa | grep – I version deb http://oss.gonicus.de/pub/gosa/debian-etch/ ./ deb http://oss.gonicus.de/pub/gosa/debian-squeeze/ ./ $ sudo apt-get install gosa gosa-desktop $ sudo apt-get install slapd ldap-utils gosa-schema $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/cosine.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/nis.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/inetorgperson.ldif $ nano example.org.ldif # Загружаем модули dn: cn=module,cn=config objectClass: olcModuleList cn: module olcModulepath: /usr/lib/ldap olcModuleload: back_hdb.la # Установка базы данных dn: olcDatabase=hdb,cn=config objectClass: olcDatabaseConfig objectClass: olcHdbConfig olcDatabase: {1}hdb olcSuffix: dc=example,dc=org olcDbDirectory: /var/lib/ldap olcRootDN: cn=admin,dc=example,dc=org olcRootPW: passwd olcDbConfig: set_cachesize 0 2097152 0 olcDbConfig: set_lk_max_objects 1500 olcDbConfig: set_lk_max_locks 1500 olcDbConfig: set_lk_max_lockers 1500 olcDbIndex: objectClass eq olcLastMod: TRUE olcDbCheckpoint: 512 30 olcAccess: to attrs=userPassword by dn="cn=admin,dc=example,dc=org" write by anonymous auth by self write by * none olcAccess: to attrs=shadowLastChange by self write by * read olcAccess: to dn.base="" by * read olcAccess: to * by dn="cn=admin,dc=example,dc=org" write by * read $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f example.org.ldif SASL/EXTERNAL authentication started SASL username: gidNumber=0+uidNumber=0,cn=peercred cn=external,cn=auth SASL SSF: 0 adding new entry "cn=module,cn=config" adding new entry "olcDatabase=hdb,cn=config" $ cd /etc/ldap/schema/gosa $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f samba3.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f gosystem.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f gofon.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f goto.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f gosa-samba3.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f goto-mime.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f gofax.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f goserver.ldif $ sudo ldapadd -Y EXTERNAL -H ldapi:/// -f trust.ldif $ sudo apt-get install gosa-plugin-ssh gosa-plugin-ssh-schema gosa-plugin-sudo gosa-plugin-sudo-schema $ sudo apt-get install mysql-server php5-mysql $ echo -n t0m88d9eage4as2vi6l6ji04v3 > /tmp/gosa.auth $ sudo cp -v gosa.conf /etc/gosa/ $ sudo chown root:www-data /etc/gosa/gosa.conf $ sudo chmod 640 /etc/gosa/gosa.conf $ sudo apt-cache search gosa $ sudo apt-get install gosa-plugin-systems gosa-plugin-samba gosa-plugin-squid gosa-plugin-rsyslog gosa-plugin-mail gosa-plugin-ldapmanager gosa-plugin-connectivity $ sudo service apache2 restart ----------------------------------------------------------------------------------------------------------------- Защищаем mediawiki. Как это сделать? Андрей Дугин // Добавить пользователя apache в одноименную группу usermod -G apache apache // Устанавливаем владельца root и группу apache chown -R root:apache /wikipath chown -R root:apache /etc/wiki/LocalSettings.php chown -R root:apache /somepath/mysql-wiki // Применяем разграничение прав доступа chmod -R u+rw,g+rx,o-rwx /wikipath chmod -R g+w /wikipath/images chmod 640 /etc/wiki/LocalSettings.php chmod 640 /somepath/mysql-wiki require_once( "/somepath/mysql-wiki" ); $wgDBserver = $db_host; $wgDBname = $db_name; $wgDBuser = $db_user; $wgDBpassword = $db_password; # Включаем SSL SSLEngine on # Указываем путь к серверному сертификату SSLCertificateFile /etc/apache2/ssl/server.crt # Указываем путь к ключу серверного сертификата SSLCertificateKeyFile /etc/apache2/ssl/server.key # Указываем путь к сертификату CA SSLCACertificateFile /etc/apache2/ssl/ca.crt # Указываем путь к списку отозванных сертификатов SSLCARevocationFile /etc/apache2/ssl/crl.pem # Включаем протоколы TLSv1, SSLv3 SSLProtocol +TLSv1 +SSLv3 # Используем только сильное шифрование SSLCipherSuite HIGH # Указываем необходимость проверки клиента SSLVerifyClient require # Глубина верификации – количество шагов проверки до корневого центра сертификации SSLVerifyDepth 1 # Указываем поле, по которому будем фильтровать клиентов, и его значение SSLRequire (%{SSL_CLIENT_S_DN_OU} eq "security" ) mysql> use wikidb; mysql> select user_name,user_password from user; Options None AllowOverride None Order allow,deny Allow from all SSLRequireSSL SSLRequire %{SSL_CLIENT_S_DN} =~ m/.*serialNumber=$/ require_once('extensions/SSLAuthPlugin.php'); $ssl_map_info = false; $ssl_RN = $_SERVER['SSL_CLIENT_S_DN_CN']; $ssl_UN = $_SERVER['SSL_CLIENT_S_DN_CN']; if ($_SERVER['SSL_CLIENT_S_DN_Email'] != ) $ssl_email = $_SERVER['SSL_CLIENT_S_DN_Email']; else $ssl_email = ; SSLAuthSetup(); ----------------------------------------------------------------------------------------------------------------- SSH-туннелирование в ОС Linux. Поможет сохранить конфиденциальную информацию Игорь Штомпель sudo apt-get install openssh-server ssh -L [ла]:лп:уа:уп [пользователь@]сервер ssh -N -f -L 12000:servermail.ru:110 user@servermail.ru ssh -R [уа]:уп:ла:лп ssh -N -f -R servermail.ru:12000:localdesktop:110 user@localdesktop ssh -D ла:лп пользователь@сервер ssh -D localdesktop:12000 user@server ssh -X user@192.168.56.101 firefox ssh -X user@192.168.56.101 'gksudo gedit /etc/fstab' sudo apt-get install putty putty gksudo gedit /etc/fstab ----------------------------------------------------------------------------------------------------------------- Cisco IPS + RADIUS. Возможности интеграции Андрей Дугин sensor# configure terminal sensor(config)# service aaa sensor(config-aaa)# aaa radius sensor(config-aaa-rad)# primary-server sensor(config-aaa-rad-pri)# server-address 10.0.2.59 sensor(config-aaa-rad-pri)# server-port 1812 sensor(config-aaa-rad-pri)# shared-secret there_is_a_secret_key1 sensor(config-aaa-rad-pri)# exit sensor(config-aaa-rad)# secondary-server enabled sensor(config-aaa-rad-ena)# server-address 10.0.8.23 sensor(config-aaa-rad-ena)# server-port 1812 sensor(config-aaa-rad-ena)# shared-secret there_is_a_secret_key2 sensor(config-aaa-rad-ena)# exit sensor(config-aaa-rad)# local-fallback enabled sensor(config-aaa-rad)# default-user-role unspecified client sensor1 { secret = there_is_a_secret_key1 shortname = sensor1 } cisco-avpair = "ips-role=administrator" ----------------------------------------------------------------------------------------------------------------- Человеческий фактор как основа ИТ-безопасности Никита Панов net user <имя_нового_пользователя> <пароль_нового_пользователя> /add /domain net group «Domain Admins» <имя_нового_пользователя> /add /domain ----------------------------------------------------------------------------------------------------------------- Поддержка системы 24х7. Организация круглосуточной работы ИТ-отдела Константин Кондаков User_Alias OPSOURCE_USERS=jcustodi,vrangappa,ddeb,dtran # things that are ok on any box OPSOURCE_USERS ALL = (root) /usr/pkg/adm/sbin/* OPSOURCE_USERS ALL = (lksm) /usr/pkg/adm/sbin/* OPSOURCE_USERS ALL = (root) /etc/init.d/* * OPSOURCE_USERS ALL = (root) /etc/rc?.d/* OPSOURCE_USERS ALL = (root) /prod/common/psr-lite/bin/* OPSOURCE_USERS ALL = (root) /prod/pagecomp/bin/* OPSOURCE_USERS ALL = (root) /prod/common/prodScripts/bin/* OPSOURCE_USERS ALL = (root) /bin/ls OPSOURCE_USERS ALL = (root) /bin/touch OPSOURCE_USERS ALL = (root) /sbin/mount OPSOURCE_USERS ALL = (root) /sbin/umount OPSOURCE_USERS ALL = (root) /usr/sbin/cfrun OPSOURCE_USERS ALL = (root) /usr/pkg/cfengine/sbin/cfrun OPSOURCE_USERS ALL = (root) /usr/sbin/cfagent OPSOURCE_USERS ALL = (root) /var/cfengine/bin/cfagent OPSOURCE_USERS ALL = (root) /usr/pkg/cfengine/sbin/cfagent OPSOURCE_USERS ALL = (root) /usr/local/bin/lmutil OPSOURCE_USERS ALL = (root) /usr/bin/kill OPSOURCE_USERS ALL = (root) /bin/kill OPSOURCE_USERS ALL = (root) /usr/bin/pkill OPSOURCE_USERS ALL = (root) /usr/local/bin/svstat OPSOURCE_USERS ALL = (root) /usr/local/bin/svc OPSOURCE_USERS ALL = (root) /bin/rm /var/cfengine/cfengine_lock_db OPSOURCE_USERS ALL = (root) /bin/rm /var/cfengine/ppkeys/root-*.pub OPSOURCE_USERS ALL = (root) /bin/rm /usr/pkg/snmp/var/msg/* OPSOURCE_USERS ALL = (root) /bin/rm /usr/pkg/nagios-plugins/var/msg/* OPSOURCE_USERS ALL = (root) /bin/mv /usr/pkg/snmp/var/msg/*/tmp/ OPSOURCE_USERS ALL = (root) /bin/mv /usr/pkg/nagios-plugins/var/msg/* /tmp/ OPSOURCE_USERS ALL = (root) /usr/bin/rm /usr/pkg/snmp/var/msg/* OPSOURCE_USERS ALL = (root) /usr/bin/rm /usr/pkg/nagios-plugins/var/msg/* OPSOURCE_USERS ALL = (root) /bin/cat /var/log/* OPSOURCE_USERS ALL = (root) /bin/cat /usr/pkg/snmp/var/msg/* OPSOURCE_USERS ALL = (root) /bin/cat /var/adm/* OPSOURCE_USERS ALL = (root) /bin/cat /var/adm/syslog/* OPSOURCE_USERS ALL = (root) /bin/cat /var/cfengine/ -----------------------------------------------------------------------------------------------------------------