вторник, 3 июля 2012 г.

Squid Windows 2008R2 Kerberos CentOS 6.2


Ставим squid
yum install cyrus-sasl-gssapi krb5-workstation krb5-devel squid

Создаем в DNS прямую и обратную записи для хоста squid.my.dom

Cоздаем в AD пользователя: usersquid, и группы wg_internet wg_internet_full ...
Cоздаем кейтаб для этого пользователя:

c:\windows\system32\ktpass -princ HTTP/squid.my.dom@MY.DOM -mapuser usersquid@MY.DOM -crypto rc4-hmac-nt -pass password -ptype KRB5_NT_PRINCIPAL -out c:\squid.my.dom.keytab

именно c:\windows\system32\ktpass, а не просто ktpass иначе ошибка, видимо в 64 версии ошибка.
Если кейтаб создан с параметром -crypto aes256-sha1, то не заработала авторизация
В логе squid про несоответствие ключей клиента, возможно надо настраивать krb5.conf, добавлять какой либо параметр


2012/06/27 10:57:34| squid_kerb_auth: ERROR: gss_accept_sec_context() failed: Unspecified GSS failure.  Minor code may provide more information.
2012/06/27 10:57:34| authenticateNegotiateHandleReply: Error validating user via Negotiate. Error returned 'BH gss_accept_sec_context() failed: Unspecified GSS failure. Minor code may provide more information. '


Копируем c:\squid.my.dom.keytab в каталог /etc/squid 

Добавляем в /etc/rc.d/init.d/squid
KRB5_KTNAME=/etc/squid/squid.my.dom.keytab
export KRB5_KTNAME

