вторник, 30 мая 2017 г.

Сбой времени на виртуальном сервере Ubuntu.

Документ без названия

При просмотре syslog /var/log/syslog примерно каждые 5 секунд выдает логи следующего вида:

May 30 06:24:57 testlink-nalivaev systemd[1]: Time has been changed
May 30 06:24:57 testlink-nalivaev systemd[1]: apt-daily.timer: Adding 4h 17min 51.079531s random time.
May 30 06:24:57 testlink-nalivaev systemd[1]: snapd.refresh.timer: Adding 5h 15min 17.711127s random time.
May 30 06:24:57 testlink-nalivaev systemd[3586]: Time has been changed
May 30 06:25:02 testlink-nalivaev systemd[3586]: Time has been changed
May 30 06:25:02 testlink-nalivaev systemd[1]: Time has been changed
May 30 06:25:02 testlink-nalivaev systemd[1]: apt-daily.timer: Adding 5h 4min 58.783176s random time.
May 30 06:25:02 testlink-nalivaev systemd[1]: snapd.refresh.timer: Adding 5h 47min 35.140096s random time.
May 30 06:25:02 testlink-nalivaev systemd[1]: Time has been changed
May 30 06:25:02 testlink-nalivaev systemd[1]: apt-daily.timer: Adding 3h 27min 37.013226s random time.
May 30 06:25:02 testlink-nalivaev systemd[1]: snapd.refresh.timer: Adding 4h 1min 42.182590s random time.
May 30 06:25:02 testlink-nalivaev systemd[3586]: Time has been changed
May 30 06:25:07 testlink-nalivaev systemd[3586]: Time has been changed

Соответственно файл с логами забивается спамом.
Чтобы справиться с этой проблемой в параметрах VM на HYPER-V, службы интеграции, отключил "синхронизация времени".

http://admin-pawwwel.blogspot.ru/2012/10/hyper-v.html

воскресенье, 28 мая 2017 г.

Монтирования ftp директорий.

Документ без названия

Для монтирования удалённых ftp директорий будем использовать curlftpfs:

sudo aptitude install curlftpfs

И снова чтобы смонтировать достаточно одной команды:

sudo curlftpfs -o user="username:password",allow_other ftp://ftp.site.com /mnt/ftp

После -o указываются необходимые параметры. Параметр allow_other позволяет просматривать директорию не только супер пользователю. Параметр user отвечает за имя пользователя\пароль, и дальше указывается директория в которую монтируем.

Этот способ не лишён недостатков в вопросе безопасности. В частности, если посмотреть список процессов через ps -aux, то будет видно логин и пароль, поэтому можно немного обезопасить себя. Для этого, в домашней директории надо создать файл .netrc с примерно таким содержанием:

machine ftp.host.com
login ftpuser
password ftppassword

Параметры надо изменить на свои, и разрешить чтение и запись файла только текущему пользователю:

chmod 600 ~/.netrc

Один из способов добавить монтирование в автозагрузку.

sudo nano /etc/rc.local

sudo curlftpfs -o user="user:password",allow_other ftp://address /mnt/ftp

пятница, 26 мая 2017 г.

Redmine - установка и настройка.

Документ без названия

1. Обновление системы.

sudo apt-get update && sudo apt-get upgrade

2. Создаем пользователя для Redmine, для этого открываем консоль и вводим команду:

sudo adduser --system --shell /bin/bash --gecos 'Redmine Administrator' --group --disabled-password --home /opt/redmine redmine

3. sudo visudo

4. Добавляем следующие строки

# temp - *REMOVE* after installation
redmine ALL=(ALL) NOPASSWD:ALL

Обратите внимание, что пользователь Redmine будет иметь возможность запускать команды root, но это только для упрощения последующих шагов. Удалите эту строку после установки.

5. Авторизируемся пользователем redmine и установим для него rvm:

sudo su - redmine
gpg --keyserver hkp://pgp.mit.edu --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -sSL https://get.rvm.io | bash -s stable
exit

6. Разлогинились, теперь снова логинимся и устанавливаем ruby:

sudo su - redmine
rvm install 2.2.4
exit

7. Redmine

sudo su - redmine
wget http://www.redmine.org/releases/redmine-3.3.3.tar.gz
tar zxf redmine-3.3.3.tar.gz
rm redmine-3.3.3.tar.gz
ln -s /opt/redmine/redmine-3.3.3 redmine
exit

8.MySQL

sudo apt-get install mysql-server libmysqlclient-dev

9. Создаем базу данных и пользователя для нее:

sudo mysql -u root -p

CREATE DATABASE redmine character SET utf8;
CREATE user 'redmine'@'localhost' IDENTIFIED BY 'my_password'; #пароль: QAZ123
GRANT ALL privileges ON redmine.* TO 'redmine'@'localhost';
exit

