Архив рубрики: Linux

Ваш путеводитель по одной из самых популярных и влиятельных операционных систем в мире. От базовых команд и установки дистрибутивов до глубокого изучения ядра и сетевых технологий — здесь вы найдете статьи и руководства на самые разные темы, связанные с Linux. Независимо от вашего уровня подготовки, здесь найдется что-то интересное и полезное.

Как пользоваться OpenVPN

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

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

Как работает OpenVPN?

Вы уже знаете что программа организовывает виртуальную сеть между компьютерами и все данные в этой сети шифруются и недоступны для пользователей вне нее. Для достижения этой цели программа создает в системе виртуальное устройство tun0. Это такой же интерфейс, как и eth0 или wlan0, он имеет свой ip адрес. Весь трафик, который передается на этот интерфейс шифруется и передается в виртуальную сеть.

Поэтому для передачи трафика через OpenVPN будет достаточно добавить в таблицу маршрутизации несколько правил, которые будут заставлять трафик идти через интерфейс tun0.

Как пользоваться OpenVPN в Linux

Сначала рассмотрим как подключиться к OpenVPN из Ubuntu или любого другого Linux дистрибутива через терминал. Допустим, вы скачали файл конфигурации сервера .ovpn и хотите подключиться к этой сети. Для этого нужно установить клиент openvpn:

sudo apt install openvpn

А далее для подключения к сети достаточно выполнить команду openvpn и передать ей в параметры нужный вам файл:

sudo openvpn ~/Загрузки/config.ovpn

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

sudo ip route

Здесь стоит обратить внимание на две строки:

0.0.0.0/1 via 192.168.243.1 dev tun0
169.254.0.0/16 dev enp2s0 scope link metric 1000

Первая направляет весь трафик системы на интерфейс tun0, а вторая более интересная, она разворачивает трафик ip сети 169.254.0.0 на реальный интерфейс. Если ее не будет, то весь трафик будет идти на tun0, в том числе и трафик от программы OpenVPN, который уже прошел этот интерфейс и получиться петля. Чтобы разорвать подключение в таком варианте достаточно нажать Ctrl+C в терминале, где вы запустили openvpn.

Второй способ использовать OpenVPN в Linux - это установить плагин openvpn для NetworkManager и подключатся с помощью него. Для установки этого пакета в Ubuntu выполните такую команду:

sudo apt-get install network-manager-openvpn

Теперь откройте апплет Network Manager, разверните "Соединение VPN" и выберите "Настроить соединение":

В открывшемся окне нажмите кнопку "+":

Затем выберите надпись "VPN".

Далее, вы можете взять "OpenVPN", но нас будет интересовать пункт "Импорт из файла".

Далее, просто выберите файл *.ovpn, который вы скачали на сервере. Осталось нажать кнопку "Добавить". Дальше вы можете активировать нужную сеть с помощью переключателя в окне настроек или аплета:

Снова смотрим таблицу маршрутизации:

sudo ip route

В целом, NetworkManager создает другие правила, но они работают так же. Настройка клиента openvpn на ubuntu завершена.

Использование OpenVPN в Android

Вы можете пользоваться OpenVPN на любой платформе, в том числе и на Android. Для устройств было выпущено официальное приложение OpenVPN Connect. С помощью него вы можете подключиться к сети, как и в предыдущем варианте, с помощью ovpn файла. Вы можете установить это приложение из Google Play:

Откройте приложение, нажмите на кнопку меню, затем выберите "Import" -> "Import profile from SDCard":

Выберите нужный файл и нажмите "Select":

Затем осталось нажать "Connect" для подключения к сети:

Настройка клиента openvpn включает только импорт конфигурационного файла, больше ничего не нужно. Дальше ваш трафик будет направлен через VPN, здесь тоже вы можете посмотреть таблицу маршрутизации, если установлен эмулятор терминала:

Правда, здесь мы не увидим такой ситуации, как в Linux, маршрутизация на VPN в Android осуществляется немного по-другому.

Как пользоваться OpenVPN в Windows

Нельзя было не рассказать в этой статье как пользоваться OpenVPN GUI в Windows, тем более что это ненамного сложнее чем в Android. Нам нужно установить клиент OpenVPN. Вы можете скачать его на официальном сайте:

После загрузки запустите программу от имени администратора и пройдите все шаги мастера:

Далее, запустите программу, найдите ее значок в трее, кликните по нему и выберите "Import":

Далее, просто выберите файл конфигурации *.ovpn для нужного VPN сервера:

