Показаны сообщения с ярлыком centos. Показать все сообщения
Показаны сообщения с ярлыком centos. Показать все сообщения

вторник, 15 августа 2017 г.

iptables

IPTABLES
Посмотреть таблицу соединений NAT
cat /proc/net/ip_conntrack cat /proc/net/ip_conntrack | grep "30\.10 "
TOP числа пакетов с ip адресов проходящий через eth1
tcpdump -tn -c 10000 -i eth1 tcp or udp | awk -F "." '{print $1"."$2"."$3"."$4}' |  sort | uniq -c | sort -nr | awk '$1 > 100'
# Просмотреть правила
# iptables -L FORWARD --line-numbers -n
# iptables -t nat -L PREROUTING --line-numbers -n # iptables -t mangle -L PREROUTING -n -v --line-numbers

# Добавить правила
# iptables -I FORWARD 141 -i eth1 -s 192.168.xxx.116 -p tcp -m state --state NEW -j ACCEPT
# iptables -I FORWARD 141 -i eth1 -s 192.168.xxx.0/24 -d 213.142.xxx.142/32  -j ACCEPT

# для доступа по RDP  ( ограничения через FORWARD )
# iptables -I FORWARD 63  -s 87.117.xxx.10 -d 192.168.xxx.207 -p tcp -m tcp --dport 3389 -j allowed


# Удалить правило 141
# iptables -D FORWARD 141

IP маршрутизация
#Добавить адрес в таблицу маршрутизации
# ip rule add from 192.168.xxx.15 table T3
# удалить
# ip rule del from 192.168.xxx.15 table T3
# сбросить кеш
# ip route flush cache

Просмотр правил маршрутизации
# ip rule list

# Пример переключение шлюза по умолчанию (default GW)
# удаляем текущий
# ip route del default via 212.23.xxx.xxx dev eth0
# добавляем новый
# ip route add default via 217.119.xxx.xxx dev eth2 metric 10

# проверка доступности интернет через  провайдеров
# ping -I 212.23.xxx.xxx 8.8.8.8
# ping -I 83.167.xxx.xxx 8.8.8.8
# ping -I 188.234.xxx.xxx 8.8.8.8
# ping -I 5.141.xxx.xxx 8.8.8.8

# для примера
# route add -net 192.168.128.0/17 gw 192.168.10.1

понедельник, 25 января 2016 г.

Centos 7 Firewall


Состояние сервиса
[root@localhost log]#  systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2015-12-29 14:11:09 YEKT; 3 weeks 6 days ago
 Main PID: 634 (firewalld)
   CGroup: /system.slice/firewalld.service
           └─634 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

Dec 29 14:11:07 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
Dec 29 14:11:09 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.

Состояние сервиса
[root@localhost log]# firewall-cmd --state
running


[root@localhost log]# firewall-cmd --get-default-zone
public


[root@localhost log]# firewall-cmd --get-active-zones
public
  interfaces: ens192


[root@localhost log]# firewall-cmd --list-all
public (default, active)
  interfaces: ens192
  sources:
  services: dhcpv6-client ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:



[root@localhost log]# firewall-cmd --get-zones
block dmz drop external home internal public trusted work

Посмотреть правила для какой либо зоны
[root@localhost]# firewall-cmd --get-zones
block dmz drop external home internal public trusted work
[root@localhost]# firewall-cmd --zone=internal --list-all
internal
  interfaces:
  sources:
  services: dhcpv6-client ipp-client mdns samba-client ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:

Изменить зону на интерфейсе в текущей сессии (временно, до перезагрузки)
sudo firewall-cmd --zone=home --change-interface=ifcfg-ens192

Добавить интерфейс в зону (постоянно)
[root@localhost /]# cat /etc/sysconfig/network-scripts/ifcfg-ens192
 . . .
TYPE="Ethernet"
BOOTPROTO="dhcp"
DEFROUTE="yes"
ZONE=internal
 . . .
чтобы применить изменения
systemctl restart network.service
systemctl restart firewalld.service
посмотреть сервисы привязанные к зоне
[root@localhost]# firewall-cmd --zone=internal --list-services
dhcpv6-client ipp-client mdns samba-client ssh
Пример, добавил сервис DNS, не забыть перегрузить правила
[root@localhost network-scripts]# firewall-cmd --zone=public --list-services
dhcpv6-client ssh
[root@localhost network-scripts]# firewall-cmd --zone=internal --list-services
dhcpv6-client ipp-client mdns samba-client ssh
[root@localhost network-scripts]# firewall-cmd --zone=internal --permanent --add-service=dns
success
[root@localhost network-scripts]# firewall-cmd --zone=internal --list-services
dhcpv6-client ipp-client mdns samba-client ssh
[root@localhost network-scripts]# firewall-cmd --reload
success
[root@localhost network-scripts]# firewall-cmd --zone=internal --list-services
dhcpv6-client dns ipp-client mdns samba-client ssh
[root@localhost network-scripts]#

среда, 11 февраля 2015 г.

Asterisk Centos 6.x

установка

i386
rpm -Uvh http://packages.asterisk.org/centos/6/current/i386/RPMS/asterisknow-version-3.0.0-1_centos6.noarch.rpm

x86_64
rpm -Uvh http://packages.asterisk.org/centos/6/current/x86_64/RPMS/asterisknow-version-3.0.1-3_centos6.noarch.rpm

Ставятся repo для разных версий asterisk. Делаем enabled для нужной версии.

Устанавливаем dnsmasq - зависимость для asterisk. Затем сам asterisk.
yum install dnsmasq
yum install asterisk asterisk-configs

для автозапуска
chkconfig --level 345 asterisk on

Посмотреть файл настроек
 grep -v '^;' sip.conf | grep -v '^$'  | grep -v '^[[:space:]]'
 grep -v '^;' extensions.conf | grep -v '^$'  | grep -v '^[[:space:]]'

CLI
 asterisk   -vvvr

 sip show peers
 sip show channels
 module show
core show translation

понедельник, 20 мая 2013 г.

SqStat

Берем отсюда. Разворачиваем в /var/www/sqstat/

в /etc/httpd/conf.d добавляем  sqstat.conf

Alias /sqstat "/var/www/sqstat/"
<Directory /var/www/sqstat/>
        DirectoryIndex sqstat.php
        Order deny,allow
        Allow from all
</Directory>


Правим права доступа, по необходимости.

Если включен selinux
setsebool -P httpd_can_network_relay=1
либо выключаем selinux

Параметры selinux для httpd
getsebool -a | grep httpd

среда, 3 апреля 2013 г.

DOVECOT 2

