Архив автора: admin

Установка NextCloud+Nginx+PHP+PostgreSQL на Linux

Сегодня в статье рассмотрим пример по установке и настройке домашнего облака NextCloud в среде Linux, также установим базу данных PostgreSQL и Web-сервер Nginx с PHP-FPM. Установка будет производиться на чистую Ubuntu Server 22.04 LTS.






Системные требования для NextCloud:




  • База данных: MySQL 5.7+, или MariaDB 10.2, или PostgreSQL 9.5+



  • Веб-сервер: Apache с mod_php или php-fpm или nginx с php-fpm



  • Php: 8.2+



  • ОЗУ: 512Мб+ или 2ГБ+, если использовать пакета Collabora или OnlyOffice



  • NextCloud: версии 27.0.1+




Установка




Разобьем установку на части. Установим базу данных PostgreSQL, интерпретатор PHP, далее web-сервер Nginx, ну и последним пунктом наше облако NextCloud:




Установка PostgreSQL




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




sudo apt install postgresql




Установка PHP




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




sudo add-apt-repository ppa:ondrej/php




После этого устанавливаем PHP и необходимые зависимости для NextCloud.




Предупреждение: в данный момент NextCloud поддерживает PHP версии не выше 8.2




sudo apt install php8.2 php8.2-bcmath php8.2-bz2 php8.2-common php8.2-curl php8.2-fpm php8.2-gd php8.2-gmp php8.2-intl php8.2-mbstring php8.2-opcache php8.2-pgsql php8.2-imagick php8.2-xml php8.2-xmlrpc php8.2-zip php8.2-memcached memcached php-memcached




Установка Web-сервера Nginx




Для установки nginx для начала добавим, как и с PHP, более новый репозиторий:




sudo add-apt-repository ppa:ondrej/nginx




Теперь можно установить наш web-сервер. Устанавливать будем сборку в которую включен модуль для проигрывания потокового видео с нашего сервера (поддержка модуля mp4). Открываем терминал и набираем:




sudo apt install nginx-extras




Установка NextCloud




После всех пунктов выше приступим к установки нашего домашнего облака NextCloud. Для этого переходим в директорию /var/www:




cd /var/www/




Скачиваем последнюю версию NextCloud (на данный момент это версия NextCloud 27.0.1), а также сразу распакуем и изменим права на директорию NextCloud:




sudo wget https://download.nextcloud.com/server/releases/nextcloud-27.0.1.zip
sudo unzip nextcloud-27.0.1.zip
sudo chown -R www-data:www-data /var/www/




Настройка




Как и в пункте с установкой, настройка также будет разбита по пунктам. Давайте приступим.




Настройка Nginx для NextCloud




Приступим к настройке web-сервера nginx. Создадим файл конфигурации для NextCloud, работать наш сервер будет на порту 80. И так начнем:




sudo nano /etc/nginx/sites-available/nextcloud.conf




Заполняем в соответствии с моим листингом:




server {
    listen 80;
    root /var/www/nextcloud;
    index index.php index.html;
    server_name mynextcloud.ru; # меняем на свой домен
    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }
    location / {
            rewrite ^(/core/doc/[^/]+/)$ $1/index.html;
            rewrite ^ /index.php;
            try_files $uri $uri/ index.php;
    }
    # Устанавливаем максимальный размер загрузки
    client_max_body_size 2048M;
    fastcgi_buffers 64 4K;
    # Указываем расположение страниц 40X.php
    error_page 403 /core/templates/403.php;
    error_page 404 /core/templates/404.php;
