28 февр. 2012 г.

Мониторинг определенного процесса Windows машины в Zabbix

Вначале находим наш узел в Inventory -> Hosts


Redmine русские буквы отображаются знаками вопроса ??? - неправильная кодировка в базе данных.

Если в Redmine русскоязычный интерфейс отображается корректно, а вот содержимое, например, статья в Wiki, вместо русских букв пишет ??? типа как тут:


то суть проблемы заключается в следующем. Вы когда создавали базу данных для редмайна, указали неправильную кодировку для данных.

1. Идем в MYSQL

mysql -uroot -p

2. Узнаем кодировку базы:

use our_database_name;
show variables like "character_set_database";

27 февр. 2012 г.

Работа с историей команд в Linux

Работа с историей команд в Linux:

  • !! — ссылается на предыдущую команду; 
  • !n — ссылается на команду под номером n; 
  • !-n — ссылается на команду по номером „текущая минус n“; 
  • history -c — очистить историю команд, удалив все записи 
  • history -d n — удалить из истории запись под номером n 
  • history -a — дописать команды, введенные в текущей сессии bash, в конец файла $HISTFILE

Установка сканера уязвимостей Nessus на Debian 6

UPDATE:

Сейчас Nessus устанавливается чуть по-другому:

1. Через lynx уже нельзя скачать nessus прямо на сервер, нужно себе на рабочую стандию, затем с помощью scp или как вам удобнее - на сервер.

2. Регистрацию проходим, ключ активации Home версии приходит на e-mail и вводим его в веб-морде nessus-а при первом входе.

3. Не нужно выполнять команды для скачивания плагинов и установки сертификатов - nessus делает всё сам.
-------------

Установка сканера уязвимостей довольно проста. Я устанавливал его на Debian 6, но на других дистрибутивах также проблем быть не должно, только программы для установки другие.

Вначале качаем на сервер дистрибутив для нашей ОС и архитектуры. Лучше делать это с помощью lynx, т. к. ссылка не прямая и wget качает какую-то ересь, если вы просто скопипастите в него ссылку на пакет.

lynx http://www.nessus.org/products/nessus/select-your-operating-system

Принимаем лицензию (Accept), далее выбираем нужный пакет, сохраняем.
Затем юзаем команду:

dpkg -i Nessus-5.0.0-debian6_amd64.deb

17 февр. 2012 г.

Генерация самоподписанного сертификата для Apache

Cтавим openssl если еще нет, затем топаем в папку, где будут лежать сертификаты, например, /etc/ssl/ и юзаем команду чтобы сгенерировать ключ:

openssl genrsa -des3 -out server.key 1024

опция -des3 отвечает за пароль, если ее не указывать, ключ будет без пароля.

Далее генерируем CSR? заполнив всё, что команда спрашивает:

openssl req -new -key server.key -out server.csr

Теперь генерируем самоподписанный сертификат:

openssl x509 -req -days 700 -in server.csr -signkey server.key -out server.cert

Пароли лучше не делать.

Теперь можно юзать наши сертификаты в виртуальных хостах апача:

SSLCertificateFile /etc/ssl/server.cert
SSLCertificateKeyFile /etc/ssl/server.key

Как узнать свой внешний IP через консоль Linux

Юзаем такую команду:

lynx --dump 2ip.ru | egrep -o '([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}' | uniq;

В дистрибутивах обычно lynx по-умолчанию не ставится, но это очень полезный консольный браузер и его стоит устанавливать.

16 февр. 2012 г.

Установка и настройка NFS в Debian 6 Linux

Вначале, как всегда, устанавливаем необходимые компоненты:

sudo apt-get install nfs-kernel-server nfs-common portmap
Затем надо отредактировать файлик, содержащий список шар:

sudo nano -w /etc/exports

Здесь я прописал общую шару, доступную всем так:

/home/vsftpd/shared 10.0.1.0/24(rw,all_squash,anonuid=5001,anongid=65534,no_subtree_check)

А индивидуальную шару, доступную только пользователю с IP 10.0.1.2 так:

/home/vsftpd/user 10.0.1.2(rw,all_squash,anonuid=5001,anongid=65534,no_subtree_check)

В скобках такие параметры потому что мне нужно было сделать видимым каталог ftp и all_squash,anonuid=5001 указывает, что будет использоваться юзер vsftpd, а anongid=65534 - его группа. Посмотреть цифры для вашего пользователя можно в /etc/passwd.
Перезапускаем нфс-сервер:

sudo /etc/init.d/nfs-kernel-server restart

Далее можно не дрочить сервис, а применять новые параметры командой:

sudo exportfs -a

На клиенте чтобы юзать шару делаем следующее:

sudo apt-get install portmap nfs-common
sudo mkdir /mnt/share
sudo mount -t nfs 10.0.1.1:/home/vsftpd/shared /mnt/share

Чтобы шара была доступна автоматически без перезагрузки, редактируем

sudo nano /etc/fstab

Добавляем:

10.0.1.1:/home/vsftpd/shared     /mnt/share     nfs     rw,hard,intr     0

Настройка samba в Linux Debian

Всё написанное далее я сам делал и работало на Debian 6.

Вначале ставим самбу:

aptitude install samba

Затем редактируем конфиг /etc/samba/smb.conf:

[global]                                                           
   workgroup = WORKGROUP                                           
   netbios name = ftp-server                                       
   server string = %h server                                       
   wins support = no                                                                                        
   dns proxy = no                                                  
   name resolve order = host wins bcast                            
   log file = /var/log/samba/log.%m                                
   max log size = 1000                                             
   syslog = 0                                                      
   panic action = /usr/share/samba/panic-action %d                 
   security = user                                                 
   encrypt passwords = true                                        
   passdb backend = tdbsam                                         
   null passwords = true                                           
   obey pam restrictions = yes                                     
   username map /etc/samba/smbusers                                
   unix password sync = yes                                        
   passwd program = /usr/bin/passwd %u                             
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes                                                                                         
   printing = cups                                                                                                   
   printcap name = cups                                                                                                                                                         
   socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192                               
[homes]                                                                                                              
   comment = Home Directories                                                                                        
#если надо шарить хомяки пользователей, ставим тут yes
   browseable = no                                                                                                   
   read only = no                                                                                                    
   create mask = 0700                                                                                                
   directory mask = 0700                                                                                             
[printers]                                                                                                           
   comment = All Printers                                                                                            
   browseable = no                                                                                                   
   path = /var/spool/samba                                                                                           
   printable = yes                                                                                                   
   guest ok = no                                                                                                     
   read only = yes                                                                                                   
   create mask = 0700                                                                                                
[print$]                                                                                                             
   comment = Printer Drivers                                                                                         
   path = /var/lib/samba/printers                                                                                    
   browseable = yes
   read only = yes
   guest ok = no
#это объявление шары, доступной всем
[shared]
path = /home/vsftpd/shared
browseable = yes
read only = no
#тут ставим yes чтобы все могли видеть эту шару
guest ok = yes
create mask = 0660
#в моем случае эта директива играла ключевую роль, т. к. все файлы имеют хозяином пользователя vsftpd и права 660 или 770.
force user = vsftpd
directory mask = 0770
#шара, доступная только пользователю user
[user]
path = /home/vsftpd/user
browseable = yes
read only = no
guest ok = no
create mask = 0660
directory mask = 0770
#здесть через пробел указываем, какому/каким конкретно юзерам будет доступна шара
valid users = user
force user = vsftpd

Проверка сервисов сервера извне

Нашел очень удобный сайтик для проверки извне ftp, web, dns, почты.

http://xseo.in/srv


Как вывести содержимое файла на экран без комментариев (строк, содержащих #)

Я сделал это с помощью двух grep.

cat /etc/some.conf | grep -v '#' | grep -v '^$'

15 февр. 2012 г.

Подсветка синтаксиса конфигурационных файлов в редакторе nano

Этой фишки очень не хватает в nano, а поскольку лично я не люблю vi/vim, то такая вот настройка спасает положение.
Создаем файл с конфигом для цветовой схемы нано:

sudo nano /usr/share/nano/config.nanorc

Туда пишем следующее:

## several config files
syntax "conf" "(\.|/|)conf$" "(\.|/|)logout$" "(\.|/|)COLORS$" "(\.|/|)colors$"
color yellow "/.*$" "TERM" "\..*$" "=.*$" "\*.*$"
color white ":unscaled" "[0-9]"
color blue "setenv|export" "\;"
color green "#.*$"

Далее редактируем конфиг nano:

sudo nano /etc/nanorc

В конце добавляем:

include "/usr/share/nano/config.nanorc"

Теперь файлы типа *.conf будут с подсветкой синтаксиса.

Файлы для подсветки разных языков можно скачать тут

Создание виртуального раздела Linux

Иногда полезно создать "виртуальный" раздел (partition) в виде файла с файловой системой.
Делается это с помощью команды dd (создаем пустой файл размером 48М*1024 = 48 Гб):

sudo dd if=/dev/zero of=/mnt/storage1/virtual count=1024 bs=48M

if - откуда брать данные
of - куда пихать файл
bs - размер блока
count - сколько блоков
Затем можно создать в этом файле файловую систему ext4:

sudo mkfs.ext4 /mnt/storage1/virtual

Виртуальный раздел готов.
Теперь можно его примонтировать командой:

mount -o loop /mnt/storage1/virtual /mnt/virt

Далее чтобы раздел монтировался при перезагрузке системы надо в /etc/fstab добавить строчку типа:

/mnt/storage1       /virtual /mnt/virt       ext4       loop      0      0

Как узнать размер папки через командную строку Linux

Вводим команду:

du -ks /usr/lib

4 февр. 2012 г.

Редирект сабдомена в папку сайта

Делается это следующим рэгэкспом, записанным в конфиге апача httpd.conf (apache2.conf),  виртуального хоста или в файле .htaccess в папке:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.sub.domain.com)|(sub.domain.com .com) [NC]
RewriteRule ^(.*)$ http://domain.com/dest_folder/$1 [L,R=301]

Расположение Ruby Gems

Узнать расположение Ruby Gems и некоторую другую информацию можно с помощью команды:

gem environment