Правим krb5.conf
[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log

[libdefaults]
 default_realm = MY.DOM
 dns_lookup_realm = false
 dns_lookup_kdc = false
 kdc_timesync = 1
 ticket_lifetime = 24h
 forwardable = true
 proxiable = true
 default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
 default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
 permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5

[realms]
 MY.DOM = {
  kdc = ad-ds-2008r2.my.dom
  admin_server = ad-ds-2008r2.my.dom
  kdc = 192.168.1.9
  admin_server = 192.168.1.9
  default_domain = my.dom
 }

[domain_realm]
 .my.dom = MY.DOM
 my.dom = MY.DOM

[appdefaults]
 pam = {
  debug = false
  ticket_lifetime = 36000
  renew_lifetime = 36000
  forwardable = true
  krb4_convert = false
 }

[login]
 krb4_convert = true
 krb4_get_tickets = false

Правим squid.conf
#
# Recommended minimum configuration:
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
##acl localnet src 10.0.0.0/8   # RFC1918 possible internal network
##acl localnet src 172.16.0.0/12        # RFC1918 possible internal network
##acl localnet src 192.168.0.0/16       # RFC1918 possible internal network
##acl localnet src fc00::/7       # RFC 4193 local private network range
##acl localnet src fe80::/10      # RFC 4291 link-local (directly plugged) machines

acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
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

#auth_param negotiate program /usr/lib64/squid/squid_kerb_auth -d
auth_param negotiate program /usr/lib64/squid/squid_kerb_auth
auth_param negotiate children 10
auth_param negotiate keep_alive on

#######################
# для входа по запросу имя/пароль
#
auth_param basic program /usr/lib64/squid/squid_ldap_auth -v3 -R -D  usersquid@my.dom -W /etc/squid/authpw  -b "cn=users,dc=my,dc=dom" -f "sAMAccountName=%s" -h ad-ds-2008r2.my.dom
auth_param basic children 10
auth_param basic realm Proxy Authentication
auth_param basic credentialsttl 2 hours

#
# Recommended minimum Access Permission configuration:
#
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager

# Deny requests to certain unsafe ports
http_access deny !Safe_ports

# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports

# We strongly recommend the following be uncommented to protect innocent
# web applications running on the proxy server who think the only
# one who can access services on "localhost" is a local user
#http_access deny to_localhost

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

acl AUTH proxy_auth REQUIRED

acl mynet src 192.168.1.0/24 192.168.32.0/20
acl client_wsus  src 192.168.1.128/32 192.168.1.16/32
acl server_wsus  dstdomain wsus.prov.ru

# Проверка соответствия пользователь-группа
external_acl_type ldap_group ttl=1200 %LOGIN /usr/lib64/squid/squid_ldap_group -v3 -R -D usersquid@my.dom -W /etc/squid/authpw -b "dc=my,dc=dom" -f "(&(samaccountname=%v)(memberof=cn=%a,cn=users,dc=my,dc=dom))" -K -h ad-ds-2008r2.my.dom
# Hosts that are not required to authenticate
acl Auth_Not_Required src "/etc/squid/acl/auth_not_required.txt"

# Domains accessible to all PC's
##acl Open_Domains dstdomain "/etc/squid/acl/open_domains.txt"

# Hosts & domains that are denied to restricted users
##acl Banned_Hosts dst "/etc/squid/acl/banned_hosts.txt"
acl Banned_Domains dstdomain "/etc/squid/acl/banned_domains.txt"
acl Banned_URLs url_regex  "/etc/squid/acl/banned_urls.txt"
acl Good_URLs url_regex  "/etc/squid/acl/good_urls.txt"
acl Banned_Extensions url_regex  "/etc/squid/acl/banned_extensions.txt"
acl price_URLs url_regex "/etc/squid/acl/price_URLs.txt"

# Full access
acl Access_Full external ldap_group wg_internet_full

# Restricted access
acl Access_Restricted external ldap_group wg_internet

# Restricted access Price URLs only
acl Access_Restricted_Price external ldap_group wg_internet_price

#######################
# Domains free to all users without needing to authenticate.
##http_access allow Open_Domains
# Разрешаем доступ хостам без регистрации
# IP addresses of hosts that don?t need to authenticate (usually automation hosts #performing automated downloads and without a Novell client.
http_access allow Auth_Not_Required
# Разрешаем доступ хостам из локалки к WSUS серверу провайдера
http_access allow client_wsus server_wsus
##http_access allow domainusers mynet
# Let users with full Internet access.
http_access allow AUTH Access_Full
http_access deny Banned_Domains
http_access deny Banned_URLs !Good_URLs
http_access deny Banned_Extensions
http_access allow AUTH Access_Restricted
http_access allow AUTH Access_Restricted_Price price_URLs
####################################
# тестовое разрешение для любых авторизованных пользователей.
#http_access allow AUTH

# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed
##http_access allow localnet
http_access allow localhost

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

# Squid normally listens to port 3128
http_port 3128

# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?

# Uncomment and adjust the following to add a disk cache directory.
#cache_dir ufs /var/spool/squid 100 16 256

# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320


четверг, 21 июня 2012 г.

Как установить шрифты через GPO в домене

reg.bat


Код:
Rem reg.bat
copy ARKHIVE.TTF %systemroot%\fonts
regedit /s reg.reg
reg.reg
Код:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]
"Arkhive (TrueType)"="ARKHIVE.TTF"
для компьютеров (Конфигурация компьютера -> Конфигурация Windows -> Сценарии). Соответственно, и применяться она должна к контейнеру, содержащему компьютеры.

для простых пользователей
надо дать соотв. права на ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts.

вот тут http://forum.oszone.net/thread-92136.html описана мегаутилитка fontinst которая шрифты регистрирует

Для этого можно использовать специальную утилиту fontinst.exe.

Пример:

Код:
fontinst.exe /f fontinst.inf
Содержимое fontinst.inf:
Код:
[fonts]
ваш_шрифт1.ttf
ваш_шрифт2.ttf
  I deployed it with GPO on all computers.
Код:
set fonts=serverdeploy$ onts if not exist %systemroot% ontsSchoolKX_new.ttf xcopy /y %fonts%SchoolKXSchoolKX_new.ttf %systemroot% onts regedit /s %fonts%schoolKXSchoolkx.reg
 