При установке dovecot 2 ( на CentOS 6.4  ) обнаружил, что конфиг файл несколько изменился.
А также возникли проблемы при переносе ящиков пользователей со старого сервера, да и при создании новых:почему то ящики ( /var/mail/* ) создаются с правами 0640, а не 0600  настраивал в соответствии руководством

 
Добавляем в 
 
/etc/dovecot/conf.d/10-auth.conf 

# разрешить регистрацию без SSL\TLS
disable_plaintext_auth = no

/etc/dovecot/conf.d/10-mail.conf 
mail_location = mbox:~/mail:INBOX=/var/mail/%u 
mail_access_groups = mail


Ошибки, если домашняя папка на другой файловой системе, через softlink
Apr  4 15:17:59  dovecot: : Error: link(/home/apteka/apXXXXX/mail/.imap/INBOX/.temp.X.ru.16043.2122705fbc716af9, /home/apteka/apXXXXX/mail/.imap/INBOX/dovecot.index.log.newlock) failed: Operation not supported
Apr  4 15:17:59  dovecot: : Error: file_dotlock_open() failed with file /home/apteka/apXXXXX/mail/.imap/INBOX/dovecot.index.log: Operation not supported
Apr  4 15:17:59  dovecot: : Disconnected: Logged out top=0/0, retr=0/0, del=0/0, size=0

вторник, 5 марта 2013 г.

Установка ncpfs в CentOS 5.x

Установка ncpfs в CentOS 5.x  

Собственно нужен только nsend, для рассылки сообщений по сети клиентам NetWare.

wget http://arm.koji.fedoraproject.org//packages/ncpfs/2.2.6/13.fc12/src/ncpfs-2.2.6-13.fc12.src.rpm
rpm -ivh ncpfs-2.2.6-13.fc12.src.rpm
rpm --nomd5 -ivh ncpfs-2.2.6-13.fc12.src.rpm
rpmbuild -ba  ncpfs.spec   (получаем ipxutils-2.2.6-13.i386.rpm и ncpfs-2.2.6-13.i386.rpm ...)
rpm -ivh -- nodeps ncpfs-2.2.6-13.i386.rpm
p.s. ipxutils не нужен т.к. nsend отлично работает по tcp/ip

среда, 30 января 2013 г.

piix4_smbus 0000:00:07.3: Host SMBus controller not enabled!

При переносе VM с  CentOS 6.3 с хоста ESXi 4.1 (Intel) на хост ESXi 5.1 (AMD) при загрузке выскакивает ошибка:

kernel: piix4_smbus 0000:00:07.3: Host SMBus controller not enabled!


Аналогично появилось сообщение в CentOS 6.x при upgrad с ESX4.0 на ESXi5.1 на серверах с процессором Intel

как вариант: 
i'm using virtualbox and not vmware, but i think this doesn't matter at all.
since the vm has no smbus, but ubuntu seems to always load the smbus module at boot, the fix is straightforward:


Code:
lsmod | grep i2c_piix4
and if you see the module is loaded, just blacklist it in /etc/modprobe.d/blacklist.conf, by adding:

Code:
blacklist i2c_piix4
at the end of the file (or anywhere). (eventually update your initramfs too: update-initramfs -u -k all)
that's all.

суббота, 8 декабря 2012 г.

Обновление до Zabbix 2

Имеем установку CentOS 5.8 (i386) и Zabbix 1.8.5.
Цель обновиться  до Zabbix 2.0.3, заодно и поднимем платформу до CentOS 6.3 (x64)

На новом сервере установим mysql и zabbix

rpm --import https://fedoraproject.org/static/0608B895.txt
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
rpm -ivh epel-release-6-7.noarch.rpm
rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum install -y yum-priorities

yum install mysql mysql-server

yum install zabbix20 zabbix20-agent zabbix20-server zabbix20-server-mysql zabbix20-web zabbix20-web-mysql

на старом сервере

Остановим zabbix демон (иначе после восстановления на новом сервере не проходил апгрейд базы, ошибка базы)

Делаем полный дамп базы

mysqldump --all-databases -u root -h localhost -p | gzip -c /home/mysql.sql.gz

копируем её на новый сервер, заодно и файлы настроек /etc/zabbix.* , старый сервер можно отключить.

На новом сервере восстанавливаем базу

gzip -dc ./mysql.sql.gz | mysql -uroot -p


cd /usr/share/zabbix-mysql/upgrades/2.0
chmod +x upgrade
./upgrade -uroot -pPASSWORD zabbix

Правим файлы конфигурации, если раньше они лежали в /etc/zabbix то теперь там ссылки на файлы:
/etc/zabbix_server.conf   (ничего не менял в новом файле, только  DBPassword)
/etc/zabbix_agent.conf   (не разобрался зачем он, я не использую)

/etc/zabbix_agentd.conf  (поправил Include=/etc/zabbix/zabbix_agentd.conf.d/  в новом /etc/zabbix_agentd.conf.d/ )

Редактируем php.ini

 ;max_execution_time = 30
 max_execution_time = 600
 ;max_input_time = 60
 max_input_time = 600
 ;memory_limit = 128M
 memory_limit = 256M
 ;post_max_size = 8M
 post_max_size = 32M
 ;upload_max_filesize = 2M
 upload_max_filesize = 16M
 max_file_uploads = 20
 date.timezone = Asia/Yekaterinburg

Меняем ip на адрес старого сервера, правим iptables
запускаем демоны zabbix сервера и агента

В браузере http://имя_zabbix/zabbix - настраиваем web-интерфейс


/usr/share/snmp/mibs
---------------------------------- инфо
Инструкция http://www.zabbix.com/documentation/2.0/manual/installation/upgrade

Локализация http://www.zabbix.org/wiki/How_to/install_locale
Для Ubuntu: установить пакеты language-support-ru и php-gettext.


Пример обновления Обновление


сборки от разработчиков zabbix:

ZabbixZone Repository

http://repo.zabbixzone.com/centos/6Server/

http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/6/SRPMS/
http://www.kodai74.net/packages/zabbix/zabbix-2.0/rhel/6/x86_64/


пример spec

Backuping Full Database

http://www.percona.com/downloads/XtraBackup/LATEST/RPM/rhel5/i386/

понедельник, 29 октября 2012 г.

Bacula Centos

Установка из rpm  http://repos.fedorapeople.org/repos/slaanesh/bacula

To install the repository, run as root the following commands.

For RHEL/Centos:

wget http://repos.fedorapeople.org/repos/slaanesh/bacula/epel-bacula.repo \
 -O /etc/yum.repos.d/epel-bacula.repo

For Fedora:

wget http://repos.fedorapeople.org/repos/slaanesh/bacula/fedora-bacula.repo \
        -O /etc/yum.repos.d/fedora-bacula.repo 
 
 
 
-------------------------------------------------------------- 
mysql на другом сервере 
 
yum install mysql-server
 
service mysqld start 

/usr/bin/mysql_secure_installation
 
mysql -u root -p 



GRANT ALL PRIVILEGES ON *.* TO 'my_user'@'localhost'
 IDENTIFIED BY 'my_password' WITH GRANT OPTION;
 
select user,host,password from mysql.user; 

# set root password
set password for root@localhost=password('password');
set password for root@'127.0.0.1'=password('password');
set password for root@'www.server.world'=password('password');

# delete anonymous user
delete from mysql.user where user='';
 
 
-------------------------------------------------------------- 
на bacula 
 
yum install bacula-director 
yum install bacula-storage 
yum install bacula-console 
 
[root@bacula bacula]# alternatives --config libbaccats.so

There are 3 programs which provide 'libbaccats.so'.

  Selection    Command
-----------------------------------------------
   1           /usr/lib64/libbaccats-mysql.so
   2           /usr/lib64/libbaccats-sqlite3.so
*+ 3           /usr/lib64/libbaccats-postgresql.so

Enter to keep the current selection[+], or type selection number: 1
 
cd /usr/libexec/bacula 
./create_mysql_database -h bcatalog.domain.ru -u root -p
./make_mysql_tables -h bcatalog.domain.ru -u root -p
./grant_mysql_privileges -h bcatalog.domain.ru -u root -p 
 
Задать пароль для пользователя bacula  


Пример FileSet для windows 
 
FileSet {
  Name = "windows-n2229-doc"
  Include {
    Options {
      signature = MD5
      Compression=GZIP
      Ignore Case = yes
    }
    File = "D:/Книги"
    File = "D:/vbs"
# обратите внимание на двойной бекслэш и кавычки! - видимо для старый версий
#    File = "D:\\Книги"
#    File = "D:\\vbs"
#    File = "D:\\Public\\tex\\Maps"
#    File = "D:\\Public\\Отдел\ продаж1"
}
Exclude {
    File = "*.mp3"
    File = "*.avi"
    File = "*.wmv"
    File = "*.tmp"
 }
}
 
 
 
---------------------------------------------
Отлично расписано 
#
# для каждого клиента под Linux
#
FileSet {
  Name = ИмяКлиента
# не делать полное копирование после изменения списка
# Ignore FileSet Changes = Yes
  Include {
    Options {
      compression = GZIP
      signature = SHA1
      onefs = yes
      aclsupport = yes
      noatime = yes
      checkfilechanges = yes
    }
    File = /
# каждую файловую систему отдельно
    ...
  }
  Exclude {
    File = /proc
    File = /sys
    File = /net
    File = /media
# для devfs
#    File = /dev
# для прочих
    File = /dev/pts
    File = /dev/shm
    File = /tmp
    File = /var/cache/yum
    File = /.journal
    File = /.fsck
    File = /var/lib/nfs/rpc_pipefs
    File = /.autofsck
    File = /selinux
    File = /var/named/chroot/proc
    File = ...
  }
}
#
# для каждого клиента под MS Windows XP/2003
#
FileSet {
  Name = ИмяКлиента
# не делать полное копирование после изменения списка
# Ignore FileSet Changes = Yes
  Enable VSS = Yes
  Include {
    Options {
      compression = GZIP
      signature = SHA1
      onefs = yes
      portable = no
      noatime = yes
      checkfilechanges = yes
      Ignore Case = yes
      wildfile = "*.avi"
      wildfile = "*.wmv"
      wildfile = "*.mp3"
      wildfile = "pagefile.sys"
      wildfile = "hiberfil.sys"
      wilddir = "System Volume Information"
      wilddir = "TEMP"
      wild = ...
      exclude = yes
    }
    File = "e:/"
# каждый диск отдельно
    ...
  }
} 
------------
 
# долговременное хранение для серверов с возможностью восстановления 
# состояния на любой день в течении недели, на любое воскресенье в течении месяца,
# на первое воскресенье в течении года
#   ночью первого воскресенья месяца - полное копирование на тома пула ИмяКлиента-monthly
#   в остальные воскресенья - полное копирование на тома пула ИмяКлиента-weekly
#   в прочие дни - копирование изменений на тома пула ИмяКлиента-daily
Schedule {
  Name = "ИмяКлиента-year"
  Run = Level=Full Pool=ИмяКлиента-monthly 1st sun at 00:05
  Run = Level=Full Pool=ИмяКлиента-weekly 2nd-5th sun at 00:05
  Run = Level=Incremental Pool=ИмяКлиента-daily mon-sat at 00:05
}
# среднесрочное хранение для серверов с возможностью восстановления 
# состояния на любой день в течении недели, на любое воскресенье в течении месяца
#   ночью в воскресенье - полное копирование на тома пула ИмяКлиента-weekly
#   в прочие дни - копирование изменений на тома пула ИмяКлиента-daily
Schedule {
  Name = "ИмяКлиента-year"
  Run = Level=Full Pool=ИмяКлиента-weekly sun at 00:05
  Run = Level=Incremental Pool=ИмяКлиента-daily mon-sat at 00:05
} 
 
 
Для восстановления 
должно быть в файле конфигурации хотя бы одно задание job restore

для восстановления удобно использовать Strip Prefix и Add Prefix 
 
Пример в среде windows, при этом Where = <directory> игнорируется, 
по крайней мере в bat это поле становится не доступным
Strip Prefix = <directory>
This directive applies only to a Restore job and specifies a prefix to remove from the directory name of all files being restored. This will use the File Relocation feature implemented in Bacula 2.1.8 or later. Using Strip Prefix=/etc, /etc/passwd will be restored to /passwd
Under Windows, if you want to restore c:/files to d:/files, you can use :
 Strip Prefix = c:
 Add Prefix = d:
--------------
Теперь перейдем непосредственно к восстановлению. Запускаем на сервере bconsole, выбираем restore и указывыем для восстановления соответствующий job.
На этапе выбора файлов для восстановления нам доступно несколько команд, опишу самые полезные:
help — подсказка
find — поиск нужного файла
ls,dir — просмотр файлов в текущем каталоге (каталоги с подкаталогами будут отображены с "+")
cd — смена каталога
mark file — отметить файл находящийся в текущем местоположении
mark dir/ — отметить отдельный каталог находящийся в текущем местоположении
mark * — отметить все файлы и каталоги внутри текущего каталога. Кстати, TAB здесь тоже работает
lsmark — просмотреть отмеченние файлы
pwd — показать текущий каталог
estimate — посчитать размер восстанавливаемых файлов
done — закончить отметку
Т.о. общая схема такая — ищем через find то что нужно, затем переходим в нужный каталог посредством cd и делаем mark на то, что нужно.
Важное замечание:
для bacula имеет значение регистр, не важно что клиентом выступает Windows-машина.

пятница, 26 октября 2012 г.

Install VMware Tools on Red Hat Enterprise/CentOS/Scientific Linux 6

Подключаем диск с vmware-tools

mount /dev/cdrom /mnt
разворачиваем tar в /tmp

Отключаем диск с vmware-tools

и запускаем
./vmware-install.pl


далее жмем enter (несколько раз)

Готово

Если в системе уже есть драйвера vmxnet3,pvscsi,vmmemctl, то они по умолчанию не заменяются на новые. Тогда запустить конфигуратор с параметрами

vmware-config-tools.pl --clobber-kernel-modules=vmxnet3,pvscsi,vmmemctl

Отключаем диск с vmware-tools


Проверка загрузки драйверов от VM-TOOLS смотреть здесь



Minimize virtual machine restarts or manual driver reloads

To minimize the number of virtual machine restarts, on each virtual machine check whether both the modules are actually configured and the corresponding virtual hardware is present. If these conditions are satisfied, you must restart the virtual machine.
  • To check whether the VMXNET, VMXNET3, and PVSCSI modules are configured by VMware Tools, run the following commands from the virtual machine console: grep VMXNET_CONFED /etc/vmware-tools/locations | tail -1
    grep VMXNET3_CONFED /etc/vmware-tools/locations | tail -1
    grep PVSCSI_CONFED /etc/vmware-tools/locations | tail -1

    If the output contains yes for the adapter type, VMware Tools has configured the module.
  • To check whether the virtual hardware is available, from the virtual machine console run the lspci -n command and examine the output for the following IDs: 15ad:0720 for VMXNET
    15ad:07b0 for VMXNET3
    15ad:07c0 for PVSCSI
You must restart the virtual machine or reload the driver module if the output of the grep driver_CONFED /etc/vmware-tools/locations command contains yes and the output of the lscpi -n command shows that the corresponding virtual hardware is available.
To see information about the adapter driver including its version, run the ethtool -i ethX command on the virtual machine, where X in ethX stands for the sequence number of the network adapter in the virtual machine.

Reload the VMXNET or VMXNET3 driver manually

To reload the VMXNET or VMXNET3 driver propagating its upgrade to the kernel, perform the following steps from the virtual machine console:
  1. Stop virtual machine networking.
    /etc/init.d/network stop
    
  2. Reload the driver module by running rmmod and modprobe. For example, for the VMXNET3 driver run the following commands: rmmod vmxnet3
    modprobe vmxnet3
  3. Start virtual machine networking.
    /etc/init.d/network start
     
    ! Перезагрузку выполнять из vSphere Client or vSphere Web Client. !
    ! Если из ssh, то сеть отвалится и соединение пропадет.           !

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

SARG Centos 6.2 min

Установка

yum install wget
yum install gd
wget http://pkgs.repoforge.org/sarg/sarg-2.3.1-1.el6.rft.x86_64.rpm
rpm -ivh sarg-2.3.1-1.el6.rft.x86_64.rpm
chkconfig --list
chkconfig --level 35 squid on
chkconfig --level 35 httpd on

После установки, добавить в sarg.conf

 (иначе не создаются индексы - index.html)

#graph_font /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
graph_font /etc/sarg/fonts/DejaVuSans.ttf


 (иначе не подгружаются стили css)
#external_css_file /var/www/sarg/sarg.css
external_css_file /sarg/sarg.css


Диагностика работы:
# sarg -x

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

Install Open Source VMware Tools on Red Hat Enterprise/CentOS/Scientific Linux 6

Взято отсюда

VMware now makes a repository available for us to install the VMware tools for a variety of Linux distributions including Red Hat, Scientific, CentOS, and Ubuntu.  In this example I will install VMware tools on a Red Hat Enterprise/CentOS/Scientific Linux 6 guest running on a VMware ESXi 4.1 host.
First import the VMware repository GPG signing public keys:
# rpm --import http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-DSA-KEY.pub
# rpm --import http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub
Now add the VMware repository.  If you’d like you can use the “echo” command below or simply create the file and its contents are listed below it.  There are other packages available in the repository for other Linux distros, architectures, and ESX host versions.  Again I am using the Red Hat Enterprise 6/VMware ESXi 4.1 version.
# echo -e "[vmware-tools]\nname=VMware Tools\nbaseurl=http://packages.vmware.com\
/tools/esx/4.1latest/rhel6/\$basearch\nenabled=1\ngpgcheck=1" > /etc/yum.repos.d\
/vmware-
tools.repo
Now we can list the contents of the new repo file:
[root@server1 ~]# cat /etc/yum.repos.d/vmware-tools.repo
Here is what the contents should look like:
[vmware-tools]
name=VMware Tools
baseurl=http://packages.vmware.com/tools/esx/4.1latest/rhel6/$basearch
enabled=1
gpgcheck=1

It is now time to run the actual install of VMware tools.  In my case I am installing on a server system without X11 graphical interface so this is the minimum install:
# yum -y install vmware-open-vm-tools-nox
If you are installing on a workstation or server with X11 installed and would like the VMware display adapter and mouse drivers loaded use this command.  The install will be a bit bigger:
# yum -y install vmware-open-vm-tools
You are now up and running with VMware tools!

CentOS 6.2 отсутствует eth0

Установил на VMWARE ESX4.0 CentOS 6.2 в минимальной установке.

vmware-tools берем с http://packages.vmware.com/tools/esx/4.0latest/rhel6/index.html
Для установки без иксов  ставим следующие пакеты


rpm -i vmware-open-vm-tools-nox-8.0.4-660575.el6.x86_64.rpm vmware-open-vm-tools-common-8.0.4-660575.el6.x86_64.rpm vmware-open-vm-tools-kmod-8.0.4-660575.el6.x86_64.rpm

Сделал шаблон, после создания новой VM из этого шаблона, не запустилась сеть, точнее файл ifcfg-eth0 есть, но с MAC-адресом исходной VM до создания шаблона, а файла ifcfg-eth1 нет.


# cat /proc/net/dev

Inter-|   Receive                                                |  Transmit

 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed

    lo:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0

  eth1:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0


Смотрим файл /etc/udev/rules.d/70-persistent-net.rules

# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x15ad:0x07b0 (vmxnet3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:86:2c:7f", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x15ad:0x07b0 (vmxnet3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:86:77:82", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"



вторник, 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


суббота, 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

четверг, 3 ноября 2011 г.

Linux - напоминалка

Анализ сетевой активности:
iptraf
iftop
nload

Сканирование сети, пинг нескольких хостов
nmap -sP 192.168.1.2-5

nmap -sS -p- -PS80,22 -n -T4 -vvv --reason google.com

-sS — посылать только syn и считать порт открытым если получен syn_ack
-p- — сканировать все 65 тысяч портов, потому как по дефолту сканируются только популярные до 1024
-PS80,22 — принимать решение о том что хост онлайн не на основании icmp echo, а на основании доступности tcp-порта
-n — не делать DNS-резолв, типа выяснения PTR записей и прочего
-T4 — большая скорость, маленькие тайминги (если канал у цели и себя быстрый)
-vvv — максимум verbosity, так найденные порты будут показаны по ходу сканирования а не после завершения
--reason — показывать почему было принято решение о таком состоянии порта  

USB

lsusb
cat /proc/bus/usb/devices 


Восстановление флешки

lsusb
cat /proc/bus/usb/devices
посмотреть в папке  /dev/disk/by-id соответсвие
ls -l
total 0
lrwxrwxrwx 1 root root  9 Nov  6 19:51 ata-ST360014A_3JV37K2N -> ../../hda
lrwxrwxrwx 1 root root 10 Nov  6 19:51 ata-ST360014A_3JV37K2N-part1 -> ../../hda1
lrwxrwxrwx 1 root root 10 Nov  6 19:51 ata-ST360014A_3JV37K2N-part2 -> ../../hda2
lrwxrwxrwx 1 root root  9 Nov  6 19:51 ata-ST380011A_5JVS1FJW -> ../../hdd
lrwxrwxrwx 1 root root  9 Jan 29 08:20 usb-TOSHIBA_MK3263GSXN_20A02FFFFFFF -> ../../sda

dd if=/dev/zero of=/dev/sda
hdparm /dev/sda
fdisk /dev/sda


mkfs.vfat -F 32 /dev/sda1 
 

среда, 10 августа 2011 г.

Сборка пакетов в CentOS

Для сборки Zabbix
yum install zlib-devel mysql-devel glibc-devel curl-devel gcc automake libidn-devel openssl-devel net-snmp-devel rpm-devel OpenIPMI-devel 
 
и т.п. 
 
yum -y install gcc make curl-devel iksemel-devel net-snmp-devel 
 
 
yum install make 
 
 
yum groupinstall "Development Tools"
or
yum install gcc gcc-c++ kernel-devel