Установка cfssl в unix/linux

Установка Nessus на Debian/Ubuntu/Mint

Nessus является проприетарным сканером уязвимостей в Unix\Linux, который разрабатывается в Tenable Network Security. Его можно бесплатно использовать для личного пользования.

По данным опросов, проведенных sectools.org, Nessus является самым популярным в мире сканером уязвимостей, заняв первое место в 2000, 2003 и 2006 на улучшение безопасности. По оценкам Tenable Network Security, известно что он используется более чем 75 000 организаций по всему миру.

Установка Nessus на Debian/Ubuntu/Mint не займет много времени и не очень сложная. В своей теме «Установка Nessus на Debian/Ubuntu/Mint» я это сейчас покажу как можно сделать (на примере ОС — Debian).

1. Проверяем версию и релиз ОС:

# uname -a
# lsb_release -a

У меня это Debian 7 (32 бит), по этому я скачаю для свой операционной системы данную утилиту.

Перейдем в нужную директорию, я всегда использую:

# cd /usr/local/src

Если у Вас Debian 6 или 7 а так же Kali Linux (32 бит):

# wget  "http://downloads.nessus.org/nessus3dl.php?file=Nessus-5.2.7-debian6_i386.deb&licence_accept=yes&t=054bf0d5344189e8b3ad3a09bcb642bd" -O nessus_32.deb

Если у Вас Debian 6 или 7 а так же Kali Linux (64 бит):

# wget "http://downloads.nessus.org/nessus3dl.php?file=Nessus-5.2.7-debian6_amd64.deb&licence_accept=yes&t=054bf0d5344189e8b3ad3a09bcb642bd" -O nessus_64.deb

Если у Вас Ubuntu 12/13 (32 бит):

# wget "http://downloads.nessus.org/nessus3dl.php?file=Nessus-5.2.7-ubuntu1110_i386.deb&licence_accept=yes&t=054bf0d5344189e8b3ad3a09bcb642bd" -O nessus_32.deb

Если у Вас Ubuntu 12/13 (64 бит):

# wget "http://downloads.nessus.org/nessus3dl.php?file=Nessus-5.2.7-ubuntu1110_amd64.deb&licence_accept=yes&t=054bf0d5344189e8b3ad3a09bcb642bd" -O nessus_64.deb

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

3. Установка Nessus. 

Чтобы произвести установку нужно выполнить:

# dpkg -i имя_пакета

В моем случае я выполняю:

# sudo dpkg -i nessus_32.deb

Начнется установка, пройдет некоторое время, пока установится все нужным образом ( не более пару минут).

4. Запуск программы Nessus. 

Когда у нас уже установлена программа, то ее нужно запустить, для этого выполним команду:

# /etc/init.d/nessusd start

5. Создаем пользователя для работы в Nessus

# /opt/nessus/sbin/nessus-adduser

6. Открываем ваш браузер и переходим в меню утилиты Nessus.https://your_ip_domain:8834

Попадаем на следующий слайд и нажимаем на кнопку «Download plagin», я так понимаю он нужен для работы самой программы. Он устанавливается минуты 3-4. После окончания, вводим логин и пароль которые мы создавали в пункте 5и начинаем проверять систему.

А на этом данная установка Nessus на Debian/Ubuntu/Mint завершена, программа установлена и можно ею пользоваться, надеюсь понятно все было как я описал на своем сайте http://linux-notes.org

Использование watch в Unix/Linux

Синтаксис данной утилиты, отличается в Unix/Linux дистрибутивах.

Использование watch в Linux

По умолчанию команда watch выводит результаты каждые 2 секунды. Используйте следующий формат для запуска команды watch каждую секунду:

$ watch -n 1 free -m