Код:
set fonts=serverdeploy$ onts
if not exist %systemroot% ontsSchoolKX_new.ttf xcopy /y %fonts%SchoolKXSchoolKX_new.ttf %systemroot% onts
regedit /s %fonts%schoolKXSchoolkx.reg
  

если через GPO
Конфигурация компьютера Политики - Административные шаблоны:... - Система - Вход в систему
Всегда ждать сеть при запуске и входе в систему
(Administrative templates, system, scripts
и в System же рядом есть Logon, там Always wait for network)


Для ускорения применения политик на сетевых ПК, можно запустить на домен контроллере такую команду:
gpudate /force /sync
И спустя минут 5-10 перезагрузить назначенные ПК.

Проверить, посмотреть вывод команды gpresult /V с раб. станции

суббота, 16 июня 2012 г.

Создание LVM

Просмотр

lvscan
vgscan
pvscan

pvdisplay
vgdisplay
lvdisplay

Создание


vgcreate VolGroup01 /dev/sdb1
или
vgcreate -s 32Mg VolGroup01 /dev/sdb1   

lvcreate -l 100%FREE -n lv_var VolGroup01

Удаление

lvscan
lvremove -f /dev/VolGroup01/lv_var
vgscan
vgremove -f VolGroup01


Пример: перенос каталога /var на другой том