10. Сконфигурируем подключение к базе данных:

sudo su - redmine
cp redmine/config/database.yml.example redmine/config/database.yml

11. Редактируем конфиг Redmine для соединения с БД:

sudo nano redmine/config/database.yml

Изменяем имя пользователя и пароль:

production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: my_password
encoding: utf8

12. Инициализация Redmine

sudo apt-get install libmagickcore-dev libmagickwand-dev libmysqlclient-dev

gem install bundler
cd redmine/
bundle install --without development test postgresql sqlite
rake generate_secret_token
RAILS_ENV=production rake db:migrate
RAILS_ENV=production redmine:load_default_data
exit

Если видим ошибку при выполнении команды rake generate_secret_token:
То открываем файл зависимостей на редактирование:

nano /opt/redmine/redmine/Gemfile.lock

Находим в нем строку с htmlentities 4.3.1 и заменяем на 4.3.4

Если встречаем ошибку:

redmine@nout:~/redmine$ rake generate_secret_token
[DEPRECATION] `last_comment` is deprecated. Please use `last_description` instead.

Находим в /opt/redmine/redmine/Gemfile.lock, rake 11.1.2 (в моем случае) и заменяем на 10.4.2)

Установка Phusion Passenger

13. Добавление репозитория:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 561F9B9CAC40B2F7
sudo apt-get install apt-transport-https ca-certificates

14. Открываем конфиг файл репозитория:

sudo nano /etc/apt/sources.list.d/passenger.list

15.Добавляем в /etc/apt/sources.list.d/passenger.list адрес репозитория:

deb https://oss-binaries.phusionpassenger.com/apt/passenger trusty main

16. Прописываем пользователя и права доступа к файлу:

sudo chown root: /etc/apt/sources.list.d/passenger.list
sudo chmod 600 /etc/apt/sources.list.d/passenger.list

17. Устанавливаем сам Phusion Passenger:

sudo apt-get update
sudo apt-get install libapache2-mod-passenger

18. Apache

sudo apt-get install apache2

19. Конфигурируем Passenger:

sudo nano /etc/apache2/sites-available/000-default.conf

20. Добавляем следующий блок в конфиг файл:

<Directory /var/www/html/redmine>
RailsBaseURI /redmine
PassengerResolveSymlinksInDocumentRoot on
</Directory>

21. Включаем passenger, добавляем ссылку на redmine и перезапускаем apache2:

sudo a2enmod passenger
sudo ln -s /opt/redmine/redmine/public/ /var/www/html/redmine
sudo service apache2 restart

22. Генерируем новый секретный ключ, подчищаем сессии и кеш:

sudo su - redmine
cd redmine
rake generate_secret_token
rake db:migrate RAILS_ENV=production
rake redmine:plugins:migrate RAILS_ENV=production
rake tmp:cache:clear
rake tmp:sessions:clear
exit

пятница, 19 мая 2017 г.

Настройка Samba в Ubuntu 16.04

Документ без названия Документ без названия 1. Установка Samba Ubuntu вместе со всеми необходимыми компонентами выполняется командой:

apt-get install -y samba samba-common python-glade2 system-config-samba

2. Когда все будет установлено, можно переходить к настройке.
Сначала создайте резервную копию оригинального файла конфигурации Samba:

mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

3. После создания резервной копии, создайте свой файл конфигурации, этой командой:

nano /etc/samba/smb.conf

Сначала укажем глобальные настройки файлового сервера. Для этого вставьте в файл такие строки:

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = smb
security = user
map to guest = bad user
name resolve order = bcast host
wins support = no
dns proxy = no

Рассмотрим подробнее что значат эти строки.
workgroup - рабочая группа, как уже говорилось должна одинакова на всех машинах
netbios name - имя компьютера, которое будет отображаться в Windows
security - по умолчанию выполнять аутентификацию на уровне пользователя
name resolve order - очередность разрешения IP адресов по NetBIOS имени. bcast - означает отправить в локальную сеть широковещательный запрос. Если все компьютеры между которыми планируется взаимодействие находятся в одной сети этот вариант оптимальный.
Когда завершите создание конфигурационного файла, переходим к вопросу как расшарить папку Ubuntu для Windows.
Общий доступ к папке Ubuntu

4. Сначала давайте создадим общую папку доступную всем. То есть с анонимным доступом, без авторизации samba.
Создайте папку, к которой будем открывать доступ, например:

mkdir -p /samba/allaccess

5. После того как папка создана, нужно сделать для нее правильные права доступа. Следующие команды разрешают доступ к папке для всех и делают владельцем nobody:

cd /samba
chmod -R 0755 allaccess
chown -R nobody:nogroup allaccess/

6. Следующим шагом будет описать папку allaccess в файле настройки samba:

[allaccess]
path = /samba/allaccess
browsable = yes
writable = yes
guest ok = yes
read only = no

Теперь ваш конфигурационный файл должен выглядеть вот так:

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = smb
security = user
map to guest = bad user
name resolve order = bcast host
dns proxy = no
#==============
[AllAccess]
path = /samba/allaccess
browsable =yes
writable = yes
guest ok = yes
read only = no

7. Чтобы применить изменения, перезапустите сервер Samba:

service smbd restart

Настройка системы и Samba через Web-интерфейс

8.

wget https://prdownloads.sourceforge.net/webadmin/webmin_1.831_all.deb

9. Для установки webim потребуются некоторые зависимые пакеты:

apt-get install libnet-ssleay-perl libauthen-pam-perl libio-pty-perl apt-show-versions

10. Ну и остается установка:

dpkg --install webmin_1.831_all.deb

Теперь можно заходить в веб-интерфейс по адресу "https://(ip сервера):10000" или "https://(имя сервера):10000":

пятница, 7 апреля 2017 г.

Observium - установка и настройка

Документ без названия

1. Install the packages we need to run Observium (For Ubuntu versions 16.04 and later):

aptitude install libapache2-mod-php5 php5-cli php5-mysql php5-gd php5-snmp php-pear snmp graphviz subversion mysql-server mysql-client rrdtool fping imagemagick whois mtr-tiny nmap ipmitool
apt-get install libvirt-bin

2.

mkdir -p /opt/observium && cd /opt
wget http://www.observium.org/observium-community-latest.tar.gz
tar zxvf observium-community-latest.tar.gz
cd observium
cp config.php.default config.php

3.

mysql -u root -p

CREATE DATABASE observium DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON observium.* TO 'observium'@'localhost' IDENTIFIED BY 'password';

4.

nano config.php

### настройки подключения к БД (из п. 7)
$config['db_host'] = "localhost";
$config['db_user'] = "observium";
$config['db_pass'] = "password";
$config['db_name'] = "observium";

### список сетей для сканирования
$config['nets'][] = "172.22.0.0/16";
$config['nets'][] = "192.168.10.0/24";

5. Setup the MySQL database and insert the default schema:

./discovery.php -u

6. Create the directory Observium will store its logs in:

mkdir logs

7. Создайте каталог для хранения RRDs в и установить правильное владение:

mkdir rrd
chown www-data:www-data rrd

8. Проверка версии apache

apt-cache policy apache2

9. Для версии Apache 2.4

nano /etc/apache2/sites-available/000-default.conf

<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /opt/observium/html
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /opt/observium/html/>
DirectoryIndex index.php
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
ServerSignature On
</VirtualHost>

10.

apt-get install php5-mcrypt

11. Включите модуль php mcrypt:

php5enmod mcrypt

12.

a2dismod mpm_event
a2enmod mpm_prefork
a2enmod php5 a2enmod rewrite
apache2ctl restart (/etc/init.d/apache2 restart)

13.

cd /opt/observium

14. Добавляем учетную запись Observium (10 – уровень)

./adduser.php <username> <password> <level>

15. Настройка отправки сообщений на соответствующем сетевом оборудовании

на cisco

snmp-server enable traps
snmp-server community stc RO
snmp-server host 192.168.43.85 v2c

на HP

snmp-server enable
snmp-server community stc manager restricted
snmp-server host 192.168.43.85 all stc

16.

./add_device.php server1 public v2c

17. Добавляем первый хост для мониторинга:

nano /etc/hosts

192.168.1.30 server1

18. След. скрипты необходимы для обзора и запроса данных:

./discovery.php -h all
./poller.php -h all

19. Установка snmp сервера и стандартных mib:

apt-get install snmpd snmp snmptt

20.

nano /etc/apt/sources.listnano /etc/apt/sources.list

deb http://httpredir.debian.org/debian jessie main contrib non-free
deb-src http://httpredir.debian.org/debian jessie main contrib non-free
deb http://httpredir.debian.org/debian jessie-updates main contrib non-free
deb-src http://httpredir.debian.org/debian jessie-updates main contrib non-free
deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free

21.

apt-get update
apt-get install snmp-mibs-downloader

22. погрузятся свежие MIB файлы из репозитария

download-mibs

23.

nano /etc/snmp/snmp.conf

mibs :BRIDGE-MIB:Q-BRIDGE-MIB:IP-MIB:IF-MIB
#mibs +ALL - включает поиск по всем MIB файлам

24.