Используйте опцию «-d» с командой watch, чтобы получить четкую разницу между выводом (она будет выделять предыдущий вывод и текущий:

$ watch -d -n 1 free -m

Можно легко наблюдать за процессом создания или копирования дампа ( как пример):

$ cp may_dump.tar.gz /home/captain &

И проверяем:

$ watch -n 0.1 du -h /home/captain/my_dump.tar.gz

Или:

$ watch -n 0.1 ls -h /home/captain/my_dump.tar.gz

Можно, мониторить (выводить) логи:

$ watch tail /var/log/messages

В системах Linux ps команда может использоваться вместе с командой watch для наблюдения работой служб. Например, чтобы запустить команду ps 5 раз в секунду (Для zabbix процессов) используйте:

# watch -n 0.2 ps -fu zabbix

Посмотреть/Показать только zabbix_proxy и zabbix_agent процессы:

# watch -tn 0.2 'ps -f -C zabbix_proxy -C zabbix_agentd'

Чтобы показать только процессы синхронизации истории (речь идет о заббикс):

# watch -tn 0.2 'ps -fC zabbix_server | grep history'

Команда ps имеет довольно большой вывод информации (приблизительно 190 столбцов) и по этому, можно попробовать отобразить только командные строки без UID, PID, времени старта:

# watch -tn 0.2 'ps -o cmd -C zabbix_server -C zabbix_proxy -C zabbix_agentd'

Использование watch в BSD

Если команда watch не установлена, аналогичный эффект может быть достигнут при:

# while ; do ps x; sleep 0.2; clear; done

Если команда watch недоступна, можно попробовать использовать:

# while ; do ps -fu zabbix; sleep 1; clear; done

Использование watch в Solaris

Если команда watch не установлена, периодически обновляемый список процессов может быть показан с:

# while ; do /usr/ucb/ps gxww; sleep 1; clear; done

Использование watch в Mac OS X

Можно использовать:

# watch -n 0.2 ps -fu captain

Как-то так!

Можно обойтись без этой утилиты, — заюзать алиас. Например:

# vim ~/.bashrc

Добавляем:

alias myWatch='_() { while :; do clear; $2; sleep $1; done }; _'

Выполняем:

# . ~/.bashrc

а вот, собственно примеры:

$ myWatch 5 "ls -lF $HOME"

Или:

$ myWatch 1 ps uax | grep captain

У меня все, статья «Установка watch в Unix/Linux» завершена.

Настройка и использование Lsyncd в Unix/Linux

Чтобы все хорошо работало, нужно сгенерировать RSA ключ и положить его на удаленный сервер. Я пропущу данный шаг, т.к я это уже сделал, а если не знаете как это сделать вот статья:

Настройка и использование Lsyncd на Mac OS X

И так, я у себя на mac OS X хотел бы настроить lsyncd таким образом, чтобы он синхронизировал все изменения.

И так, я установил данную утилиту и следующим действием, я создам папку где будет хранится лог-файлы:

$ mkdir /usr/local/var/log/lsyncd

И создаю нужные файлы:

$ touch /usr/local/var/log/lsyncd/lsyncd.{log,status}

PS: В ОС Linux они могут лежать в /var/log/lsyncd. Если не имеется такой папки, то создаем.

Далее, я создаю каталог lsyncd в /etc/ для настройки конфига:

$ sudo mkdir /etc/lsyncd

После создания данной папки, я создаю конфигурационный файл:

# vim /etc/lsyncd/linux_notes.conf.lua

Содержание следующее:

settings  {
    logfile = "/usr/local/var/log/lsyncd/lsyncd.log",
    statusFile = "/usr/local/var/log/lsyncd/lsyncd.status",
    statusInterval = 1,
    nodaemon = off
}
sync {
    default.rsyncssh,
    source = "/Users/captain/tmp",
    host = "captain@31.187.70.238",
    targetdir = "/home/captain/",
    excludeFrom="/etc/lsyncd/linux_notes.exclude",
    delay=3,
    rsync = {
        sparse = true,
        update = true,
        links = true,
        times = true,
        protect_args = false,
        archive = true,
        compress = true,
        whole_file = false,
        acls = true,
        verbose = true
    },
    ssh = {
        port = 22,
        _extra = {"/usr/bin/ssh -l captain -p 22 -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no"}
    }     

}

Иногда нужно исключать некоторые каталоги. Вы можете создать файлe и добавить исключения в строке как в этом примере:

# vim /etc/lsyncd/linux_notes.exclude
.git/*
.*

Теперь мы можем запустить службу lsyncd, выполнив следующую команду:

$ sudo lsyncd /etc/lsyncd/linux_notes.conf.lua -delay 0

Настройка и использование Lsyncd на CentOS

Вот еще пример (проверялось на CentOS 7):

# vim  /etc/lsyncd.conf

И прописываем:

settings  {
    logfile = "/var/log/lsyncd/lsyncd.log",
    statusFile = "/var/log/lsyncd/lsyncd.status",
    statusInterval = 1
}
sync {
    default.rsyncssh,
    source = "/var/www/html",
    host = "31.187.70.238",
    targetdir = "/home/backups/",
    rsync = {
        sparse = true,
        update = true,
        temp_dir="/tmp/",
        links = true,
        times = true,
        protect_args = false,
        archive = true,
        compress = true,
        whole_file = false,
        acls = true,
        verbose = true
     },
     ssh = {
        port = 22,
        _extra = {"/usr/bin/ssh -l captain -p 22 -i /home/captain/.ssh/id_rsa -o StrictHostKeyChecking=no"}
    }     

}

ИЛИ, если использовать RSYNC:

settings = {
 logfile = "/var/log/lsyncd/lsyncd.log",
 statusFile = "/var/log/lsyncd/lsyncd.stat",
 statusInterval = 2,
},
sync{
 default.rsync,
 source="/var/www/html",
 target="31.187.70.238:/home/captain/", 
 rsync={rsh ="/usr/bin/ssh -l captain -i /home/captain/.ssh/id_rsa",}
}

Запускаем демон:

# service lsyncd restart

Добавляем в автозагрузку ОС:

# chkconfig lsyncd on

Если используете CentOS 7:

# systemctl restart lsyncd

И

# systemctl enable lsyncd

Подключаемся к серверу и проверяем папки. Так же, можно посмотреть логи.

Репликация в 2 стороны

Чтобы работала репликация и в обратную сторону — на сервере в другом регионе проведите такие же настройки, но в файле конфигурации lsyncd укажите адрес первого сервера. Проверьте, что данные реплицируются и в обратном направлении. В конфигурации lsyncd уже указана временная директория temp_dir, использование которой необходимо для двусторонней синхронизации.

Репликация на несколько серверов

Вот пример конфиругации:

settings = {
   delay        = 1,
   maxProcesses = 3,
   logfile = "/var/log/lsyncd/lsyncd.log",
   statusFile = "/var/log/lsyncd/lsyncd.stat",
}

targetlist = {
 "66.66.66.10:/var/www/html", 
 "66.66.66.20:/var/www/html"
}

for _, server in ipairs(targetlist) do
  sync{ default.rsync,
    source="/var/www/html",
	rsyncOps="-rltvupgo"
    target=server
  }
end

На этом, у меня все, статья  «Установка Lsyncd в Unix/Linux» завершена.

Опции.

-c
Выход после числа пакетов.

-C
Попробуйте использовать (принудительно) ANSI цветовой режим. Может быть использован, когда описание вашего текущего терминала не имеет цвета.

-e
Показать трафик Ethernet, а не IP. Можно переключаться между ними нажатием клавиши ENTER.

-f
Печать «foreign» интернет адрес числом, а не символическими символами.

-F
Используйте файл в качестве входных данных для выражения фильтра.

-i
Прослушивание по имени интерфейса сети или по UDP порту для Cisco NetFlow. Если не указано, trafshow просматривает список системного интерфейса с наименьшим номером, сконфигурированный до интерфейса (за исключением проверки по шлейфу).

-k
Отключить входную проверку клавиатуры. Он предназначен, чтобы избежать потери пакетов.

-n
Не преобразовывать адреса хостов и номера портов в имена.

-N
Не печатать доменное имя квалификации локального хоста.

-O
Не запускать пакет сопоставления оптимизатора кода. Это полезно, только если вы подозреваете, что ошибка с оптимизатором.

-p
Не ставлять интерфейс в неразборчивый режим.

-r
Задать интервал обновления экрана до нескольких секунд.

-t
Установить максимальное время ожидания для  DNS-запросов до нескольких секунд.

-v
Распечатать подробную информацию о версии данной утилиты и затем выйти.

expr
Выберите, какие пакеты будут отображаться. Если ни одно выражение не задано, будут выведены все пакеты в сети. В противном случае, только пакеты, для которых выражение «true» (правда) будет отображаться.

Для более подробной информации используйте мануал tcpdump.

На этом я завершаю свою тему «Установка trafshow для просмотра сетевой активности Linux/Unix».

Первый билд (джоба) на Jenkins-е

Создаем проект под свои нужды. Потом, создаем «Pipeline» проект, например:

Тестовый pipeline projec для Java

Нажимаем на «OK» и сейчас создадим все необходимое.

Находим «Run the build inside Docker containers» и ставим чекбокс. В поле «Docker Image» ставим наш образ, у меня — «jenkinsci/jnlp-slave:latest». Так же, можно прописать «Advanced settings» опции и выставить использовании по памяти. У меня все имеет вид:

Идем дальше, находим «Pipeline» вкладку и заполняем ее под свои нужды. У меня все приведено и имеет вид:

Т.е я заюзал свой гитлаб сервер. В нем есть репозиторий с проектом. Так же, добавил подключение к гитлабу. Собственно, все готово, можно нажимать на «SAVE»!

Слева вверху, нажимаем на «Build Now» и смотрим что получилось!

Если открыть «Manage Jenkins» -> «Manage Nodes», то появится jenkins-slave:

Видно что поднялся слейв и запустил джобу. Можно открыть ее и поглядеть статус выполнения:

Я думаю что на этом пока все, статья «Установка Jenkins и Jenkins-slave в Unix/Linux» завершена.

Шаг 2 — Установка и настройка информационной панели Kibana

Согласно официальной документации, Kibana следует устанавливать только после установки Elasticsearch. Установка в этом порядке обеспечивает правильность установки зависимостей компонентов.

Поскольку вы уже добавили источник пакетов Elastic на предыдущем шаге, вы можете просто установить все остальные компоненты комплекса Elastic с помощью apt:

Затем активируйте и запустите службу Kibana:

Поскольку согласно настройкам Kibana прослушивает только localhost, мы должны задать , чтобы разрешить внешний доступ. Для этого мы используем Nginx, который должен быть уже установлен на вашем сервере.

Вначале нужно использовать команду openssl для создания административного пользователя Kibana, которого вы будете использовать для доступа к веб-интерфейсу Kibana. Для примера мы назовем эту учетную запись kibanaadmin, однако для большей безопасности мы рекомендуем выбрать нестандартное имя пользователя, которое будет сложно угадать.

Следующая команда создаст административного пользователя Kibana и пароль и сохранит их в файле htpasswd.users. Вы настроите Nginx для использования этого имени пользователя и пароля и моментально прочитаете этот файл:

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

Теперь мы создадим файл серверного блока Nginx. В качестве примера мы присвоим этому файлу имя your_domain, хотя вы можете дать ему более описательное имя. Например, если вы настроили записи FQDN и DNS для этого сервера, вы можете присвоить этому файлу имя своего FQDN:

Создайте файл серверного блока Nginx, используя nano или предпочитаемый текстовый редактор:

Добавьте в файл следующий блок кода и обязательно замените your_domain на FQDN или публичный IP-адрес вашего сервера. Этот код настраивает Nginx для перенаправления трафика HTTP вашего сервера в приложение Kibana, которое прослушивает порт localhost:5601. Также он настраивает Nginx для чтения файла htpasswd.users и требует использования базовой аутентификации.

Если вы выполнили предварительный обучающий модуль по Nginx до конца, возможно вы уже создали этот файл и заполнили его. В этом случае удалите из файла все содержание и добавьте следующее:

/etc/nginx/sites-available/your_domain

server {
    listen 80;

    server_name your_domain;

    auth_basic "Restricted Access";
    auth_basic_user_file etcnginxhtpasswd.users;

    location  {
        proxy_pass httplocalhost5601;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

Завершив редактирование, сохраните и закройте файл.

Затем активируйте новую конфигурацию, создав символическую ссылку на каталог sites-enabled. Если вы уже создали файл серверного блока с тем же именем, что и в обучающем модуле по Nginx, вам не нужно выполнять эту команду:

Затем проверьте конфигурацию на синтаксические ошибки:

Если в результатах будут показаны какие-либо ошибки, вернитесь и еще раз проверьте правильность изменений в файле конфигурации. Когда вы увидите на экране результатов сообщение syntax is ok, перезапустите службу Nginx:

Если вы следовали указаниям модуля по начальной настройке сервера, у вас должен быть включен брандмауэр UFW. Чтобы разрешить соединения с Nginx, мы можем изменить правила с помощью следующей команды:

Примечание. Если вы выполнили предварительный обучающий модуль Nginx, вы могли уже создать правило UFW, разрешающее профилю Nginx HTTP доступ через брандмауэр. Поскольку профиль Nginx Full разрешает трафик HTTP и HTTPS на брандмауэре, вы можете безопасно удалить ранее созданное правило. Для этого нужно использовать следующую команду:

Теперь приложение Kibana доступно через FQDN или публичный IP-адрес вашего сервера комплекса Elastic. Вы можете посмотреть страницу состояния сервера Kibana, открыв следующий адрес и введя свои учетные данные в диалоге:

http://your_domain/status

На этой странице состояния отображается информация об использовании ресурсов сервера, а также выводится список установленных плагинов.

Примечание. Как указывалось в разделе предварительных требований, рекомендуется включить на сервере SSL/TLS. Теперь вы можете следовать указаниями обучающего модуля по Let’s Encrypt для получения бесплатного сертификата SSL для Nginx в Ubuntu 20.04. После получения сертификата SSL/TLS вы можете вернуться и завершить прохождение этого обучающего модуля.

Теперь информационная панель Kibana настроена и мы перейдем к установке следующего компонента: Logstash.

Установка Jenkins в Unix/Linux

Как я говорил ранее, я буду использовать докер для установки дженкинса. ОС которую я использую — Mac OS X. Многие скажует, да какая разница, ты же запускаешь в докере. Но на самом деле — докер немного по разному работает на разных Unix/Linux ОС. Немного пришлось поплясать с бубном, чтобы зависти все это чудо на маке.

Мой docker-compose.yml файл выглядит следующим образом:

Кто работает с докер-компос, тот сможет прочитать данный файл и понять в чем дело

Но если кто-то не знает, я немного расскажу на что стоит заострить внимание. И так:

Я данным сервисом запускаю 3 контейнера, — gitlab, jenkins (master) и socat. Gitlab — система управления репозиториями кода для Git. данные конфиг делался универсальным и чтобы он работал в любом месте и на Unix/Linux системах. Если что-то не будет работать, то стоит рассмотреть поле DNS (в данном поле прописаны ДНС-ы которые служат резолвом в самих докер-контейнера. Иногда это уместно, когда на работе или дома используются свои ДНС, а остальные блокируются).

Можно заюзать статью чтобы проверить, какие ДНС-ы используются:

PS: Для данного поля стоит использовать, ТОЛЬКО 3 DNS ЗАПИСИ, не более! Иначе, они просто не будут работать и моугт сломать контейнер(ы).

Многие посмотрет на «socat» конейнер и спросят, а зачем он тут вообще упал? Так вот, он тут служит перенаправлением данных с порта (2375) на Unix сокет (/var/run/docker.sock). И сново могут полететь вопросы, а зачем?

Да дело в том, что докер-прогеры «не смогли» запилить «docker_opts»/»hosts» переменную в докер под Mac OS X. Данная переменная выполняет собственно аналогичные действия, но нативным спообом. Выглядит это вот так (на стороне Linux):

Т.е данную команду нужно прописать в конфиг докера, или можно запустить демон следующим образом:

На все это дело, я потратил около 7 часов времени и мне не очень было понятно почему не работает. Но в интернете нашелся пример моего бедствия. Я взял идею и опробовал ее — костыльненько, но а что поделать!

Самое интересно, то, что я в своей реализации заюзал «Docker in Docker», т.е пробросил Docker с Mac OS X на Docker хост с jenkins. Иначе , я хз как это должно работать. Если кто-то знает — расскажите

Собственно, gitlab + jenkins — готовы к использованию. Перейдем к настройке jenkins-slave.

Установка Kibana в Unix/Linux

Я расскажу как можно установить Kibana на различные Unix/Linux ОС. А установка начнется с установки JAVA, т.к она неотъемная часть данной утилиты.

Если в вашей системе не установлена Java, используйте одну из следующих ссылок для ее установки:

Вот еще полезное чтиво:

Начнем установку кибаны.

Установка Kibana в Debian/Ubuntu

Имеется несколько способов выполнить установку.

-===СПОСОБ 1 — использовать репозиторий===- 

Загрузите и установите открытый ключ подписи:

# wget -qO - https://artifacts.elastic.co/GPG-KEY-kibana | apt-key add -

Возможно, вам придется установить пакет apt-transport-https на Debian перед продолжением:

apt-get install apt-transport-https -y

Добавляем репозиторий:

# echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-5.x.list

Обновляем репозиторий и выполняем установку кибаны:

# apt-get update && sudo apt-get install kibana -y

-===СПОСОБ 2 — использовать готовый DEB файл===- 

Если у вас 64 бит ОС:

# cd /usr/local/src && wget https://artifacts.elastic.co/downloads/kibana/kibana-5.3.0-amd64.deb && dpkg -i kibana-5.3.0-amd64.deb

Если у вас 32 бит ОС:

# cd /usr/local/src && wget https://artifacts.elastic.co/downloads/kibana/kibana-5.3.0-i386.deb && dpkg -i kibana-5.3.0-i386.deb

-===СПОСОБ 3 — использовать готовый архив===- 

Будет описан ниже.

Установка Kibana в CentOS/Fedora/RedHat

Имеется несколько способов выполнить установку.

-===СПОСОБ 1 — использовать репозиторий===- 

Загрузите и установите открытый ключ подписи:

# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Добавляем репозиторий:

# vim /etc/yum.repos.d/kibana-5.x.repo

И вставляем в него:

name=Kibana repository for 5.x packages
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

Обновляем репозиторий и выполняем установку кибаны:

# yum update && yum install kibana -y

-===СПОСОБ 2 — использовать готовый DEB файл===- 

Если у вас 64 бит ОС:

# cd /usr/local/src && wget https://artifacts.elastic.co/downloads/kibana/kibana-5.3.0-x86_64.rpm && rpm --install kibana-5.3.0-x86_64.rpm

Если у вас 32 бит ОС:

# cd /usr/local/src && wget https://artifacts.elastic.co/downloads/kibana/kibana-5.3.0-i686.rpm && dpkg -i rpm --install kibana-5.3.0-i686.rpm

-===СПОСОБ 3 — использовать готовый архив===- 

Будет описан ниже.

Установка Kibana на другой Unix/Linux ОС

Имеется несколько способов выполнить установку.

-===СПОСОБ 1 — использовать docker===- 

Не было нужды юзать. При первой возможности, я дополню статью.

-===СПОСОБ 2 — использовать готовый файл===- 

Если у вас 64 битный Linux:

# cd /usr/local/src && wget https://artifacts.elastic.co/downloads/kibana/kibana-5.3.0-linux-x86_64.tar.gz && tar xfvz kibana-5.3.0-linux-x86_64.tar.gz

Если у вас 32 битный Linux:

# cd /usr/local/src && wget https://artifacts.elastic.co/downloads/kibana/kibana-5.3.0-linux-x86.tar.gz && tar xfvz kibana-5.3.0-linux-x86.tar.gz

Если у вас Mac OS X (Darwin):

# cd /usr/local/src && wget  https://artifacts.elastic.co/downloads/kibana/kibana-5.3.0-darwin-x86_64.tar.gz && tar xfvz kibana-5.3.0-darwin-x86_64.tar.gz

Сейчас, переносим архив в удобное место:

# mv /usr/local/src/kibana-* /usr/local/kibana

Переходим к настройке переменного окружения:

$ vim ~/.bash_profile

И прописываем:

export JAVA_HOME=/usr/java/jdk1.8.0_121/
export JRE_HOME=/usr/java/jdk1.8.0_121/jre
 
export KIBANA_HOME=/usr/local/kibana/

export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:/usr/bin:/usr/local/bin:$KIBANA_HOME/bin

И чтобы все заработало, выполняем:

$ . ~/.bash_profile

И, можно приступать к настройке.

Установка SVN сервера в Debian/Ubuntu/Mint

В этой статье «Установка SVN сервера в Debian/Ubuntu/Mint» я хотел бы рассказать  как установить и настроить SVN сервер в deb ОС, на примере Debian 8.

Установка SVN сервера в Debian/Ubuntu/Mint

И так, выполним установку утилиты следующей командой:

# apt-get install subversion -y

Создаю директорию для будущего репозитория:

# mkdir -p /srv/svn/repo

Создаем собственно, сам репозиторий:

# svnadmin create /srv/svn/repo

Создаю юзверя-владельца репы и от него же, будет запускаться сам демон:

# useradd subversion --create-home --home-dir /srv/svn --shell /sbin/nologin

Выставляем нужные права на директорию репы:

# chown -R subversion:subversion /srv/svn

И даем права на запись:

# chmod -R ug+rw /srv/svn

Сейчас, необходимо добавить скрипт  SVN сервера, выполняем команду:

cat > /etc/init.d/svnserve << "EOF"
#!/bin/sh -e
# svnserve - brings up the svn server so anonymous users
# can access svn

# Get LSB functions
. /lib/lsb/init-functions
. /etc/default/rcS

SVNSERVE=/usr/bin/svnserve
SVN_USER=subversion
SVN_GROUP=subversion
SVN_REPO_PATH=/srv/svn

# Check that the package is still installed
 || exit 0;

case "$1" in
start)
log_begin_msg "Starting svnserve..."
umask 002
if start-stop-daemon --start \
--chuid $SVN_USER:$SVN_GROUP \
--exec $SVNSERVE \
-- -d -r $SVN_REPO_PATH; then
log_end_msg 0
else
log_end_msg $?
fi
;;

stop)
log_begin_msg "Stopping svnserve..."
if start-stop-daemon --stop --exec $SVNSERVE; then
log_end_msg 0
else
log_end_msg $?
fi
;;

restart|force-reload)
"$0" stop && "$0" start
;;

*)
echo "Usage: /etc/init.d/svnserve {start|stop|restart|force-reload}"
exit 1
;;
esac

exit 0

EOF

Даем права всем на выполнение:

# chmod a+x /etc/init.d/svnserve

Добавлю скрипт в автозагрузку ОС:

# update-rc.d svnserve defaults

Настройка SVN в Debian/Ubuntu/Mint

В моем примере, все конфиги и различные настройки находятся в /srv/svn/repo/conf/ директории. Сейчас нужно немного видоизменить некоторые настройки в файлах.

Поправлю основной конфиг-файл:

# vim /srv/svn/repo/conf/svnserve.conf

Приводим к виду:

anon-access = read
auth-access = write
password-db = passwd
authz-db = authz

Пропишем доступ для пользователей и ихние пароли (пароли хранятся в открытом виде):

# vim /srv/svn/repo/conf/passwd

И прописываем:

 captain = captain
 user1 = password_for_user1

Добавим пользователей в группы и назначим нужные права на работу с репозиторием или на часть его:

# vim /srv/svn/repo/conf/authz

И прописываем:

group1 = captain,user2

Сейчас, выставляю права на корень и назначаю группе «group1» только для чтения. Пользователю captain даю полный доступ, а всем остальным — вообще запрещаю доступ:

[/]
@group1 = r
&captain = rw
* =

Настройку завершил, осталось только — запустить демон SVN чтобы начать уже работу:

# /etc/init.d/svnserve start

 Starting svnserve (via systemctl): svnserve.service.

PS: Сервер SVN юзает TCP 3690 порт, по этому, при необходимости откройте его в фаерволе.

Тема «Установка SVN сервера в Debian/Ubuntu/Mint» завершена.

Установка trafshow для просмотра сетевой активности Linux/Unix

Trafshow – Практически в реальном времени помогает оценить интенсивность использования канала. TrafShow постоянно показывать информацию о пакетном трафике для конфигурации сетевого интерфейса. Он периодически сортирует и обновляет эту информацию. Я сейчас приведу готовые примеры как установить данную утилиту и так же в своей статье «Установка trafshow для просмотра сетевой активности Linux/Unix» как можно пользоваться trafshow.

Debian/Ubuntu/Mint.

Чтобы установить на дебиано-подобные ОС утилиту trafshow, выполните следующую команду для этого:

# apt-get install netdiag

В данный пакет входят следующие утилиты: trafshow,strobe,netwatch,statnet,tcpspray,tcpblas.

CentOS/RedHat/Fedora.

Чтобы установить на redhat-подобные ОС утилиту trafshow, выполните следующую команду для этого:

# yum install trafshow

Замечание! Нужно только подключить репозиторий EPEL.

FreeBSD.

Чтобы установить на freeBSD утилиту trafshow, выполните следующую команду для этого:

# cd /usr/ports/net/trafshow && make install clean

Установка Lsyncd в Unix/Linux

Процесс установки очень прост и не требует очень больших усилий. Я приведу несколько примеров по установки данной утилиты на различные Unix/Linux ОС.

Установка Lsyncd в Debian/Ubuntu

# apt-get update -y && apt-get update -y

Выполним установку:

# apt-get install lsyncd -y

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

Установка Lsyncd в CentOS/RedHat/Fedora

# yum -y update

Выполним установку:

# yum install lsyncd -y

И, установим дополнительные пакеты:

# yum install lua lua-devel pkgconfig gcc asciidoc -y

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

Установка Lsyncd в Mac OS X

Ставим себе на машину homebrew:

И выполняем установку:

$ brew install lsyncd

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: