пятница, 30 июня 2017 г.

Astralinux & 1C

Последние закупки МО РФ Astra Linux Special Edition 1.5
Системные требования 1С:Предприятия 8
Соответствие компонентной базы SE & CE
Скачать
Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов
ftp.astra-linux.com
ftp.astra-linux.com документация

Таким образом Astra Linux Special Edition 1.5 по компонентной базе соответствует Astra Linux Common Edition 1.11

ЛИЦЕНЗИОННОЕ СОГЛАШЕНИЕ
orel-1.11-08.04.2016_17.35.iso

пакет ia32-libs есть в репозитории http://mirror.yandex.ru/astra/stable/orel/1.11/repository/pool/main/i/ia32-libs/

# nano /etc/apt/sources.list
Заменить:
deb http://mirror.yandex.ru/astra/stable/orel/1.11/repository/ orel contrib main non-free
deb http://mirror.yandex.ru/debian wheezy main contrib non-free
 Сохранить.
# apt-get update

# echo "deb http://mirror.yandex.ru/astra/stable/orel/1.11/repository/ orel contrib main non-free" » /etc/apt/sources.list
# echo "deb http://mirror.yandex.ru/debian wheezy main contrib non-free" » /etc/apt/sources.list
# apt-get update
# apt-get install ia32-libs# apt-get -f install
---------------------------------------------------------------------------------------------------------------------
Установка  без автоопределения сети
Отключение программы Wicd
Посмотреть имя nic
# ip link show
Стандартное eth0
Настройка сети
# nano /etc/network/interfaces
Добавить:

auto eth0
iface eth0 inet dhcp

#iface eth0 inet static
#address 192.168.1.46
#netmask 255.255.255.0
#gateway 192.168.1.1
#dns-nameservers 192.168.1.1
#auto eth0

Сохранить.

# service networking restart
Появиться интернет.

# nano /etc/apt/sources.list

Заменить:

#deb cdrom:[OS Astra Linux 1.11 orel - amd64 DVD ]/ orel contrib main non-free
#deb http://mirror.yandex.ru/astra/stable/orel/current/repository orel main contrib non-free
deb http://mirror.yandex.ru/astra/stable/orel/1.11/repository/ orel contrib main non-free
#deb http://mirror.yandex.ru/debian wheezy main contrib non-free

Сохранить.
Обратить внимание, что при подключенном  http://mirror.yandex.ru/debian wheezy main contrib non-free пакеты ia32-libs не устанавливаются.

# apt-get update
# apt-get upgrade
# apt-get install ssh samba
# apt-get install ia32-libs






четверг, 29 июня 2017 г.

Astralinux orel & teamviewer

Установка на 1.11 (на 1.11.9 точно не устанавливается)
# nano /etc/apt/sources.list
Заменить:
#deb cdrom:[OS Astra Linux 1.11 orel - amd64 DVD ]/ orel contrib main non-free
#deb http://mirror.yandex.ru/astra/stable/orel/current/repository orel main contrib non-free
deb http://mirror.yandex.ru/astra/stable/orel/1.11/repository/ orel contrib main non-free
#deb http://mirror.yandex.ru/debian wheezy main contrib non-free
Сохранить.

Обратить внимание, что при подключенном  http://mirror.yandex.ru/debian wheezy main contrib non-free пакеты ia32-libs не устанавливаются.

# apt-get update
# apt-get install ia32-libs
~# wget --no-check-certificate https://download.teamviewer.com/download/teamviewer_amd64.deb
# dpkg -i teamviewer_amd64.deb
!!!# apt-get -f install

среда, 28 июня 2017 г.

Astra Linux Common Edition 1.11.9 on kvm

О как: на virtualbox из под винды 1с с ключом не заработала, а на kvm всё OK!
Не удалось под virtualbox запустить hasp
Проверю под kvm
# cd /var/lib/libvirt/images
# wget http://mirror.yandex.ru/astra/current/orel/iso/orel-1.11.9-13.06.2017_07.56.iso

Обязательно для vnc 5900 порт и любой интерфейс
Для рабочего стола 1280x854 для работы в окне windows

# virsh list
 ID    Имя                         Статус
----------------------------------------------------
 2     debian7                        работает


# virsh vncdisplay debian7
root@u16:/var/lib/libvirt/images# virsh vncdisplay debian7
:0


Подключение по vnc
u16:0
# virsh edit  debian7


Запущенные машины:
# virsh list

Запуск машины
# virsh start debian7
Выключение машины
# virsh shutdown debian7  


$ sudo -i
# apt-get update
# apt-get upgrade
# apt-get install ssh samba

# nano /etc/apt/sources.list

Добавить в конец:
deb http://mirror.yandex.ru/debian wheezy main contrib non-free
 Сохранить.
# apt-get update
# apt-get upgrade

PostgreSQL ставим от wheezy:
# sh -c 'echo "deb http://1c.postgrespro.ru/deb/ wheezy main" > /etc/apt/sources.list.d/postgrespro-1c.list'
# wget --quiet -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C | apt-key add - && apt-get update
# apt-get install postgresql-pro-1c-9.6
# su - postgres
$ psql -l
                                  Список баз данных
    Имя    | Владелец | Кодировка | LC_COLLATE  |  LC_CTYPE   |     Права доступа
-----------+----------+-----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 |
 template0 | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres          +
           |          |           |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres          +
           |          |           |             |             | postgres=CTc/postgres
(3 строки)
$ psql
postgres=#

Далее наберем
\password
введем два раза новый пароль pass
и наберем команду
\q
для выхода.
$ exit
Обратите внимание, что данный пароль устанавливается для внутреннего пользователя базы данных, а не для одноименного пользователя операционной системы debian.
Проверим, корректно ли запущен и работает наш сервер PostgreSQL который нам нужен для дальнейшего развертывания базы данных. Выполним
!!!# service postgresql status
# systemctl status postgresql.service
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; disabled; vendor preset: enabled)
   Active: active (exited) since Sat 2017-06-24 13:17:26 MSK; 2min 52s ago
# systemctl enable postgresql.service
# systemctl status postgresql.service 
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
   Active: active (exited) since Sat 2017-06-24 13:17:26 MSK; 9min ago

!!!# apt-get install imagemagick
!!!# apt-get install unixodbc

Скачать https://packages.debian.org/jessie/ttf-mscorefonts-installer
В каталог /home/user/fonts копируем фонты

В следующей команде указать каталог с фонтами /home/user/fonts
# dpkg-reconfigure ttf-mscorefonts-installer

# fc-cache -fv
..................
/usr/share/fonts/truetype/msttcorefonts: caching, new cache contents: 60 fonts, 0 dirs
..................
fc-cache: succeeded
!!!# fc-list

дистрибутивы 1c в папке /home/user/8.3.10.2252
# cd /home/user/8.3.10.2252
!!!# chown -R user: /home/user/soft
с помощью MobaXterm sftp 
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
!!# apt-get -f install
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
Проверим запущен ли сервер postgresql
# service postgresql status
Запустим сервер
# service srv1cv83 start
# service srv1cv83 status
# ps aux|grep 1c
Подключаемся из 1с и создаем новую базу:

# lsusb
Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Установка локального hasp (только локального)
-------------------------------------------------------------------------
Штатный hasp не встает из-за отсутствия поддержки 32 бит.
Есть http://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/x86_64/AstraLinux/orel/ 
# mkdir /home/user/hasp
# cd /home/user/hasp
# wget http://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/x86_64/AstraLinux/orel/dkms-aksparlnx_7.40-eter1astra_all.deb
# wget http://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/x86_64/AstraLinux/orel/haspd-modules_7.40-eter10astra_amd64.deb
# wget http://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/x86_64/AstraLinux/orel/haspd_7.40-eter10astra_amd64.deb
# dpkg -i haspd_*
Выбор ранее не выбранного пакета haspd.
(Чтение базы данных … на данный момент установлено 111498 файлов и каталогов.)
Подготовка к распаковке haspd_7.40-eter10astra_amd64.deb …
Распаковывается haspd (7.40-eter10astra) …
dpkg: зависимости пакетов не позволяют настроить пакет haspd:
 haspd зависит от libc6-i386 (>= 2.4), однако:
  Пакет libc6-i386 не установлен.

dpkg: ошибка при обработке пакета haspd (--install):
 проблемы зависимостей — оставляем не настроенным
Обрабатываются триггеры для systemd (232-23) …
Обрабатываются триггеры для man-db (2.7.6.1-2) …
При обработке следующих пакетов произошли ошибки:
 haspd

# apt-get -f install
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Исправление зависимостей… Готово
Будут установлены следующие дополнительные пакеты:
  libc6-i386