apt-get install python-mysqldb (для /opt/observium/poller-wrapper.py 4 >> /dev/null 2>&1)

25. Далее в папке /etc/cron.d/ создаем файл observium с содержимым:

# Run a complete discovery of all devices once every 6 hours
33 */6 * * * root /opt/observium/discovery.php -h all >> /dev/null 2>&1
# Run automated discovery of newly added devices every 5 minutes
*/5 * * * * root /opt/observium/discovery.php -h new >> /dev/null 2>&1
# Run multithreaded poller wrapper every 5 minutes
*/5 * * * * root /opt/observium/poller-wrapper.py 4 >> /dev/null 2>&1
# Run housekeeping script daily for syslog, eventlog and alert log
13 5 * * * root /opt/observium/housekeeping.php -ysel
# Run housekeeping script daily for rrds, ports, orphaned entries in the database and performance data
47 4 * * * root /opt/observium/housekeeping.php -yrptb

*******************************

Смотрим дерево мибов

snmptranslate -Tp

Все параметры, которые можно получить от устройства по протоколу SNMP, можно увидеть с помощью команды:

snmpwalk -c public -v2c 10.0.0.1

где 10.0.0.1 - ip адрес устройства

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

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

mysql -u root -p

SELECT table_schema "DB Name",
Round(Sum(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB"
FROM information_schema.tables
GROUP BY table_schema;

Loganalyser - установка и настройка

Документ без названия

1. Проверяем работает ли syslog

service syslog status

ответ

rsyslog.service - System Logging Service

2. Основной конфигурационный файл демона rsyslogd

/etc/rsyslog.conf

3. устанавливаем Rsyslog с дополнительными пакетами, которые в дальнейшем будут необходимы:

apt-get install rsyslog rsyslog-mysql mysql-server mysql-client

4.

/etc/rsyslog.d/mysql.conf

$ModLoad ommysql
*.* :ommysql:localhost,Syslog,rsyslog,p@ssw0rD

*.* — запись всех логов в базу
ommysql — модуль, с помощью которого rsyslog будет писать в MySQL
Syslog — имя базы
rsyslog — пользователь, которому предоставлен доступ писать в базу Syslog
p@ssw0rD — пароль пользователя rsyslog

5. Перегружаем rsyslog

service rsyslog restart

6. Проверяем базу:

mysql -u rsyslog -p

show databases;
use Syslog;
show tables;
select * from SystemEvents limit 2 \G

7.

nano /etc/rsyslog.conf

$ModLoad imudp
$UDPServerRun 514
# provides TCP syslog reception (если нужен TCP)
$ModLoad imtcp
$InputTCPServerRun 514

8. Переходим к настройке Loganalyzer. В качестве веб-сервера используем Apache, поэтому установим его и пакеты необходимые для работы LogAnalyzer-а:

apt-get install apache2 libapache2-mod-php5 php5-mysql php5-gd

9. Скачиваем последний Loganalyzer, распаковываем его, ставим необходимые права на конфигурационные скрипты:

mkdir /var/www/loganalyzer  (папка для вэб-сервера)
mkdir /tmp/loganalyzer
cd /tmp/loganalyzer  (скачиваем сюда)
tar zxvf loganalyzer-4.1.5.tar.gz
mv loganalyzer-4.1.5/src/* /var/www/html/loganalyzer
mv loganalyzer-4.1.5/contrib/* /var/www/html/loganalyzer

9.

 

service apache2 restart

10. 

chmod +x /var/www/html/loganalyzer/configure.sh /var/www/html/loganalyzer/secure.sh
chown -R www-data:www-data /var/www/html/loganalyzer

среда, 13 апреля 2016 г.

Розница 2.1.
Испортился файл "1cv8u.pfl", поэтому у Вас создаётся при каждом запуске новое рабочее место.
В Win8, например, он находится по адресу: "C:\Users\<Пользователь>\AppData\Local\1C\1Cv82\1cv8u.pfl".

Вобщем закройте 1С, сделайте, на всякий случай, резервную копию сломанного файла.
Замените содержимое (при помощи блокнота) на: 
Код
{
{""},
{
{"Universal",
{"ClientID",
{"#",fc01b5df-97fe-449b-83d4-218a090e681e,88888888-0000-0000-0000-000000000000},""},
{
{""}
}
},
{""}
}
}


Вместо "88888888-0000-0000-0000-000000000000" можете подставить CLSID нужного рабочего места или оставить как есть, остальное не менять, сохранить. Затем запустить Розницу, выбрать рабочее место с вставленным CLSID'ом, настроить это рабочее место (в т.ч. торговое оборудование). Для порядка, удалить кучу ненужных насозданных рабочих мест. 
Готово.