location /.well-known {
         location = /.well-known/carddav   { return 301 $scheme://mynextcloud.ru/remote.php/dav/; }
         location = /.well-known/caldav    { return 301 $scheme://mynextcloud.ru/remote.php/dav/; }
         # Все остальное динамически обрабатывается Nextcloud
         location ^~ /.well-known          { return 301 $scheme://mynextcloud.ru/index.php$uri; }
         try_files $uri $uri/ =404;
     }
    # Настройка безопасности
    location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
       deny all;
    }
    location ~ ^/(?:.|autotest|occ|issue|indie|db_|console) {
       deny all;
     }
    location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+).php(?:$|/) {
       include fastcgi_params;
       fastcgi_split_path_info ^(.+.php)(/.*)$;
       try_files $fastcgi_script_name =404;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       fastcgi_param PATH_INFO $fastcgi_path_info;
       # Избегать отправки заголовков безопасности дважды
       fastcgi_param modHeadersAvailable true;
       fastcgi_param front_controller_active true;
       fastcgi_pass unix:/run/php/php8.2-fpm.sock;
       fastcgi_intercept_errors on;
       fastcgi_request_buffering off;
    }
    location ~ ^/(?:updater|ocs-provider)(?:$|/) {
       try_files $uri/ =404;
       index index.php;
    }
    # Добавление заголовка управления кэшем для файлов js и css
    # Убедитесь, что он находится НИЖЕ блока PHP
    location ~* .(?:css|js)$ {
        try_files $uri /index.php$uri$is_args$args;
        add_header Cache-Control "public, max-age=7200";
        # Добавляем заголовки связанные с безопасностью.
        add_header X-Content-Type-Options nosniff;
        add_header X-XSS-Protection "1; mode=block";
        add_header X-Robots-Tag none;
        add_header X-Download-Options noopen;
        add_header X-Permitted-Cross-Domain-Policies none;
        add_header Referrer-Policy no-referrer;
        # Optional: Don't log access to assets
        access_log off;
   }
   # Настройка обработки для файлов данного типа
   location ~* .(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg)$ {
        try_files $uri /index.php$uri$is_args$args;
        expires 6M; # Управление кэшем
        access_log off; # Отключение логирования
   }
# Настройки для обработки потокового видео
   location ~ .(?:flv|mp4|mov|m4a)$ {
        mp4;
        mp4_buffer_size 20m;
        mp4_max_buffer_size 40m;
        fastcgi_split_path_info ^(.+.php)(/.)$;
        try_files $fastcgi_script_name =404;
        include fastcgi_params;
        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        expires max;
        directio 10m;
        limit_rate 1024m;
        limit_rate_after 10m;
   }
}




Адрес mynextcloud.ru измените на свой.




Далее создании ссылку на наш файл:




ln -s /etc/nginx/sites-available/nextcloud.conf /etc/nginx/sites-enabled/




удаляем дефолтный файл конфигурации:




rm /etc/nginx/sites-enabled/default




Проверяем все ли мы правильно сделали:




nginx -t




Если ошибку нет, то перезапускаем nginx




service nginx restart




Настройка PHP




Настроим PHP для работы с NextCloud. В терминале набираем:




sudo nano /etc/php/8.2/fpm/php.ini




Находим и редактируем следующие строки:




max_execution_time = 300
max_input_time = 600
memory_limit = 512M
post_max_size = 20M
upload_max_filesize = 40M
# Настройка кэширования
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.revalidate_freq=1
opcache.save_comments=1




Настройка PostgreSQL




Сперва настроим наш PostgreSQL для прослушивания всех внутренних адресов сервера. Для этого открываем следующий файл:




sudo nano /etc/postgresql/14/main/postgresql.conf




Находим и приводим данную строчку к такому виду:




listen_addresses = '*'




Теперь можно создать нашу БД для NextCloud, а также создадим пользователя БД и пароль для него. Подключаемся к postgresql:




sudo -u postgres psql




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




CREATE DATABASE nextcloud; # создаем БД
CREATE USER usernxt WITH PASSWORD 'mypasswords'; # создаем пользователя и вводим пароль для него
ALTER DATABASE nextcloud OWNER TO usernxt;
GRANT ALL PRIVILEGES ON DATABASE nextcloud to usernxt;
exit