НОВЫЕ пакеты, которые будут установлены:
  libc6-i386
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 1 пакетов не обновлено.
не установлено до конца или удалено 1 пакетов.
Необходимо скачать 2 597 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 11,5 MB.
Хотите продолжить? [Д/н]
Пол:1 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libc6-i386 amd64 2.24-5 [2 597 kB]
Получено 2 597 kБ за 0с (3 784 kБ/c)
Выбор ранее не выбранного пакета libc6-i386.
(Чтение базы данных … на данный момент установлено 111530 файлов и каталогов.)
Подготовка к распаковке …/libc6-i386_2.24-5_amd64.deb …
Распаковывается libc6-i386 (2.24-5) …
Настраивается пакет libc6-i386 (2.24-5) …
Настраивается пакет haspd (7.40-eter10astra) …
Обрабатываются триггеры для libc-bin (2.24-5) …
Обрабатываются триггеры для systemd (232-23) …
!!!# service haspd restart
# service haspd start
# systemctl status haspd.service 
# systemctl enable haspd.service
# service haspd status
# netstat -anp | grep hasp

Установка клиента
Дистрибутивы 1c в папке /home/user/soft/8.3.10.2252
# cd /home/user/8.3.10.2252
# rm 1c*.deb
!!!# chown -R user: /home/user/soft
с помощью MobaXterm sftp 
# tar xvzf client.deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
 apt-get -f install
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Исправление зависимостей… Готово
Будут установлены следующие дополнительные пакеты:
  geoclue-2.0 iio-sensor-proxy libavahi-glib1 libgeoclue-2-0 libjavascriptcoregtk-1.0-0 libjim0.76 libmbim-glib4
  libmbim-proxy libqmi-glib5 libqmi-proxy libwebkitgtk-1.0-0 modemmanager usb-modeswitch usb-modeswitch-data
Предлагаемые пакеты:
  comgt wvdial
НОВЫЕ пакеты, которые будут установлены:
  geoclue-2.0 iio-sensor-proxy libavahi-glib1 libgeoclue-2-0 libjavascriptcoregtk-1.0-0 libjim0.76 libmbim-glib4
  libmbim-proxy libqmi-glib5 libqmi-proxy libwebkitgtk-1.0-0 modemmanager usb-modeswitch usb-modeswitch-data
обновлено 0, установлено 14 новых пакетов, для удаления отмечено 0 пакетов, и 1 пакетов не обновлено.
не установлено до конца или удалено 2 пакетов.
Необходимо скачать 11,5 MБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 49,5 MB.
Хотите продолжить? [Д/н]
Пол:1 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libjavascriptcoregtk-1.0-0 amd64 2.4.11-3 [1 947 kB]
Пол:2 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libwebkitgtk-1.0-0 amd64 2.4.11-3 [8 057 kB]
Пол:3 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libavahi-glib1 amd64 0.6.32-2 [37,7 kB]
Пол:4 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libgeoclue-2-0 amd64 2.4.5-1 [29,2 kB]
Пол:5 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 geoclue-2.0 amd64 2.4.5-1 [84,6 kB]
Пол:6 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 iio-sensor-proxy amd64 2.0-4 [25,3 kB]
Пол:7 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libmbim-glib4 amd64 1.14.0-1 [66,4 kB]
Пол:8 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libmbim-proxy amd64 1.14.0-1 [7 198 B]
Пол:9 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libqmi-glib5 amd64 1.16.2-1 [365 kB]
Пол:10 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libqmi-proxy amd64 1.16.2-1 [8 628 B]
Пол:11 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 modemmanager amd64 1.6.4-1 [630 kB]
Пол:12 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 libjim0.76 amd64 0.76-2 [114 kB]
Пол:13 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 usb-modeswitch-data all 20170120-1 [47,3 kB]
Пол:14 http://mirror.yandex.ru/astra/current/orel/repository orel/main amd64 usb-modeswitch amd64 2.5.0+repack0-1 [56,4 kB]
Получено 11,5 MБ за 1с (5 870 kБ/c)
Выбор ранее не выбранного пакета libjavascriptcoregtk-1.0-0:amd64.
(Чтение базы данных … на данный момент установлено 112599 файлов и каталогов.)
Подготовка к распаковке …/00-libjavascriptcoregtk-1.0-0_2.4.11-3_amd64.deb …
Распаковывается libjavascriptcoregtk-1.0-0:amd64 (2.4.11-3) …
Выбор ранее не выбранного пакета libwebkitgtk-1.0-0:amd64.
Подготовка к распаковке …/01-libwebkitgtk-1.0-0_2.4.11-3_amd64.deb …
Распаковывается libwebkitgtk-1.0-0:amd64 (2.4.11-3) …
Выбор ранее не выбранного пакета libavahi-glib1:amd64.
Подготовка к распаковке …/02-libavahi-glib1_0.6.32-2_amd64.deb …
Распаковывается libavahi-glib1:amd64 (0.6.32-2) …
Выбор ранее не выбранного пакета libgeoclue-2-0:amd64.
Подготовка к распаковке …/03-libgeoclue-2-0_2.4.5-1_amd64.deb …
Распаковывается libgeoclue-2-0:amd64 (2.4.5-1) …
Выбор ранее не выбранного пакета geoclue-2.0.
Подготовка к распаковке …/04-geoclue-2.0_2.4.5-1_amd64.deb …
Распаковывается geoclue-2.0 (2.4.5-1) …
Выбор ранее не выбранного пакета iio-sensor-proxy.
Подготовка к распаковке …/05-iio-sensor-proxy_2.0-4_amd64.deb …
Распаковывается iio-sensor-proxy (2.0-4) …
Выбор ранее не выбранного пакета libmbim-glib4:amd64.
Подготовка к распаковке …/06-libmbim-glib4_1.14.0-1_amd64.deb …
Распаковывается libmbim-glib4:amd64 (1.14.0-1) …
Выбор ранее не выбранного пакета libmbim-proxy.
Подготовка к распаковке …/07-libmbim-proxy_1.14.0-1_amd64.deb …
Распаковывается libmbim-proxy (1.14.0-1) …
Выбор ранее не выбранного пакета libqmi-glib5:amd64.
Подготовка к распаковке …/08-libqmi-glib5_1.16.2-1_amd64.deb …
Распаковывается libqmi-glib5:amd64 (1.16.2-1) …
Выбор ранее не выбранного пакета libqmi-proxy.
Подготовка к распаковке …/09-libqmi-proxy_1.16.2-1_amd64.deb …
Распаковывается libqmi-proxy (1.16.2-1) …
Выбор ранее не выбранного пакета modemmanager.
Подготовка к распаковке …/10-modemmanager_1.6.4-1_amd64.deb …
Распаковывается modemmanager (1.6.4-1) …
Выбор ранее не выбранного пакета libjim0.76:amd64.
Подготовка к распаковке …/11-libjim0.76_0.76-2_amd64.deb …
Распаковывается libjim0.76:amd64 (0.76-2) …
Выбор ранее не выбранного пакета usb-modeswitch-data.
Подготовка к распаковке …/12-usb-modeswitch-data_20170120-1_all.deb …
Распаковывается usb-modeswitch-data (20170120-1) …
Выбор ранее не выбранного пакета usb-modeswitch.
Подготовка к распаковке …/13-usb-modeswitch_2.5.0+repack0-1_amd64.deb …
Распаковывается usb-modeswitch (2.5.0+repack0-1) …
Настраивается пакет libmbim-glib4:amd64 (1.14.0-1) …
Настраивается пакет iio-sensor-proxy (2.0-4) …
iio-sensor-proxy.service is a disabled or a static unit, not starting it.
Обрабатываются триггеры для mime-support (3.60) …
Обрабатываются триггеры для desktop-file-utils (0.23-1astra1) …
Настраивается пакет libgeoclue-2-0:amd64 (2.4.5-1) …
Настраивается пакет libjim0.76:amd64 (0.76-2) …
Настраивается пакет libmbim-proxy (1.14.0-1) …
Настраивается пакет usb-modeswitch-data (20170120-1) …
Настраивается пакет libjavascriptcoregtk-1.0-0:amd64 (2.4.11-3) …
Настраивается пакет usb-modeswitch (2.5.0+repack0-1) …
Обрабатываются триггеры для libc-bin (2.24-5) …
Настраивается пакет libwebkitgtk-1.0-0:amd64 (2.4.11-3) …
Обрабатываются триггеры для man-db (2.7.6.1-2) …
Настраивается пакет libavahi-glib1:amd64 (0.6.32-2) …
Обрабатываются триггеры для dbus (1.10.18-1) …
Обрабатываются триггеры для hicolor-icon-theme (0.15-1) …
Настраивается пакет libqmi-glib5:amd64 (1.16.2-1) …
Настраивается пакет libqmi-proxy (1.16.2-1) …
Настраивается пакет geoclue-2.0 (2.4.5-1) …
Настраивается пакет 1c-enterprise83-client (8.3.10-2252) …
Настраивается пакет modemmanager (1.6.4-1) …
Created symlink /etc/systemd/system/dbus-org.freedesktop.ModemManager1.service → /lib/systemd/system/ModemManager.service.
Created symlink /etc/systemd/system/multi-user.target.wants/ModemManager.service → /lib/systemd/system/ModemManager.service.
Настраивается пакет 1c-enterprise83-client-nls (8.3.10-2252) …
Обрабатываются триггеры для libc-bin (2.24-5) …
Обрабатываются триггеры для dbus (1.10.18-1) …

И все ОК! 


 

 

Установка русских фонтов на astralinux orel

Штатная установка, фонты не грузит
# wget  http://ftp.ru.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
!!!# apt-get install xfonts-utils cabextract
!!!# dpkg -i ttf-mscorefonts-installer_3.6_all.deb
!!!# fc-cache -fv
!!!# fc-list
# mkdir /home/user/fonts
# cd /home/user/fonts
Скачать или положить в этот каталог
Microsoft's TrueType core fonts
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/times32.exe# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/impact32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/georgi32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/courie32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/comic32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/arialb32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/arial32.exe
# wget --no-check-certificate  https://sourceforge.net/projects/corefonts/files/the%20fonts/final/andale32.exe
# wget --no-check-certificate  https://sourceforge.net/projects/corefonts/files/the%20fonts/final/wd97vwr32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/webdin32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/verdan32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/trebuc32.exe

В следующей команде указать каталог с фонтами /home/user/fonts
# dpkg-reconfigure ttf-mscorefonts-installer

root@astra:/home/user/fonts# fc-cache -fv
..................
/usr/share/fonts/truetype/msttcorefonts: caching, new cache contents: 60 fonts, 0 dirs
..................
fc-cache: succeeded
# fc-list
..................

воскресенье, 25 июня 2017 г.

rssh, или Как разрешить SCP, но запретить SSH

ubuntu 16.04 терминальный сервер

Пробрасываем USB–ключ в контейнер lxc

Installing USB Redirector for Linux
How to Use USB Redirector for Linux in USB Server Mode

Пробрасываем USB–ключ в облако (Linux клиент — Linux сервер)
Давно хотел пробросить hasp  в контейнер lxc, это будет 64 битный серверный зеленый ключ,
установленный на ubuntu 17.04 unity под virtualbox  на win 10. Пробрасывать будем на физический сервер
 на ubuntu 17.04 unity под virtualbox пробрасываем hasp
# lsusb
Bus 001 Device 003: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

# apt update
# apt upgrade
# cd /root/
# wget http://www.incentivespro.com/usb-redirector-linux-x86_64.tar.gz
# tar -xvzf usb-redirector-linux-x86_64.tar.gz
# cd /root/usb-redirector-linux-x86_64
# chmod +x installer.sh
# ./installer.sh install-server
*** Installing USB Redirector for Linux v3.6
***  Destination dir: /usr/local/usb-redirector
***  Checking installation...
***  Detecting system...
***     distribution: ubuntu
***     kernel: 4.10.0-22-generic
Your kernel version is not officially suppported! Would like to try installing anyway [y/n] ? y
You're doing it at your own risk! %)
***  Compiling kernel module...
***  Kernel module successfully compiled
***  Creating directories...
***  Preparing scripts...
***  Copying files...
***  Setting up init script...
***  Starting daemon...
***  Please allow incoming connections on 32032 port for USB Sever to be able to accept connections from remote clients.
***  INSTALLATION SUCCESSFUL! To uninstall, run /usr/local/usb-redirector/uninstall.sh
# systemctl status rc.usbsrvd
# systemctl enable rc.usbsrvd
# systemctl status rc.usbsrvd
# usbsrv -list

================= USB SERVER OPERATION SUCCESSFUL ===============
List of local USB devices:

   1: USB Tablet VirtualBox USB Human Interface Device
      Vid: 80ee   Pid: 0021   Port: 1-1
      Status: plugged

   2: HASP 2.17 AKS
      Vid: 0529   Pid: 0001   Port: 1-2
      Status: plugged

===================== ======================= ===================
# usbsrv -share 2

====================== OPERATION SUCCESSFUL =====================
USB device has been shared
===================== ======================= ===================
# usbsrv -list

================= USB SERVER OPERATION SUCCESSFUL ===============
List of local USB devices:

   1: USB Tablet VirtualBox USB Human Interface Device
      Vid: 80ee   Pid: 0021   Port: 1-1
      Status: plugged

   2: HASP 2.17 AKS
      Vid: 0529   Pid: 0001   Port: 1-2
      Status: plugged, shared
===================== ======================= ===================

!!!# ufw allow from *.*.*.* to any port 32032
!!!# ufw enable

Установка клиента в контейнер ubuntu 16.04.2 в контейнер lxc xp962_1 с установленным 1с и postgres.
# lxc-start -n xp962_1 -d
Зайдем на сервер:
$ sudo -i
# apt update -y
# apt upgrade -y
# cd /root/
# wget http://www.incentivespro.com/usb-redirector-linux-x86_64.tar.gz
# tar -xvzf usb-redirector-linux-x86_64.tar.gz
# cd /root/usb-redirector-linux-x86_64
# chmod +x installer.sh
# ./installer.sh install-client
*** Installing USB Redirector for Linux v3.6
***  Destination dir: /usr/local/usb-redirector
***  Checking installation...
***  Detecting system...
***     distribution: ubuntu
***     kernel: 4.4.0-79-generic
***  Cleaning up installation...
***
***  INSTALLATION FAILED!
??? Kernel sources or kernel headers directory not found. Please install the corresponding package first.

Установим поддерживающие пакеты:
Исходные тексты ядра
# apt install linux-source
Отключим обновления ядра:
# apt-mark hold linux-image-generic linux-headers-generic
linux-image-generic помечен как зафиксированный.
linux-headers-generic помечен как зафиксированный.
# ./installer.sh install-client

*** Installing USB Redirector for Linux v3.6
***  Destination dir: /usr/local/usb-redirector
***  Checking installation...
***  Detecting system...
***     distribution: ubuntu
***     kernel: 4.4.0-79-generic
***  Cleaning up installation...
***
***  INSTALLATION FAILED!
??? Kernel sources or kernel headers directory not found. Please install the corresponding package first.
Резюме: в контейнер lxc hasp таким образом не пробрасывается?










суббота, 24 июня 2017 г.

Astra Linux Common Edition 1.11.9 on virtualbox


(1.11.9  на базе debian 9 пока не рабоатет поддержка 32 бит, не пробрасывается hasp)
О как: на virtualbox из под винды 1с с ключом не заработала, а на kvm всё OK!

Astra Linux Common Edition 1.11.9 on kvm

download Astra Linux Common Edition 1.11.9
Подключение совместимого репозитория Debian в Astra Linux
Астра Линукс (Портал)


$ sudo -i
# apt-get update
# apt-get upgrade
# apt-get install ssh samba

# nano /etc/apt/sources.list

Добавить в конец:
deb http://mirror.yandex.ru/debian wheezy main contrib non-free
 Сохранить.
# apt-get update
# apt-get upgrade

PostgreSQL ставим от wheezy:
# sh -c 'echo "deb http://1c.postgrespro.ru/deb/ wheezy main" > /etc/apt/sources.list.d/postgrespro-1c.list'
# wget --quiet -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C | apt-key add - && apt-get update
# apt-get install postgresql-pro-1c-9.6
# su - postgres
$ psql -l
                                  Список баз данных
    Имя    | Владелец | Кодировка | LC_COLLATE  |  LC_CTYPE   |     Права доступа
-----------+----------+-----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 |
 template0 | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres          +
           |          |           |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres          +
           |          |           |             |             | postgres=CTc/postgres
(3 строки)
$ psql
postgres=#

Далее наберем
\password
введем два раза новый пароль pass
и наберем команду
\q
для выхода.
$ exit
Обратите внимание, что данный пароль устанавливается для внутреннего пользователя базы данных, а не для одноименного пользователя операционной системы debian.
Проверим, корректно ли запущен и работает наш сервер PostgreSQL который нам нужен для дальнейшего развертывания базы данных. Выполним
!!!# service postgresql status
# systemctl status postgresql.service
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; disabled; vendor preset: enabled)
   Active: active (exited) since Sat 2017-06-24 13:17:26 MSK; 2min 52s ago
# systemctl enable postgresql.service
# systemctl status postgresql.service 
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
   Active: active (exited) since Sat 2017-06-24 13:17:26 MSK; 9min ago

!!!# apt-get install imagemagick
!!!# apt-get install unixodbc
# cd /home/user
Скачать https://packages.debian.org/jessie/ttf-mscorefonts-installer
!!!# wget  http://ftp.ru.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
!!!# apt-get install xfonts-utils cabextract
!!!# dpkg -i ttf-mscorefonts-installer_3.6_all.deb
Так не хочет, тогда:
# mkdir /home/user/fonts
# cd /home/user/fonts
Скачать или положить в этот каталог
Microsoft's TrueType core fonts
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/times32.exe# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/impact32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/georgi32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/courie32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/comic32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/arialb32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/arial32.exe
# wget --no-check-certificate  https://sourceforge.net/projects/corefonts/files/the%20fonts/final/andale32.exe
# wget --no-check-certificate  https://sourceforge.net/projects/corefonts/files/the%20fonts/final/wd97vwr32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/webdin32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/verdan32.exe
# wget --no-check-certificate https://sourceforge.net/projects/corefonts/files/the%20fonts/final/trebuc32.exe

В следующей команде указать каталог с фонтами /home/user/fonts
# dpkg-reconfigure ttf-mscorefonts-installer

root@astra:/home/user/fonts# fc-cache -fv
..................
/usr/share/fonts/truetype/msttcorefonts: caching, new cache contents: 60 fonts, 0 dirs
..................
fc-cache: succeeded
# fc-list
.................. 
Дистрибутивы 1c в папке /home/user/soft/8.3.10.2252
# cd /home/user/8.3.10.2252
!!!# chown -R user: /home/user/soft
с помощью MobaXterm sftp 
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
!!# apt-get -f install
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
Проверим запущен ли сервер postgresql
# service postgresql status
Запустим сервер
# service srv1cv83 start
# service srv1cv83 status
# ps aux|grep 1c
# poweroff
Создаем виртуальный образ orel_1.ova
Подключаемся из 1с и создаем новую базу:


.

Установка локального hasp (только локального)
-------------------------------------------------------------------------
Штатный hasp не встает из-за отсутствия поддержки 32 бит.
Есть http://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/x86_64/AstraLinux/orel/ 
# mkdir /home/user/hasp
# cd /home/user/hasp
# wget http://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/x86_64/AstraLinux/orel/dkms-aksparlnx_7.40-eter1astra_all.deb
# wget http://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/x86_64/AstraLinux/orel/haspd-modules_7.40-eter10astra_amd64.deb
# wget http://ftp.etersoft.ru/pub/Etersoft/HASP/7.40/x86_64/AstraLinux/orel/haspd_7.40-eter10astra_amd64.deb
# dpkg -i haspd_*
!!!# apt-get -f install
# service haspd restart
# service haspd status
# netstat -anp | grep hasp
!!!# dpkg -r haspd
Короче локальный ключ проброшенный в орел не работает.
Повторю установку как нибудь, проверю.

Установка клиента
Дистрибутивы 1c в папке /home/user/soft/8.3.10.2252
# cd /home/user/8.3.10.2252
!!!# chown -R user: /home/user/soft
с помощью MobaXterm sftp 
# tar xvzf client.deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install

Итог -
1. hasp пробрасывается в систему, сервис работает, но 1с-ка не работает.

О как: на virtualbox из под винды 1с с ключом не заработала, а на kvm всё OK!
Astra Linux Common Edition 1.11.9 on kvm


пятница, 23 июня 2017 г.

Установка 1с postgresql 9.6.2 debian 9

 Установка PostgreSQL-1C 9.6 и серевера 1С на Debian 8.7.1
# ip addr show
Зайдем с помощью MobaXterm по ssh user
$ su -
# apt-get update
# apt-get upgrade
samba ставим для сервера имен (подключение к серверу из под windows
что бы не не настраивать под windows hosts)
# apt-get install mc samba
На сервере debian обязательно:
Посмотерть ip
# ip a
192.X.X.X
Настроить /etc/hosts
# nano /etc/hosts
127.0.0.1 localhost
192.X.X.X debian

Сохранить.
прописать обязательно, перед подключением базы

проверить:
# ping debian (где debian hostname)
$ su -
Специальной сборки пока нет, ставим от wheezy:
# sh -c 'echo "deb http://1c.postgrespro.ru/deb/ wheezy main" > /etc/apt/sources.list.d/postgrespro-1c.list'
# wget --quiet -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C | apt-key add - && apt-get update
---------------------------------------------------------------------------------------------
Этот блок пропустить, он нужен что бы подтянуть libicu48_4.8.1.1-12+deb7u3_amd64.deb
# nano /etc/apt/sources.list
Добавить в конец:
deb http://ftp.ru.debian.org/debian/ wheezy main
deb-src http://ftp.ru.debian.org/debian/ wheezy main
Сохранить.
# apt-get update
---------------------------------------------------------------------------------------------
Мы поставим его вручную:
# wget http://ftp.br.debian.org/debian/pool/main/i/icu/libicu48_4.8.1.1-12+deb7u3_amd64.deb
# dpkg -i libicu48_4.8.1.1-12+deb7u3_amd64.deb
----------------------------------------------------------------------------------------------
Установка  postgresql
# apt-get install postgresql-pro-1c-9.6
# su - postgres
$ psql -l
                                  Список баз данных
    Имя    | Владелец | Кодировка | LC_COLLATE  |  LC_CTYPE   |     Права доступа
-----------+----------+-----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 |
 template0 | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres          +
           |          |           |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8      | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres          +
           |          |           |             |             | postgres=CTc/postgres
(3 строки)

$ psql
postgres=#

Далее наберем
\password
введем два раза новый пароль pass
и наберем команду
\q
для выхода.
$ exit
Обратите внимание, что данный пароль устанавливается для внутреннего пользователя базы данных, а не для одноименного пользователя операционной системы debian.
Проверим, корректно ли запущен и работает наш сервер PostgreSQL который нам нужен для дальнейшего развертывания базы данных. Выполним
# service postgresql status
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; disabled; vendor preset: enabled)
.....
Для автозагрузки
# systemctl enable postgresql
# service postgresql status
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
......
# reboot
 
$ su -
# service postgresql status
# apt-get install imagemagick
!!!# apt-get install unixodbc
# cd /home/user
Скачать https://packages.debian.org/jessie/ttf-mscorefonts-installer
# wget  http://ftp.ru.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
# apt-get install xfonts-utils cabextract
# dpkg -i ttf-mscorefonts-installer_3.6_all.deb

Дистрибутивы 1c в папке /home/user/soft/8.3.10.2252
# cd /home/user/8.3.10.2252
!!!# chown -R user: /home/user/soft
с помощью MobaXterm sftp 
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
!!# apt-get -f install
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
Проверим запущен ли сервер postgresql
# service postgresql status
Запустим сервер
# service srv1cv83 start
# service srv1cv83 status
# ps aux|grep 1c
# poweroff
Создаем виртуальный образ deb9_1.ova

Подключаемся из 1с и создаем новую базу:


.
 



Установка Ubuntu server 16.04 по сети без интернета

понедельник, 19 июня 2017 г.

Настройка ufw

Основы UFW: общие правила и команды фаервола
Настройка фаервола в Ubuntu с помощью утилиты UFW
Синхронизация времени в Ubuntu 16.04
Для красивых логов расчистим источники мусора
!!!# apt purge snapd ubuntu-core-launcher squashfs-tools
!!!Пакеты, которые будут УДАЛЕНЫ:
!!!lxd* snap-confine* snapd* squashfs-tools* ubuntu-core-launcher*
1. удалим snapd
# apt purge snapd 
2. разрешим обращение к порту 53
# ufw allow out on enp3s0 proto udp  to 192.168.1.1 port 53
3. разрешим доступ к порту 123
 # ufw allow out on enp3s0 proto udp to any port 123
4. разрешим пакеты multicast: # ufw allow in on enp3s0 from 192.168.1.1  to 224.0.0.1

# nmap -sT -O localhost

Итак с самого начала:
Настройка ufw

# apt purge snapd
# ufw reset
# ufw status
# ufw enable
# ufw default deny incoming
# ufw default deny outgoing
# ufw default deny forward
# ufw allow out on tun0
# ufw allow in on tun0
!!!# ufw allow 1194/udp
# ufw allow 1194/tcp
# ufw allow 443/tcp
# ufw allow from 192.168.1.0/24 proto tcp to any port 22
# ufw allow from x.x.x.x proto tcp to any port 21
# ufw allow out on enp3s0 proto tcp from port 21
# ufw allow out on enp3s0 proto tcp from any port 21 to x.x.x.x
# ufw allow out on enp3s0 proto tcp from any port 21 to z.z.z.z/21
# ufw allow out on enp3s0 proto tcp from any port 50000:50010
# ufw allow from x.x.x.x proto tcp to any port 22
# ufw allow from y.y.y.y proto tcp to any port 21
# ufw allow from y.y.y.y proto tcp to any port 22
# ufw allow from z.z.z.z/21 proto tcp to any port 21
# ufw allow out on enp3s0 proto udp  to 192.168.1.1 port 53
# ufw allow out on enp3s0 proto udp to any port 123
# ufw allow in on enp3s0 from 192.168.1.1  to 224.0.0.1

# ufw reload
# ufw status

# nmap -sT -O localhost
# netstat -an | grep :
# cat /proc/sys/net/ipv4/ip_local_port_range
------------------------------------------------------------------------------------------
Окончательный вариант:
# ufw reset
# ufw status
# ufw enable
# ufw default deny incoming
# ufw default deny outgoing
# ufw default deny forward
# ufw allow out on tun0
# ufw allow in on tun0
# ufw allow 443/tcp
# ufw allow from 192.168.1.0/24 proto tcp to any port 22
# ufw allow out on enp3s0 proto udp  to 192.168.1.1 port 53
# ufw allow out on enp3s0 proto udp to any port 123
# ufw allow in on enp3s0 from 192.168.1.1  to 224.0.0.1
# ufw allow from 192.168.1.0/24 proto tcp to any port 1194
# ufw allow from X.X.X.X proto tcp to any port 1194
# ufw allow from Y1.Y1.Y1.Y1/21 proto tcp to any port 1194
# ufw allow from Y2.Y2.Y2.Y2/21 proto tcp to any port 1194
# ufw allow from Z.Z.Z.Z proto tcp to any port 1194
# ufw disable
# ufw enable

Удаление правил:
# ufw status numbered
.........
# ufw delete 2



  

пятница, 16 июня 2017 г.

Установка и настройка Pure-FTPD (Pure FTP)

Установка и настройка Pure-FTPD (Pure FTP)
Установка и настройка Pure-FTPd в Ubuntu
Pure-FTPd: Установка и настройка под Ubuntu
PureFTP
Как установить FTPS-сервер Pure-FTPd для CentOS 7
How to Set up a Secure FTP Server with Pure FTPd on Ubuntu 16.04

# ufw disable
# apt install pure-ftpd
# groupadd ftpgroup
# useradd -g ftpgroup -d /dev/null -s /etc ftpuser
# passwd ftpuser
# mkdir /home/ftpuser/
# chown -R ftpuser:ftpgroup /home/ftpuser
# ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
# mkdir /home/ftpuser/test
# chown -R ftpuser:ftpgroup /home/ftpuser/test
# mkdir /home/ftpuser/test/client
# chown -R ftpuser:ftpgroup /home/ftpuser/test/client
# pure-pw useradd test -u ftpuser -d /home/ftpuser/test
FTP, порты пассивного режима (иначе случайные):
указать два порта на одного клиента. 
# echo "50000 50010" > /etc/pure-ftpd/conf/PassivePortRange
Порты открываются независимо от ufw! (и iptables? )
Работаем только по ip4
# echo "yes" > /etc/pure-ftpd/conf/IPV4Only
"Человеческий лог после отладки убрать"
# echo "yes" > /etc/pure-ftpd/conf/VerboseLog
В логе ip адреса вместо имен.
# echo yes > /etc/pure-ftpd/conf/DontResolve
!!! # echo "YOUR_EXTERNAL_IP_HERE" > /etc/pure-ftpd/conf/ForcePassiveIP
# pure-pw mkdb
# service pure-ftpd restart
# netstat -ln | grep :21
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN

# ufw allow from 192.168.1.0/24 to any port 22
# ufw allow 21/tcp

# ufw enable
# ufw status
Защита Pure-ftpd от брутфорса с помощью Fail2Ban
Идеальный сервер - Ubuntu 14.04, nginx, BIND, MySQL, PHP, Postfix, Dovecot и ISPConfig 3 (страница 3)

# echo yes > /etc/pure-ftpd/conf/DontResolve
# pure-pw mkdb
# service pure-ftpd restart

# nano /etc/fail2ban/jail.d/pureftpd.conf
 Вставить:
[pureftpd]
enabled  = true
port     = ftp
filter   = pureftpd
logpath  = /var/log/syslog
maxretry = 3

Сохранить.
# nano /etc/fail2ban/filter.d/pureftpd.conf
Вставить:
[Definition]
failregex = .*pure-ftpd: \(.*@<HOST>\) \[WARNING\] Authentication failed for user.*
ignoreregex =
Сохранить.

# service fail2ban restart
# iptables -L -n
# fail2ban-client status pureftpd
# fail2ban-client set pureftpd unbanip <Banned IP>

# netstat -t
Активные соединения с интернетом (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp        0      0 192.168.1.46:ftp         x.x.x.x:64087     ESTABLISHED
tcp        0      0 192.168.1.46:50002      x.x.x.x:64129     ESTABLISHED


Активные соединения с интернетом (servers and established) можно посмотреть:
# netstat -pant
--------------------------------------------------------------------------------------
Добавить пользователя test1
# mkdir /home/ftpuser/test1
# chown -R ftpuser:ftpgroup /home/ftpuser/test1
# pure-pw useradd test1 -u ftpuser -d /home/ftpuser/test1
Password:
Enter it again:

# pure-pw mkdb
#  service pure-ftpd restart

Установка vsftpd на Ubuntu 16.04.2

# apt update
# apt upgrade
# apt install vsftpd
# systemctl status vsftpd

# cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
# nano /etc/vsftpd.conf
Заменить:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
#local_umask = 022
allow_writeable_chroot=YES
chroot_local_user=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
xferlog_std_format=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
Сохранить
# systemctl restart vsftpd
# netstat -ln | grep :21
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN

# useradd testuser
# passwd testuser

# mkdir -p /home/testuser/
# chown -R root:root /home/testuser/
# mkdir -p /home/testuser/files
# chown -R testuser:testuser /home/testuser/files

# chown -R root:root /home/user/
# mkdir -p /home/user/files
# chown -R user:user /home/user/files 

# chown -R root:root /home/usr001/
# mkdir -p /home/usr001/files
# chown -R usr001:usr001 /home/usr001/files
# mkdir -p /home/usr001/files/client 
# chown -R usr001:usr001 /home/usr001/files/client
# mkdir -p /home/usr001/files/buh 
# chown -R usr001:usr001 /home/usr001/files/buh


# ufw status
# ufw disable
# ufw allow 20/tcp
# ufw allow 21/tcp
# ufw enable
# ufw status

Снес так как не поддерживает русские буквы в именах файлов
linux <-> windows
# apt purge vsftpd 

четверг, 15 июня 2017 г.

Подчистка WD My cloud (исправление проблем с русскими буквами ftp)

Распределенная база 1с делает файлы обмена вида Message_ГЛ_П1.zip
Кладет на ftp на  WD My cloud , регулярно глючит.
1. Включить ssh
2. Зайти по ssh root
# cd /shares/gotova/client
# ls
Message_??_?2.zip  Message_?1_??.zip
# rm *?*
rm: remove regular file `Message_\303\313_\3172.zip'? y
rm: remove regular file `Message_\3171_\303\313.zip'? y
# ls
3. Отключить ssh

среда, 14 июня 2017 г.

Как скопировать файлы на другой сервер

С источника на приемник
# rsync -av -e ssh /local/path user@remotehost:/path/to/directory
Пример
# rsync -av -e ssh /etc/openvpn user@192.168.1.46:/home/user/

Можно так:
На приемнике примонтировать фс источника
# apt install sshfs
# mkdir /local/path
Подключение
# sshfs user@remotehost:/path/to/directory /local/path
Отключение
# umount /local/path

воскресенье, 11 июня 2017 г.

Install WordPress + Apache, MariaDB, and HHVM in Ubuntu 16.04

Рецепты по администрированию

Хорший ресурс по администрированию
Процессор:
# dmidecode -t processor
Память:
# dmidecode  -t memory

Установка Elastix на существующий CentOS VPS

Сжатие образов HDD VirtualBox

Сжатие образов HDD VirtualBox
HOWTO: Reduce the size of a dynamic VDI file in VirtualBox

Пример для ubuntu:
# apt install zerofree
# reboot

Перезагрузиться удерживая правый shift.

Выбрать recovery режим - root

Отмонтировать
# mount -n -o remount,ro -t ext4 /dev/sda1/
# zerofree /dev/sda1
# poweroff


Преобразовать формат vmdk в vdi :

"C:\Program Files\Oracle\VirtualBox\vboxmanage" clonehd "C:\VirtualBox VMs\Artful Aardvark\Artful Aardvark-disk001.vmdk" "C:\VirtualBox VMs\Artful Aardvark\Artful Aardvark-disk001.vdi" --format VDI

Подключить образ  .vdi вместо .vmdk в виртуальную машину.
Запустить машину.
Сжатие образа (.vdi):
"C:\Program Files\Oracle\VirtualBox\vboxmanage" modifyhd "C:\VirtualBox VMs\Artful Aardvark\Artful Aardvark-disk001.vdi" --compact

Для сжатия диска с windows:
Под windows качаем sdelete

> sdelete -z C:
или
> sdelete64 -z C:

Преобразовать формат vmdk в vdi :

"C:\Program Files\Oracle\VirtualBox\vboxmanage" clonehd "D:\VirtualBox VMs\Windows 2012_2\w2012_04-disk1.vmdk" "D:\VirtualBox VMs\Windows 2012_2\w2012_04-disk1.vdi" --format VDI

Подключить образ  .vdi вместо .vmdk в виртуальную машину.Запустить машину.

Сжатие образа (.vdi):

"C:\Program Files\Oracle\VirtualBox\vboxmanage" modifyhd "D:\VirtualBox VMs\Windows 2012_2\w2012_04-disk1.vdi" --compact

Вывод, если работаем с virtualbox - только vdi.

Изменение размера виртуального диска KVM/QEMU/VirtualBox




суббота, 10 июня 2017 г.

Установка 1c ubuntu 17.10 desktop virtualbox

# apt update && apt upgrade -y
# apt install mc ssh samba -y
# sudo -i
# nano /etc/systemd/journald.conf
...
[Journal]
Storage=persistent
Сохранить.

Просмотреть список предыдущих загрузок можно с помощью команды:
# journalctl --list-boots
Просмотр предыдущей загрузки
# journalctl -b -1
Просмотр последней загрузки
# journalctl -b

# nano /etc/sysctl.conf
В конец
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
Применить сразу:
# sysctl -p
# apt-get install ttf-mscorefonts-installer -y
# apt-get install imagemagick -y
# cd /home/user/8.3.10.2252
# tar xvzf client.deb64.tar.gz
# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
!!!# chown -R usr1cv8:grp1cv8 /opt/1C
!!!# rm -R /home/user/8.3.10.2252
!!!Зададим пароль
!!!# passwd usr1cv8
!!!Запустим сервер
!!!# service srv1cv83 start
!!!# poweroff

!!!# mkdir  /etc/hasplm
!!!# /etc/hasplm/nethasp.ini

Установка локального hasp (только локального)
-------------------------------------------------------------------------
# cd /home/user/hasp
# dpkg --add-architecture i386
# apt-get update
# apt-get install libc6:i386
# dpkg -i --force-architecture aksusbd_7.54-1_i386.deb
# apt-get -f install
# service aksusbd restart
# /etc/init.d/aksusbd status

С локальным hasp работает.
Менеджера лицензий hasplm нет.
# apt install net-tools
# netstat -anp | grep hasp
tcp        0      0 0.0.0.0:1947            0.0.0.0:*               LISTEN      999/hasplmd        
udp        0      0 0.0.0.0:1947            0.0.0.0:*                           999/hasplmd        
udp        0      0 0.0.0.0:55788           0.0.0.0:*                           999/hasplmd        
udp        0      0 127.0.0.1:2790          0.0.0.0:*                           937/winehasp       
unix  2      [ ]         DGRAM                    18624    937/winehasp        
unix  3      [ ]         STREAM     CONNECTED     21527    999/hasplmd         
unix  2      [ ]         DGRAM                    18653    999/hasplmd

-----------------------------------------------------------------------------------------
Удаление
# apt-get remove aksusbd

Установка совмещенного драйвера hasp с lm от Etersoft
Берем здесь:
ftp://updates.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/16.10/

# mkdir /home/user/hasp_64
# cd /home/user/hasp_64


# wget -c ftp://updates.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/16.10/haspd_7.40-eter10ubuntu_amd64.deb


# wget -c ftp://updates.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/16.10/haspd-modules_7.40-eter10ubuntu_amd64.deb
# dpkg -i haspd_*
!!!# apt-get -f install

Проверяем работу модуля
и подключить, а также выключить и включить,
передернуть по питанию

# service haspd restart
# service haspd status 
# netstat -anp | grep hasp

Установка клиента OpenVPN ubuntu 17.10 desktop

Ubuntu Server 17.10 (Artful Aardvark) Daily Build
Ubuntu 17.10 (Artful Aardvark) Daily Build

Бывает нужно пустить трафик программы 1С через интернет.
Для этого нам понадобиться OpenVPN server и client

# apt update && apt upgrade -y
# apt install mc ssh samba -y
# sudo -i
# nano /etc/systemd/journald.conf
...
[Journal]
Storage=persistent
Сохранить.

Просмотреть список предыдущих загрузок можно с помощью команды:
# journalctl --list-boots
Просмотр предыдущей загрузки
# journalctl -b -1
Просмотр последней загрузки
# journalctl -b
# apt-get install openvpn -y

# nano /etc/sysctl.conf
В конец
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
Применить сразу:
# sysctl -p

Кладем /etc/openvpn/client.ovpn
Переименуем:
# mv /etc/openvpn/client.ovpn /etc/openvpn/client.conf
Ручной запуск:
# service openvpn status
# service openvpn restart
!!!# cd /etc/openvpn
!!!# openvpn --config /etc/openvpn/client.conf
!!!# wget -O - -q icanhazip.com
Автозапуск:
# nano /etc/default/openvpn
Раскоментировать:
# AUTOSTART="all"
AUTOSTART="all"
Сохранить.

# reboot
# sudo -i
# wget -O - -q icanhazip.com

Настройка firewall
# nano /etc/sysctl.conf
В конец
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
Применить сразу:
# sysctl -p
# apt install ufw -y
# ip6tables -L
# ip6tables -P INPUT DROP && ip6tables -P OUTPUT DROP && ip6tables -P FORWARD DROP
# ip6tables -L
# cp /etc/default/ufw /etc/default/ufw.bak
# nano /etc/default/ufw
Изменить:
IPV6=no
# ufw status
# ufw disable
# ufw default deny incoming
# ufw default deny outgoing
# ufw default deny forward
# ufw allow out on tun0
# ufw allow in on tun0
# ufw allow out on enp0s3 to 192.168.1.0/24
# ufw allow in on enp0s3 to 192.168.1.0/24
!!!# ufw allow out on enp0s3 to 192.168.0.0/24
!!!# ufw allow in on enp0s3 to 192.168.0.0/24
# ufw allow out to  xxx.xxx.xxx.xxx
# ufw enable
# ufw status
Состояние: активен
В                          Действие    Из
-                          --------    --
Anywhere on tun0           ALLOW       Anywhere
192.168.1.0/24 on enp0s3   ALLOW       Anywhere

Anywhere                   ALLOW OUT   Anywhere on tun0
xxx.xxx.xxx.xxx              ALLOW OUT   Anywhere
192.168.1.0/24             ALLOW OUT   Anywhere on enp0s3
# ufw status numbered
# ufw status numbered
# ufw delete 1

среда, 7 июня 2017 г.

Установка nextcloud на ubuntu 16.04.2

# apt update -y && apt upgrade -y
!!!# apt-get install mc nano wget -y
# apt-get install mc -y
Отключим службу ondemand
(для разгона cpu)
# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
# systemctl stop ondemand
# systemctl disable ondemand
# nano /etc/sysctl.conf
В конец
!!!vm.swappiness=0
!!!vm.vfs_cache_pressure = 100
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
Применить сразу:
# sysctl -p

Включить журналирование (предыдущих загрузок)
# nano /etc/systemd/journald.conf
 ...
 [Journal]
#Storage=auto
Storage=persistent

Сохранить

Обратить внимание на имя nic!!!!
nano /etc/network/interfaces
Пример:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

#source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
#auto enp3s0
#iface enp3s0 inet dhcp

iface enp3s0 inet static
address 192.168.1.46
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 192.168.1.1
auto enp3s0

Сохранить.
Перезагрузка

# reboot
# apt install apache2 mariadb-server libapache2-mod-php -y
# apt install php-gd php-json php-mysql php-curl php-zip php-bz2 libxml2-dev  php-dom php-xmlwriter php-xmlreader php-xml php-mbstring php-ldap -y
# apt install php-intl php-mcrypt php-imagick -y
!!# apt install unzip -y
# cd /var/www
# wget https://download.nextcloud.com/server/releases/latest.zip
# unzip latest.zip
!!!# chown -R www-data:www-data /var/www/html/nextcloud
# nano /tmp/nextcloud.sh
#!/bin/bash
ocpath='/var/www/nextcloud'
htuser='www-data'
htgroup='www-data'
rootuser='root'

printf "Creating possible missing Directories\n"
mkdir -p $ocpath/data
mkdir -p $ocpath/assets
mkdir -p $ocpath/updater

printf "chmod Files and Directories\n"
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750
chmod 755 ${ocpath}

printf "chown Directories\n"
chown -R ${rootuser}:${htgroup} ${ocpath}/
chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/assets/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocpath}/data/
chown -R ${htuser}:${htgroup} ${ocpath}/themes/
chown -R ${htuser}:${htgroup} ${ocpath}/updater/

chmod +x ${ocpath}/occ
printf "chmod/chown .htaccess\n"
if [ -f ${ocpath}/.htaccess ]
 then
  chmod 0644 ${ocpath}/.htaccess
  chown ${rootuser}:${htgroup} ${ocpath}/.htaccess
fi
if [ -f ${ocpath}/data/.htaccess ]
 then
  chmod 0644 ${ocpath}/data/.htaccess
  chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess
fi
Сохранить.
# bash /tmp/nextcloud.sh
# nano /etc/apache2/sites-available/nextcloud.conf
<IfModule mod_ssl.c>
   <VirtualHost _default_:443>

     ServerAdmin admin@local
     ServerName nextcloud
     DocumentRoot /var/www/html

Alias /nextcloud "/var/www/nextcloud/"

   <Directory /var/www/nextcloud/>
       Options +FollowSymlinks
       AllowOverride All

      <IfModule mod_dav.c>
        Dav off
      </IfModule>

       SetEnv HOME /var/www/html
       SetEnv HTTP_HOME /var/www/html
     </Directory>

     <IfModule mod_headers.c>
          Header always set Strict-Transport-Security "max-age=15768000; preload"
     </IfModule>

     SSLEngine on
     SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
     SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

   </VirtualHost>
</IfModule>
Сохранить.

# nano /etc/apache2/sites-available/nc-redir.conf
<VirtualHost *:80>
   ServerName nc-redir
  
   RewriteEngine On
   RewriteCond %{HTTPS} off
   RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,L]
</VirtualHost>

# a2dissite 000-default.conf
# a2ensite nextcloud
# a2ensite nc-redir
# a2enmod rewrite
# a2enmod headers env dir mime
# a2enmod setenvif