Затем еще раз кликните по значку OpenVPN на панели, начнется инициализация и вы будете подключены к сети VPN, значок программы изменится на зеленый:

Теперь ваш трафик в операционной системе Windows тоже направлен через VPN. Как видите, использование OpenVPN очень просто во всех операционных системах.

Выводы

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

https://youtu.be/hWxPYuXiGP8

Редирект с http на https Nginx

Как и большая часть сайтов интернета, которые следуют современным тенденциям kovalets.net использует безопасный протокол связи https. Многим сайтам при переходе на https необходимо, чтобы весь трафик, который приходит на порт http автоматически перенаправлялся на https.

Это необходимо из соображений SEO оптимизации, а также безопасности пользователей, чтобы никто не мог разорвать защищенное соединение. В этой статье мы рассмотрим как настроить редирект с http на https Nginx.

Читать далее Редирект с http на https Nginx

Репозитории Debian

Ничто так не отличает дистрибутив Debian от других дистрибутивов, как его система пакетов и репозиториев. Изначально репозитории были разделены на три ветки: testing, stable и unstable. Но на протяжении многих лет были добавлены дополнительные ответвления. На данный момент требуется намного больше знаний, чтобы использовать систему эффективно и безопасно.

В этой небольшой статье мы рассмотрим какие бывают репозитории Debian 9, зачем они нужны, а также как их правильно использовать. Рассмотрим также несколько сторонних репозиториев, которые вы можете добавить к своей системе.


Читать далее Репозитории Debian

Настройка Debian 9 после установки

Как и любая другая операционная система, Debian нуждается в дополнительной настройке после установки, чтобы приспособить систему для пользователя, сделать её более удобной. Из-за лицензий многие программы, например кодеки, не поставляются по умолчанию, также устанавливаемые программы ограничены размером установочного образа.

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

Настройка Debian 9 после установки

Начнеём, как обычно, с обновления системы, поскольку первое, что нужно сделать - это привести систему к самому актуальному состоянию.

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

Debian 9, также как и Ubuntu, использует пакетный менеджер apt, поэтому для обновления достаточно набрать несколько команд. Но выполнять их нужно от имени суперпользователя.

su -
$ apt update
$ apt full-upgrade

Шаг 2. Установка sudo

Работая в других дистрибутивах, мы привыкли использовать sudo для запуска программ от имени суперпользователя. Но в Debian она не установлена по умолчанию. Поэтому, перед тем как что-то настраивать, давайте ее инсталлируем:

apt install sudo

Затем добавьте вашего пользователя в группу wheel:

usermod -a -G sudo sergiy

Теперь утилита должна работать.

Шаг 3. Настройка репозиториев

По умолчанию Debian поставляется только с репозиториями, в которых содержится свободное ПО. Если вы хотите получать несвободные программы, нужно подключить специальные репозитории. Запустите программу "Software & Updates" из главного меню:

 

Здесь отметьте галочками такие пункты, как main, contrib и non-free. Также вы можете добавить и другие сторонние репозитории, например, репозиторий Backports, в котором содержатся тестовые версии пакетов. Для добавления репозитория перейдите на вкладку "Другие источники", нажмите кнопку "Add" и вставьте туда такую строку:

deb http://httpredir.debian.org/debian stretch-backports main contrib non-free

Далее, нажмите "Ok", и система автоматически обновит списки пакетов. Таким образом, вы можете добавить любой репозиторий к системе.

Также чуть ниже выберите ближайший к вам сервер пакетов Debian.

Шаг 4. Установка кодеков

Если вы собрались слушать музыку или смотреть фильмы с DVD в своей системе, то вам обязательно будут нужны кодеки, которые не поставляются по умолчанию из-за своей закрытой лицензии. Для их установки выполните:

apt install libavcodec-extra57 ffmpeg

Также вы можете установить дополнительные кодеки для DVD из стороннего репозитория deb-multimedia.org. Для его добавления выполните:

echo "# Debian Multimedia
deb ftp://ftp.deb-multimedia.org/ ${DEBIAN_VERSION} main non-free" > '/etc/apt/sources.list.d/deb-multimedia.list'

apt update
# apt -y --force-yes install deb-multimedia-keyring

Теперь можно установить необходимые кодеки:

sudo apt install libfaad2 libmp4v2-1 libfaac0 alsamixergui twolame blades libmp3lame0 libdvdnav4 libdvdread4 libdvdcss2 w64codecs