fdisk /dev/sdb
создаем раздел, тип раздела 8e (можно и не создавать, но если не создавать, многие программы видят диск как не размеченный)
pvcreate /dev/sdb1
vgcreate VolGroup01 /dev/sdb1
lvcreate -l 100%FREE -n lv_var VolGroup01
mkfs.ext4 /dev/VolGroup01/lv_var
telinit 1
mount /dev/VolGroup01/lv_var /media
cp -pRdf /var/* /media
mv /var var_
mkdir /var
правим /etc/fstab
/dev/mapper/VolGroup01-lv_var  /var   ext4    defaults        1 2
touch /media/.autorelabel
перегружаемся и проблема, selinux не дает загрузиться забыл создать .autorelabel
надо попробовать

cd /var
tar -cf - * | (cd /media; tar -xvpf -)

Если возникли проблемы

 ------------------------------------------------------------------------------------------------------


link

пятница, 15 июня 2012 г.

Ошибки udev при загрузке CentOS на VMWare

After installing VMware Tools on a CentOS 5.3 guest hosted on ESX 4 I was receiving the following udev warnings during startup.

Starting udev: udevd[572]: add_to_rules: unknown key 'SUBSYSTEMS'
udevd[572]: add_to_rules: unknown key 'ATTRS{vendor}'
udevd[572]: add_to_rules: unknown key 'ATTRS{model}'
udevd[572]: add_to_rules: unknown key 'SUBSYSTEMS'
udevd[572]: add_to_rules: unknown key 'ATTRS{vendor}'
udevd[572]: add_to_rules: unknown key 'ATTRS{model}'

While they are harmless I personally find them annonying. The fix is to comment out the following udev rules for Debian and SuSE / Ubuntu in /etc/udev/rules.d/99-vmware-scsi-udev.rules. Your file should look like the following

# Redhat systems
ACTION=="add", BUS=="scsi", SYSFS{vendor}=="VMware, " , SYSFS{model}=="VMware Virtual S",   RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/device/timeout'"

# Debian systems
#ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware  " , ATTRS{model}=="Virtual disk    ",   RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/device/timeout'"

# SuSE / Ubuntu systems
#ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware, " , ATTRS{model}=="VMware Virtual S",   RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/device/timeout'"


взято с сайта

VMWare

среда, 23 мая 2012 г.

Резервирование жёсткого диска при помощи dd поверх sshРезервирование жёсткого диска при помощи dd поверх ssh

Резервирование жёсткого диска при помощи dd поверх ssh

Резервирование данных:
dd if=/dev/sda | ssh ras@backup-host "dd of=book/sda"
Восстановление данных:
ssh ras@backup-host "dd if=book/sda" | dd of=/dev/sda

Здесь backup-host — компьютер, на который сохраняется образ, ras — имя пользователя, book/sda — каталог и название файла бэкапа, /dev/sda — устройство-жёсткий диск ноутбука. В моей ситуации был не очень быстрый ноутбук, а компьютер, на который осуществлялось резервирование, обладал объёмным жёстким диском. При резервировании можно применять сжатие, тогда получим меньший образ, меньше трафика передачи по сети, если диск или сеть будут узким местом, но возрастёт нагрузка на процессор резервируемой системы, соответственно увеличится время резервирования. 

Вариации на эту тему:
 
dd if=/dev/sda | gzip | ssh ras@backup-host "dd of=book/sda.gz"
ssh
ras@backup-host "dd if=book/sda.gz" | gzip -d | dd of=/dev/sda
 
dd if=/dev/sda | bzip2 | ssh ras@backup-host "dd of=book/sda.bz2"
ssh
ras@backup-host "dd if=book/sda.bz2" | bzip2 -d | dd of=/dev/sda

 

 

среда, 16 мая 2012 г.

CISCO Catalyst - основные команды

show vlan brief – просмотр существующих vlan`ов на свиче
show ip interface brief - просмотр существующих IP интерфейсов на свиче
show interfaces trunk – просмотр существующих trunk интерфейсов на свиче
show interfaces switchport – просмотр коммутации на интерфейсах свича
show interfaces description

sh int gi0/12 swit

show running-config
write memory - если надо записать настройки

show arp | incl xxxx.yyyy.zzzz (на устройствах Cisco, в основном на роутерах)
show mac address-table | incl xxxx.yyyy.zzzz (на коммутаторах Cisco)
show mac-address-table | incl xxxx.yyyy.zzzz (на коммутаторах Cisco)
show etherchannel summary (на коммутаторах Cisco для определения портов, входящих в port-channel)

#show mac-address-table | beg 000a.e475.a1a1

#show arp | incl 50e5.1234.4567

#show mac address-table vlan 1 | incl 00c0.ee82.ffba  (через какой порт доступен MAC)

Будьте внимательны: чтобы в последующем добавлять новые vlan в наш trunk вам необходимо использовать ту же команду, но с ключевым add:
Switch1(config-if)#switchport trunk allowed vlan add VLAN_ID 

------------------------------------------------------------------

config t
inter Gi0/12
switchport trunk allowed vlan add 503
exit

inter Gi0/13
switchport trunk allowed vlan add 503
exit

inter Gi0/14
switchport trunk allowed vlan add 503
exit

exit

---

switchport trunk allowed vlan  20,501,502,503

------------------------------------------------------------------


!
interface GigabitEthernet0/5
 switchport access vlan 50
 switchport mode access
 duplex full
!

сделал
no switchport access vlan 50

результат
!
interface GigabitEthernet0/5
 switchport mode access
 duplex full
!


------------------------------------------------------------------
description


inter gi0/19
description == DOWN-link to DES-3326SR IT 2 Floor ==
exit

inter gi0/23
description == DOWN-link to DGS-3100-24 to port 24 ==


-------
show running-config
write memory - если надо записать настройки
no ip http server
- если надо отключить WEB сервер

------------------------------------------------------------------ 
Полезные команды в Cisco

четверг, 10 мая 2012 г.

Explorer.exe постоянно перезапускается

Explorer.exe постоянно перезапускается (источник)

Наткнулся на проблему explorer.exe постоянно перезапускается. работать невозможно. Нашел решение на форуме Microsoft.
  • Нужно скачать AutoRuns For Windows.
  • Распаковать.
  • Запустить Autoruns.
  • Выбрать Options / Check Hide Microsoft Entries.
  • Нажать F5 чтобы обновить список.
  • Выбрать закладку Explorer.
  • Убрать галочки во всех пунктах.
  • Выйти из  Autoruns.
  • Выйти из системы и снова залогиниться.
  • Проверить работу.
Все.