Далее переходим по адресу нашего сервера (локальному или внешнему например: http://mynextcloud.ru) и видим первоначальную установку NextCloud




install-nextcloud




Из скриншота видим, что на самом верху нам предлагается придумать учетную запись и пароль администратора nextcloud.




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




Последняя группа полей ответственна за подключение к базе данных. Чуть выше мы создавали и настраивали БД PostgreSQL, вот эти данные и вводим сюда. И нажимаем кнопку продолжить.




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




nextcloud




Замечание: В панели администратора в пункте общие сведения Вы можете наблюдать различные ошибки и предупреждения от системы. Как их устранить я писал тут.




На этом наша настройка домашнего облака NextCloud завершается. Всем удачи!!!



[endtxt]




. . . .




2021-04-07T20:04:00
NextCloud

🖧 Безопасность беспроводной сети Wi-fi

Как обеспечить безопаcность Wi-fi?

Сегодня беспроводные технологии широко используются в корпоративных офисах, на предприятиях, государственных и образовательных учреждениях. Существует множество книг,которые охватывают основы практического подхода к анализу и тестированию и на проникновение беспроводных сетей. В этом статье мы рассмотрим несколько способов анализа беспроводной сети , существующие техники атак, а также дадим рекомендации по использованию Wi-Fi.

 

Методы анализа и эксплуатации поверхности атаки Wi-Fi

Технология Wi-Fi существует примерно с 1997 года. С тех пор произошли значительные улучшения в аспектах безопасности. Однако беспроводные технологии по-прежнему подвержены нескольким векторам атак, реализация которых часто приводят к несанкционированному доступу к сетевым устройствам. Некоторыми из наиболее часто встречающихся угроз беспроводной связи являются: подделанные точки доступа, атаки типа «человек по середине», DoS-атаки, неправильные настройки безопасности на точке, атаки типа Caffe Latte, сетевые инъекции, и это лишь некоторые из них.

Чтобы провести аудит безопасности Wi-Fi, рекомендуем использовать aircrack-ng или NetSumbler. Также специалисты часто используют такие инструменты, как Cain and Able, AirSnort, AirJack, KisMet и InSSIDer. Выбор конкретного инструмента, конечно, зависит от условий, целей и требований, которые стоят перед специалистом по информационной безопасности.

 

 

 

Сбор и анализ данных Wi-Fi

Сбор и анализ данных являются основой для успешного проведения атак на Wi-Fi. Эти данные содержаттакую информацию, как MAC-адреса устройств, IP-адреса,полученные устрйоствами, местоположение, история входа в систему, модель и версия ОС устройств, почтовые серверы, к которым вы подключены, имена пользователей, установленные приложения и т. д. Если ли же установлены снифферы для перехвата трафика, то это может означать что все ваши входящие и исходящие пакеты могут быть перехвачены с целью сбора конфиденциальной информации.

Логи Wi-Fi можно использовать для анализа производительности и обеспечения безопаности а также, например, если вы крупный розничный магазин, ваши данные Wi-Fi можно использовать для следующих целей:

  • Проверить / собрать логины пользователей и их контактные данные.
  • Собрать почтовые индексы, чтобы знать, откуда люди едут к Вам.
  • Использовать трекер MAC-адресса, чтобы понять, куда люди едут и откуда.
  • Создать шаблон посещения магазинов покупателями, например, в определенное время или день недели.
  • Собрать информацию о посещаемых сайтах, чтобы проверить интересы людей.

С другой стороны, эти данные могут использоваться для создания пользовательских профилей поведения (в некоторых странах это считается неэтичным и недопустимым). C целью же обеспечения информационной безопаности полезными будут данные о:

  • Действиях выполняемые пользователями.
  • Об устройствах, подключенных к сети (как разрешенные, так и нелегитимные).
  • О состоянии инфраструктуры Wi-Fi.

Существует множество инструментов, которые предлагают указанный функционал, один из таких – Acrylic Wi-Fi Professional. Этот инструмент включает в себя следующие возможности:

  • Wi-Fi analyzer: используется для сбора информации о сетях Wi-Fi, включая скрытые сети, а также для просмотра подключенных устройств и т. д.
  • Monitor mode: используется для захвата пакетов от подключенных устройств, определения положения устройства с помощью GPS и т. д.
  • Troubleshooting: используется для сбора данных работоспособности, показателей производительности, оценок качества и т. д.
  • Export data: используется для экспорта данных, например отчетов.

 

 

 

 

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

 

Методы атак на Wi-fi

Перед тем как рассмотреть атаки, отметим наиболее распространенные методы защиты от ниже приденных методов взлома. Основным средством защиты рекомендуется использовать ( в соответсвии со стандартом Payment Card Industry Security Standards Council (PCI DSS) системы предотвращения вторжений в беспроводные сети (WIPS). Кроме того, вы можете использовать фильтрацию по MAC-адрессам, использовать маскировку сети, реализацию WPA, Temporal Key Integrity Protocol (TKIP), Extensible Authentication Protocol (EAP), VPN и сквозное шифрование.

В следующей таблице показаны некоторые из наиболее популярных методов атак на сети Wi-Fi, вместе с инструментами, которые можно использовать для их митигации:

 










Атака

Описание

Инструмент проверки

Wardriving

Обнаружение беспроводных локальных сетей путем сканирования диапазона. Найденные сети используются для дальнейшего развития атаки

iStumbler, KisMAC, CoWPAtty, InSSIDer, WiGLE, NetStumbler, WiFi-Where и WiFiphisher

Rogue Access Points (APs)

Создание несанкционированной точки доступа в сети для получения доступа. Это создаст точку входу в доверенную сеть

Аппаратное и программное обеспечение точки доступа

MAC spoofing

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


Eavesdropping

Используется для захвата и расшифровки незащищенного приложение с целью сбора конфиденциальной информации.

Kismet и Wireshark

WEP key cracking

Активные и пассивные методы для восстановления ключа WEP путем сбора / анализа данных.

aircrack-ng, AirSnort, и др.

Beacon flood

Отправляет фреймы маяков (beacon) 802.11 для создания видимости присутствия множества точек доступа

FakeAP

TKIP MIC exploit

Создание ложных TKIP

tkiptun-ng

AP theft

Физическое удаление точки доступа из общественной зоны


 

Лучшие практики (Best practices)

Хоть технология Wi-Fi и обеспечивает простоту подключения,нельзя забывать и о проблемах с безопасностью, а именно возможностью взлома и подслушивания, если не проведены соответсвующие настройки. Открытые (общедоступные) сети Wi-Fi в общественных местах являются наиболее уязвимыми. Поэтому всегда рекомендуется использовать такие сети Wi-Fi с максимальной осторожностью. Сети Wi-Fi могут быть как корпоративными, как личными (домашними) так и общедоступными и, в свою очередь, могут быть защищенными или незащищенными.

Рекомедации по запрету при работе сети Wi-Fi:

  • Не подключайтесь к незащищенным общедоступным сетям Wi-Fi.
  • Не обрабатывайте конфиденциальную информацию и не проводите платежи с использованием банковских карт, включая личную информацию, в общедоступной сети.
  • Отключите автоматическое подключение (Wi-Fi / Bluetooth) для любой доступной сети на вашем ноутбуке, телефоне или планшете.
  • Не используйте Wired Equivalent Privacy (WEP), поскольку это старый алгоритм для обеспечения безопасности сетей Wi-Fi, который легко поддается расшифровке.
  • Не используйте опцию Pre-Shared Key (PSK), поскольку она небезопасна на уровне enterprise.
  • Не доверяйте скрытым SSID и ограничивайте SSID в корпоративной среде, к которой пользователи могут подключаться.

Рекомедации по по использованию сети Wi-Fi:

  • Измените пароль по умолчанию.
  • Измените SSID и сделайте его скрытым.
  • Ограничьте диапазон сигналов Wi-Fi (рекомендуется для домашних пользователей).
  • Используйте надежные методы шифрования.
  • Разверните межсетевой экран / WIDS / WIPS / NAC (рекомендуется для корпоративных сетей).
  • Обеспечьте безопасность настроек клиента 802.1X (например, с помощью сертификатов).
  • Используйте 802.1X (например, 802.11i), который использует расширяемый протокол аутентификации (EAP)
  • Используйте аутентификацию пользователей вместо PSK. Для этого вам потребуется сервер RADIUS / AAA.
  • Следитте за выпуском обновлений, чтобы применять самые «свежие» патчи и поддерживать максимально высокий уровень безопасности вашего аппаратного и программного обеспечения.

Некоторые из продуктов, используемых для обеспечения безопасности Wi-Fi, – это Cisco Wireless Security Suite, WatchGuard Wi-Fi Security, Sonicwall Distributed Wi-Fi Solution, и CheckPoint UTM-1 Edge W.



2021-04-07T17:37:48
Аудит ИБ

Как использовать функцию enumerate в Python для создания циклов со счетчиками

В этой статье будет объяснено использование функции «enumerate», доступной в стандартной библиотеке модулей Python. Функция Enumerate позволяет вам присваивать «index» или «count» элементам в любом итерируемом объекте. Затем вы можете реализовать для них дополнительную логику, поскольку у вас будет доступ как к значениям, так и к сопоставленному с ними счетчику. Читать

MikroTik настройка Dual WAN

В этом руководстве мы затронем тему маркировки пакетов (mangle) и настройку резервирования интернет соединения Dual WAN на MikroTik как одну из важных тем. В маршрутизаторах Mikrotik данный функционал реализован через Mangle — используется для того чтобы пометить пакеты/соединения для дальнейшей их обработки очередями (простыми или деревьями), NAT правилами, таблицами маршрутизации или изменению таких параметров как: Читать

Единое дерево каталогов (стандарт FHS)

На этом уроке разберём «Единое дерево каталогов» и стандарт File Hierarchy Standard в Linux. Это действительно очень важная тема!





Читать далее…

Работа с сервером используя ssh

Работать с сервером используя физический доступ не удобно, а иногда не возможно. Намного удобнее подключаться к консоли сервера по ssh.





Читать далее…