Шаг 5. Установка Flash Player

Технология Flash уходит в прошлое, но всё же она достаточно часто используется на различных сайтах. Поэтому желательно иметь эту программу в своей системе:

 sudo apt install flashplugin-nonfree

Если вы используете браузер Chromium, то нам понадобиться ещё один пакет:

sudo apt install pepperflashplugin-nonfree

Шаг 6. Установка Java

Многие программы используют для своей работы Java-машину. Для установки версии Java Runtime Environment из официальных репозиториев выполните:

sudo apt install default-jre

Для сборки Java-программ версии JRE недостаточно, вам понадобиться Java Development Kit. Чтобы ее установить используйте:

sudo apt install default-jdk

Шаг 7. Настройка шрифтов

В программах Wine, различных текстовых редакторах и офисных пакетах вам могут понадобиться шрифты, которые используются в Windows. Для их установки выполните:

sudo apt install ttf-freefont ttf-mscorefonts-installer

Также можно установить шрифты из набора noto:

sudo apt install fonts-noto

Чтобы улучшить внешний вид Qt и GTK+ приложений в системе, можно использовать утилиту Qt4config:

sudo apt install qt4-qtconfig

Шаг 8. Установка программ

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

  • evifile-roller - менеджер архивов;
  • evince - читалка PDF;
  • doidon - менеджер буфера обмена;
  • qalculate - калькулятор;
  • clementine - аудио плеер;
  • vlc - видео плеер;
  • gimp - редактор изображений;
  • shotwell - программа для управления фотографиями;
  • gparted - менеджер разделов;
  • gnome-disk-utility - утилита управления дисками;
  • libreoffice-writer - редактор документов;
  • libreoffice-calc - редактор таблиц;
  • libreoffice-impress - редактор презентаций;
  • bleachbit - утилита для очистки системы.

Для установки наберите:

sudo apt install file-roller evince doidon qalculate clementine vlc gimp shotwell gparted gnome-disk-utility libreoffice-writer libreoffice-calc libreoffice-impress

Шаг 9. Настройка брандмауэра

Безопасность - это один из самых важных моментов в использовании операционной системы. Поэтому важно правильно настроить фаервол, чтобы злоумышленники не смогли ничего сделать, даже если в системе будут какие-либо уязвимости. В Debian можно использовать Gufw для настройки:

sudo apt install gufw

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

Шаг 10. Графические драйверы

Если вы играете в игры, где необходимо аппаратное ускорение, то вам не обойтись без проприетарного драйвера. Для видеокарт Nvidia драйвер можно установить такой командой:

sudo apt install nvidia-driver

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

sudo apt install fglrx-driver

Выводы

В этой статье была рассмотрена настройка Debian 9 после установки. Большинство действий стандартны и уже привычны для опытных пользователей. Но для новичков, это всё ещё может быть сложно. Надеюсь, эта информация была полезной для вас.

Установка Debian 9 Stretch

После двухлетней разработки состоялся долгожданный стабильный релиз дистрибутива Debian 9. Это дистрибутив, который содержит самые стабильные версии пакетов, очень хорошо протестирован и поэтому часто используется на серверах, где требуется повышенная стабильность.

Новая версия принесла не так много изменений, из основных можно выделить переход на MariaDB, улучшена поддержка UEFI, обновлено множество пакетов и многое другое. Подробнее о том что нового в Debian 9 смотрите в отдельной статье, а сегодня мы рассмотрим как выполняется установка Debian 9 Stretch на компьютер или ноутбук.

Читать далее Установка Debian 9 Stretch

Загрузочная флешка Windows в Linux

Бывают случаи, когда вам нужно записать Windows на флешку в Linux, например, когда вы хотите поставить эту систему второй для использования специализированных программ, или вам нужно переустановить операционку своим знакомым. Или же есть пользователи Linux, которые решили вернуться на Windows, но единственную флешку уже перезаписали под Linux LiveUSB.

Загрузочная флешка Windows в Linux создается достаточно просто. Я предлагаю несколько способов решения этой проблемы. Все их я перечислил ниже.

Читать далее Загрузочная флешка Windows в Linux

Обновление Debian 8 до 9

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

Информацию об опасных изменениях смотрите на официальном сайте, а в этой статье мы рассмотрим обновление Debian 8 до 9. Я буду предполагать, что вы работаете от имени суперпользователя, поскольку для выполнения большинства команд нужны права root.

Обновление Debian до 9

Шаг 1. Резервная копия