# nano /etc/php/7.0/apache2/php.ini
Закоментировать:
;upload_max_filesize = 2M;max_file_uploads = 20
Добавить в конец:
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1
Сохранить.

!!!# service apache2 restart
http://192.168.0.115/nextcloud/

# a2enmod ssl
# a2dissite default-ssl.conf
# service apache2 restart

https://192.168.0.223/nextcloud

# mysql_secure_installation
На пароль Enter
Вводим новый пароль, подтверждаем.
На все Y по умолчанию!
# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 50
Server version: 10.0.29-MariaDB-0ubuntu0.16.04.1 Ubuntu 16.04

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> CREATE DATABASE nextcloud;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> GRANT ALL ON nextcloud.* to 'nextcloud'@'localhost' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit
Bye
# mkdir /data
# chown -R www-data:www-data /data
!!!# chown -R www-data:www-data /mnt/data
https://192.168.0.223/nextcloud

Запускаем браузер и вводим http://ip-server/nextcloud
Задаем логин — Администратора NextCloud сервера
Вводим пароль администратора NextCloud сервера
Указываем место хранения данных, можно оставить по умолчанию и потом изменить.
Пользователь базы данных — nextcloud
Пароль пользователя базы данных (тот, что мы задавали выше при настройке базы данных)
Далее — Завершить установку
# apt install php-memcached memcached -y
# netstat -tap | grep memcached
tcp        0      0 localhost:11211         *:*                     LISTEN      17009/memcached
# ps ax | grep memcached
17009 ?        Ssl    0:00 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1
17176 pts/4    S+     0:00 grep --color=auto memcached
# nano /var/www/nextcloud/config/config.php
Вставить перед конечной );
  'logtimezone' => 'Europe/Moscow',
  'log_type' => 'owncloud',
  'logfile' => 'nextcloud.log',
  'memcache.distributed' => '\OC\Memcache\Memcached',
  'memcache.local' => '\OC\Memcache\Memcached',
  'memcached_servers' => array(
      array('localhost', 11211),
   ),
  'memcached_options' => array(
        \Memcached::OPT_CONNECT_TIMEOUT => 50,
        \Memcached::OPT_RETRY_TIMEOUT =>   50,
        \Memcached::OPT_SEND_TIMEOUT =>    50,
        \Memcached::OPT_RECV_TIMEOUT =>    50,
        \Memcached::OPT_POLL_TIMEOUT =>    50,
        // Enable compression
        \Memcached::OPT_COMPRESSION =>          true,
        // Turn on consistent hashing
        \Memcached::OPT_LIBKETAMA_COMPATIBLE => true,
        // Enable Binary Protocol
        \Memcached::OPT_BINARY_PROTOCOL =>      true,
   ),
Сохранить.
# service apache2 restart
# apt install fail2ban
# nano /etc/fail2ban/filter.d/nextcloud.conf
Добавим:
[INCLUDES]
before = common.conf
[Definition]
failregex = Login failed.*Remote IP.*'<HOST>'
ignoreregex =
Сохранить.
# nano /etc/fail2ban/jail.d/nextcloud.conf
Добавить.

[nextcloud]
enabled  = true
port     = http,https
filter   = nextcloud
# maxretry = 3 
# bantime = 3600
# findtime = 36000
#logpath  = /var/www/nextcloud/nextcloud.log
logpath  = /data/nextcloud.log

Сохранить.
По умолчанию банит на 4 раз, на 600 с.
# service fail2ban restart
nextсloud Защита от подбора пароля с помощью FAIL2BAN
nextcloud-fail2ban

#  fail2ban-client status nextcloud
Status for the jail: nextcloud
|- Filter
|  |- Currently failed: 1
|  |- Total failed:     6
|  `- File list:        /data/nextcloud.log
`- Actions
   |- Currently banned: 1
   |- Total banned:     1
   `- Banned IP list:   192.168.1.246

How to Integrate OnlyOffice with NextCloud 
# fail2ban-client set nextcloud unbanip <Banned IP>

Настройка firewall
# apt install ufw -y
# ip6tables -P INPUT DROP && ip6tables -P OUTPUT DROP && ip6tables -P FORWARD DROP
# ip6tables -L
# cp /etc/default/ufw /etc/default/ufw.bak
# nano /etc/default/ufw
Изменить:
IPV6=no
# ufw disable
# ufw default deny incoming
# ufw default allow outgoing
# ufw default deny forward
!!!# ufw allow ssh
# ufw allow 443
# ufw allow from 192.168.0.0/24
# ufw allow from 192.168.1.0/24 to any port 22
# ufw allow from x.x.x.x  to any port 22
# ufw enable
# ufw status numbered
Состояние: активен
     В                          Действие    Из
     -                          --------    --
[ 1] 443                        ALLOW IN    Anywhere
[ 2] 22                         ALLOW IN    XXX.XXX.XXX.XXX
[ 3] 22                         ALLOW IN    192.168.1.0/24
[ 4] 22                         ALLOW IN    192.168.0.0/24

# iptables -L

Удаление правила:
# ufw status numbered
Состояние: активен
     В                          Действие    Из
     -                          --------    --
[ 1] 22                         ALLOW IN    Anywhere
[ 2] 443                        ALLOW IN    Anywhere
[ 3] Anywhere                   ALLOW IN    192.168.0.0/24
[ 4] Anywhere                   ALLOW IN    192.168.1.0/24

# ufw delete 1
Удаление:
 allow 22

При смене ip адресов (доменов)
# nano /var/www/nextcloud/config/config.php
  array (
    0 => '192.168.0.X',
    1 => '192.168.1.X',
    2 => 'domen.example.com/',
  ),
 Сохранить.
, отключить:
# service apache2 restart
# ufw disable

Ubuntu 16.04 LTS – How To Configure FireWall/IpTables and Fail2Ban
Fail2Ban 0.9.x в Ubuntu 16.04


Настройка Ubuntu для работы с ИБП от APC
 
# lsusb
Bus 001 Device 003: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
# apt-get install apcupsd -y
# nano /etc/apcupsd/apcupsd.conf

#UPSCABLE smart
UPSCABLE usb
......
#UPSTYPE apcsmart
UPSTYPE usb
#DEVICE /dev/ttyS0

# Для проверки можно 30 (потом убрать )
TIMEOUT 0

Сохранить.

Настроим /etc/default/apcupsd 
Заменяем ISCONFIGURED=no на ISCONFIGURED=yes , сохраняем, закрываем. Отныне apcupsd будет знать, что мы не забыли его настроить.

# nano /etc/default/apcupsd

#ISCONFIGURED=no
ISCONFIGURED=yes

Сохранить.
Теперь достаточно запустить apcupsd:

# /etc/init.d/apcupsd start
Starting UPS power management: apcupsd.
# /etc/init.d/apcupsd status

# apt install nmap -y
# nmap -v -sT localhost

Starting Nmap 7.01 ( https://nmap.org ) at 2017-06-08 22:12 MSK
Initiating Connect Scan at 22:12
Scanning localhost (127.0.0.1) [1000 ports]
Discovered open port 80/tcp on 127.0.0.1
Discovered open port 443/tcp on 127.0.0.1
Discovered open port 22/tcp on 127.0.0.1
Discovered open port 3306/tcp on 127.0.0.1
Discovered open port 139/tcp on 127.0.0.1
Discovered open port 445/tcp on 127.0.0.1
Discovered open port 3551/tcp on 127.0.0.1
Completed Connect Scan at 22:12, 0.04s elapsed (1000 total ports)
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00024s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 993 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
139/tcp  open  netbios-ssn
443/tcp  open  https
445/tcp  open  microsoft-ds
3306/tcp open  mysql
3551/tcp open  apcupsd

Read data files from: /usr/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 0.15 seconds
           Raw packets sent: 0 (0B) | Rcvd: 0 (0B)
-----------------------------------------------------------------------------------------------------------------------
Решил дополнить сервер OpenVPN сервером
для подключения web сервера с 1с, а также TightVNC
Как настроить сервер OpenVPN в Ubuntu 17.10

Зайдем на сервер с nextcloud:
$ sudo -i
# nano /etc/sysctl.conf
Раскоментировать:

net.ipv4.ip_forward=1

Сохранить.

# sysctl -p

# ufw disable
# apt install openvpn easy-rsa -y
!!!# cp -R /root/files/openvpn /etc/openvpn
# cp -R /home/user/openvpn /etc/openvpn
Для ubuntu 16.04/2
# nano /etc/openvpn/server.conf
Закоментировать:
# Сообщите клиенту, что когда сервер перезагружается, так что
# Может автоматически повторно подключаться.
;explicit-exit-notify 1
------------------------------------------------------------------------------------------------------------------
port 1194
proto tcp
dev tun
ca ca.crt
cert server.crt
key server.key  # This file should be kept secret
dh dh2048.pem
topology subnet
server 10.8.0.0 255.255.255.0
;ifconfig-pool-persist ipp.txt
client-config-dir /etc/openvpn/ccd/
client-to-client
keepalive 10 120
tls-auth ta.key 0 # This file is secret
key-direction 0
cipher AES-256-CBC
auth SHA256
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
------------------------------------------------------------------------------------------------------------------
Сохранить.
# make-cadir ~/openvpn-ca
# cd ~/openvpn-ca
# source vars
# ./clean-all
# ./build-ca
# ./build-key-server server
# ./build-dh
# openvpn --genkey --secret keys/ta.key
Генерация ключей для клиента
# cd ~/openvpn-ca
# source vars
# ./build-key client1
...............................
# ./build-key client9
Скопируем ключи:
# cd ~/openvpn-ca/keys
# cp ca.crt ca.key server.crt server.key ta.key dh2048.pem /etc/openvpn
!!!# gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | tee /etc/openvpn/server.conf
!!!# cp /etc/openvpn/server.conf /etc/openvpn/server.conf.bak
# nano /etc/openvpn/server.conf
Создать или заменить:
;local a.b.c.d
;proto tcp
proto udp
;dev tap
dev tun
;dev-node MyTap
ca ca.crt
cert server.crt
key server.key  # This file should be kept secret
dh dh2048.pem
topology subnet
server 10.8.0.0 255.255.255.0
;ifconfig-pool-persist ipp.txt
;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100
;server-bridge
;push "route 192.168.10.0 255.255.255.0"
;push "route 192.168.20.0 255.255.255.0"
;client-config-dir ccd
;route 192.168.40.128 255.255.255.248
client-config-dir /etc/openvpn/ccd/
;route 10.9.0.0 255.255.255.252
;learn-address ./script
;push "redirect-gateway def1 bypass-dhcp"
;push "dhcp-option DNS 208.67.222.222"
;push "dhcp-option DNS 208.67.220.220"
client-to-client
;duplicate-cn
keepalive 10 120
tls-auth ta.key 0 # This file is secret
key-direction 0
cipher AES-256-CBC
auth SHA256
;compress lz4-v2
;push "compress lz4-v2"
;comp-lzo
;max-clients 100
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
;log         openvpn.log
;log-append  openvpn.log
verb 3
;mute 20
;explicit-exit-notify 1

Сохранить.

!!!# systemctl restart openvpn@server
# systemctl start openvpn@server
# systemctl enable openvpn@server
# systemctl status openvpn@server

# mkdir -p ~/client-configs/files
# chmod 700 ~/client-configs/files
# cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/client-configs/base.conf
# cp ~/client-configs/base.conf ~/client-configs/base.conf.bak

# nano ~/client-configs/base.conf
Создать:
client
;dev tap
dev tun
;dev-node MyTap
proto tcp
;proto udp
# Указать свой ниже:
remote XXX.XXX.XXX.XXX 1194
;remote my-server-2 1194
;remote-random
resolv-retry infinite
nobind
user nobody
group nogroup
persist-key
persist-tun
;http-proxy-retry # retry on connection failures
;http-proxy [proxy server] [proxy port #]
;mute-replay-warnings
#ca ca.crt
#cert client.crt
#key client.key
remote-cert-tls server
tls-auth ta.key 1
key-direction 1
cipher AES-256-CBC
auth SHA256
#comp-lzo
verb 3
;mute 20
# script-security 2
# up /etc/openvpn/update-resolv-conf
# down /etc/openvpn/update-resolv-conf
Сохранить.

# nano ~/client-configs/make_config.sh
Добавить:
#!/bin/bash
# First argument: Client identifier
KEY_DIR=~/openvpn-ca/keys
OUTPUT_DIR=~/client-configs/files
BASE_CONFIG=~/client-configs/base.conf
cat ${BASE_CONFIG} \
    <(echo -e '<ca>') \
    ${KEY_DIR}/ca.crt \
    <(echo -e '</ca>\n<cert>') \
    ${KEY_DIR}/${1}.crt \
    <(echo -e '</cert>\n<key>') \
    ${KEY_DIR}/${1}.key \
    <(echo -e '</key>\n<tls-auth>') \
    ${KEY_DIR}/ta.key \
    <(echo -e '</tls-auth>') \
    > ${OUTPUT_DIR}/${1}.ovpn
Сохранить.
# chmod 700 ~/client-configs/make_config.sh
# cd ~/client-configs
# ./make_config.sh client1
.........................................
# ./make_config.sh client9

!!! Внимание проверить имена nic!!!
# ufw reset
# ufw status
# ufw disable
# ufw default deny incoming
# ufw default deny outgoing
# ufw default deny forward
# ufw allow out on tun0
# ufw allow in on tun0
# ufw allow 1194/udp
# ufw allow 443/tcp
# ufw allow from 192.168.1.0/24 proto tcp to any port 22
# ufw allow from x.x.x.x proto tcp to any port 21
# ufw allow out on enp3s0 to 192.168.1.0/24
# ufw allow in on enp3s0 to 192.168.1.0/24
# ufw enable# ufw status
#  ufw status
Состояние: активен

В                          Действие    Из
-                          --------    --
Anywhere on tun0              ALLOW       Anywhere
1194/udp                             ALLOW       Anywhere
443                                       ALLOW       Anywhere
22                                         ALLOW       xxx.xxx.xxx.xxx
192.168.1.0/24 on enp0s3   ALLOW       Anywhere

Anywhere                            ALLOW OUT   Anywhere on tun0
192.168.1.0/24                    ALLOW OUT   Anywhere on enp0s3

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

Установка и настройка Pure-FTPD (Pure FTP)
Установка и настройка Pure-FTPd в Ubuntu

# ufw disable
# apt install pure-ftpd
# groupadd ftpgroup
# useradd -g ftpgroup -d /dev/null -s /etc ftpuser
# passwd ftpuser
# mkdir /home/ftpuser/
# chown -R ftpuser:ftpgroup /home/ftpuser
# ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
# mkdir /home/ftpuser/test
# chown -R ftpuser:ftpgroup /home/ftpuser/test
# mkdir /home/ftpuser/test/client
# chown -R ftpuser:ftpgroup /home/ftpuser/test/client
# pure-pw useradd test -u ftpuser -d /home/ftpuser/test
FTP, порты пассивного режима (иначе случайные):
указать два порта на одного клиента. 
# echo "50000 50010" > /etc/pure-ftpd/conf/PassivePortRange
Порты открываются независимо от ufw! (и iptables? )
Работаем только по ip4
# echo "yes" > /etc/pure-ftpd/conf/IPV4Only
"Человеческий лог"(более детальный, после настройки убрать - удалить файл)
!!!# echo "yes" > /etc/pure-ftpd/conf/VerboseLog
В логе ip адреса вместо имен.
# echo yes > /etc/pure-ftpd/conf/DontResolve
# pure-pw mkdb
# service pure-ftpd restart
# netstat -ln | grep :21
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN

# ufw allow from 192.168.1.0/24 to any port 22
# ufw allow 21/tcp
# ufwreload
# ufw status
Защита Pure-ftpd от брутфорса с помощью Fail2Ban
Идеальный сервер - Ubuntu 14.04, nginx, BIND, MySQL, PHP, Postfix, Dovecot и ISPConfig 3 (страница 3)

# echo yes > /etc/pure-ftpd/conf/DontResolve
# pure-pw mkdb
# service pure-ftpd restart

# nano /etc/fail2ban/jail.d/pureftpd.conf
 Вставить:
[pureftpd]
enabled  = true
port     = ftp
filter   = pureftpd
logpath  = /var/log/syslog
maxretry = 3

Сохранить.
# nano /etc/fail2ban/filter.d/pureftpd.conf
Вставить:
[Definition]
failregex = .*pure-ftpd: \(.*@<HOST>\) \[WARNING\] Authentication failed for user.*
ignoreregex =
Сохранить.

# service fail2ban restart
# iptables -L -n
# fail2ban-client status pureftpd
# fail2ban-client set pureftpd unbanip <Banned IP>

# netstat -t
Активные соединения с интернетом (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp        0      0 192.168.1.46:ftp         x.x.x.x:64087     ESTABLISHED
tcp        0      0 192.168.1.46:50002      x.x.x.x:64129     ESTABLISHED

Активные соединения с интернетом (servers and established) можно посмотреть:
# netstat -pant
---------------------------------------------------------------------------------------------------------
Настройка ufw

# apt purge snapd

Окончательный вариант:
# ufw reset
# ufw status
# ufw enable
# ufw default deny incoming
# ufw default deny outgoing
# ufw default deny forward
# ufw allow out on tun0
# ufw allow in on tun0
# ufw allow 443/tcp
# ufw allow from 192.168.1.0/24 proto tcp to any port 22
# ufw allow out on enp3s0 proto udp  to 192.168.1.1 port 53
# ufw allow out on enp3s0 proto udp to any port 123
# ufw allow in on enp3s0 from 192.168.1.1  to 224.0.0.1
# ufw allow from 192.168.1.0/24 proto tcp to any port 1194
# ufw allow from X.X.X.X proto tcp to any port 1194
# ufw allow from Y1.Y1.Y1.Y1/21 proto tcp to any port 1194
# ufw allow from Y2.Y2.Y2.Y2/21 proto tcp to any port 1194
# ufw allow from Z.Z.Z.Z proto tcp to any port 1194
# ufw disable
# ufw enable