Если вы обновляете производственный сервер - лучше сделать резервную копию всех важных данных, чтобы ничего не потерять в случае ошибки. Можно использовать, например, rsnapshot.

Также сделайте резервную копию баз данных, если вы их используете. Дело в том, что в Debian 9 база данных MySQL будет заменена на MariaDB, формат которой не является бинарно совместимым с MySQL. Во время обновления базы будут обновлены автоматически, но если возникнут какие-либо проблемы, то вы не сможете восстановить ваши данные без резервной копии. Далее, проверим текущую версию системы:

uname -mrs

Также можно посмотреть вывод команды:

lsb_release -a

Шаг 2. Обновление текущей системы

Чтобы обновить Debian до 9 без ошибок нужно сначала установить все обновления для текущего выпуска. Для этого выполните такие команды:

apt-get update
# apt-get upgrade
# apt-get dist-upgrade

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

aptitude search '~o'

Удалите их все. Далее, используйте такую команду чтобы проверить правильность установки всех пакетов:

dpkg -C

Перед тем как перейти дальше, исправьте все проблемы. Затем перезагрузите компьютер:

reboot

Шаг 3. Настройка sources.list

Мы будем обновлять систему вручную. Это значит, что просто заменим старые репозитории на новые и выполним обновление. По умолчанию файл репозиториев /etc/apt/sources.list в Debian 8 выглядит вот так:

vi /etc/apt/sources.list

Нам предстоит заменить все вхождения слова Jessie на stretch, должно получиться вот так:

vi /etc/apt/sources.list

deb http://httpredir.debian.org/debian stretch main contrib
deb http://security.debian.org/ stretch/updates main

Можно не редактировать файлы вручную, а использовать утилиту sed:

sed -i 's/jessie/stretch/g' /etc/apt/sources.list

Далее, запустите обновление списка пакетов из репозиториев:

apt update

Шаг 4. Обновление Debian

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

apt -o APT::Get::Trivial-Only=true dist-upgrade

Дальше убедитесь, что на корневом разделе места достаточно для распаковки всех файлов:

df -H

И только теперь можно запустить обновление. Выполните эти две команды:

apt upgrade
# apt dist-upgrade

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

reboot

Задача debian 8 обновить до debian 9 полностью выполнена.

Шаг 5. Проверка

Обновление до Debian 9 завершено, и теперь вы можете посмотреть, действительно ли система была обновлена. Проверьте версию ядра:

uname -mrs

И посмотрите версию дистрибутива:

lsb_release -a

Можно еще раз проверить нет ли в системе устаревших пакетов, которые могут вызвать проблемы:

aptitude search '~o'

Выводы

В этой статье мы рассмотрели как обновить debian 8 до debian 9. Как видите, это было не так сложно, правда, обновление может занять достаточно много времени, учитывая что системе нужно скачать больше количество пакетов из интернета. Надеюсь, эта информация была полезной для вас. Если у вас остались вопросы, спрашивайте в комментариях!

На завершение видео с обзором Debian 9:

Что значит 502 bad gateway Nginx

Начинающие веб-мастера и системные администраторы временами сталкиваются с ошибкой 502 bad gateway nginx. Nginx - это не просто один из лучших веб-серверов, в то же время, он проектировался как отличный прокси. Логически можно предположить, что эта ошибка возникает, когда что-то не так со шлюзом.

И необязательно чтобы вы использовали Nginx в качестве прокси для доступа к сети. Нет, для работы большинства сайтов требуется генерация динамического контента, например, на php. Поэтому Nginx часто выступает в прокси для Apache или php-fpm. В этой статье мы рассмотрим что означает 502 bad gateway Nginx, как исправить ее.

Что означает 502 bad gateway Nginx

Как и следует из названия, эта ошибка значит, что Nginx попытался связаться со шлюзом и у него ничего не вышло. Например, запросы от пользователей принимает Nginx, поскольку он работает быстро и потребляет мало ресурсов, а за генерацию контента отвечает php-fpm. Если сервис php-fpm во время обработки запроса получил какую-либо ошибку и не вернул результата, или же он вообще отключен и Nginx не может получить к нему доступ мы получим такую ошибку.

Вот основные причины:

  • Nginx используется в качестве прокси для Apache или php-fpm, но эти сервисы не запущены;
  • Nginx используется качестве прокси для php-fpm, но параметры доступа к сокету неверно настроены;
  • Неверно настроены значения размера буфера и таймаута для php-fpm в nginx.conf;
  • Ошибки в конфигурации Nginx.

Как исправить ошибку 502 bad gateway Nginx

1. Анализ логов и перезапуск

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

tail -f /var/log/nginx/error.log

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

nginx -t

 

Допустим, у нас в качестве шлюза для генерации динамического содержимого используется php-fpm. Тогда нужно проверить запущен ли вообще этот сервис:

ps aux | grep php

Если все процессы уже запущены, попробуйте перезапустить их с помощью systemd:

sudo systemctl restart php-fpm

Если процесс остановлен, то его нужно запустить:

sudo systemctl start php-fpm

Это самая распространенная причина, вызывающая ошибку 502 Bad Gateway и обычно после перезапуска сервиса все будет работать, вам осталось выяснить только почему он завершился. В этом вам может помочь просмотр лога php-fpm:

sudo tail -f /var/log/php7.0-fpm.log

Но если такой рецепт не помог, и ошибка 502 bad gateway nginx нужно идти дальше. Внимательно пересмотрите лог, возможно, там уже есть ответ.

2. Доступность php-fpm и владелец

Также эта ошибка может возникать при проблемах доступа к файлу сокета php-fpm, например, когда этот файл называется по другому или для него выставлены неверные права. Сначала убедитесь, что в конфигурационном файле /etc/nginx/nginx.conf указан правильный адрес файла сокета php-fpm:

location ~ \.php$ {
fastcgi_pass unix:/var/run/php7.0-fpm.sock;
include fastcgi_params;
}

Файл /var/run/php7.0-fpm.sock должен действительно существовать в файловой системе. Дальше нужно убедиться, что у сокета правильный владелец, это должен быть тот же пользователь, от имени которого запускается Nginx, группа тоже должна соответствовать. Откройте файл /etc/php7.0/fpm/pool.d/www.conf и найдите строчки user и group. Они должны иметь такое же значение, как строчка user в конфиге nginx.conf:

listen = /var/run/php7.0-fpm.sock
listen.owner = www-data
listen.group = www-data

После того как выставите правильные параметры, перезапустите сервисы:

sudo service php5-fpm restart
$ sudo service nginx restart

3. Время отклика и размер буфера

Возможно, размер буфера и время ожидания ответа от fastcgi настроены неверно и программа просто не успевает обработать большой запрос. Попробуйте увеличить такие параметры в /etc/nginx/nginx.conf. Если таких строк не существует, добавьте их в блок http, как здесь:

sudo vi /etc/nginx/nginx.conf

http {
...
fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
...
}

Выводы

В этой статье мы рассмотрели 502 bad gateway nginx что это значит и как исправить эту ошибку. Как видите, может быть достаточно много причин ее возникновения, но решить все достаточно просто если внимательно посмотреть логи и понять в чем там действительно проблема. Надеюсь, информация была полезной для вас.

Установка Zabbix на Ubuntu 20.04

Zabbix - это проект с открытым исходным кодом для мониторинга сетей и приложений. В набор приложений Zabbix входит агент для удаленного мониторинга серверов, также возможен мониторинг через SNMP, ICMP или TCP, а также других протоколов. Можно настроить мониторинг с помощью агента и получать максимум информации, или просто проверять доступность с помощью одного из возможных протоколов.

Кстати говоря, Zabbix разработан программистом из России. В этой небольшой статье мы рассмотрим как выполняется установка Zabbix на Ubuntu 20.04. Поговорим о настройке клиента и сервера для работы программы и мониторинга всего необходимого.


Читать далее Установка Zabbix на Ubuntu 20.04

Как пользоваться Android Studio

Есть несколько способов разработки приложений для Android, но на сегодняшний день официальный и самый популярный способ - это Android Studio. Это официальная среда разработки, созданная в Google и с помощью нее были разработаны большинство приложений, которыми вы пользуетесь каждый день.

Впервые об Android Studio было объявлено на конференции Google I/O в 2013, а первая версия вышла в 2014 году. До этого большинство приложений разрабатывались в Eclipse, которая представляет из себя более универсальную среду для Java. Android Studio делает разработку приложений намного проще, но она по-прежнему остается сложной. Начинающим пользователям нужно изучить много материалов чтобы уверено ее использовать.

В этой статье мы расскажем как пользоваться Android Studio, поговорим про ее базовые возможности и всем, что нужно чтобы начать работу. И все это максимально просто, чтобы вы смогли сделать свой первый шаг в разработке для Android.

Читать далее Как пользоваться Android Studio