One place for hosting & domains

      руководство

      Настройка аутентификации по паролю для Apache в Ubuntu 18.04 [Краткое руководство]


      Введение

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

      Более подробную версию настоящего обучающего руководства с более подробным описанием каждого действия см. в статье Настройка аутентификации по паролю для Apache в Ubuntu 18.04.

      Предварительные требования

      Для выполнения этого обучающего руководства вам потребуется доступ к следующим компонентам на сервере Ubuntu 18.04:

      • Пользователь sudo на сервере

      • Веб-сервер Apache2

      • Защищенный с помощью SSL сайт

      Шаг 1 — Установка пакета утилит Apache

      Мы установим утилиту с названием htpasswd, которая является частью пакета apache2-utils, для управления именами пользователя и паролями для доступа к ограниченному контенту.

      • sudo apt-get update
      • sudo apt-get install apache2-utils

      Шаг 2 — Создание файла с паролями

      Мы создадим первого пользователя следующим образом (замените `first_username на имя пользователя по вашему выбору):

      • sudo htpasswd -c /etc/apache2/.htpasswd first_username

      Вам нужно будет предоставить и подтвердить пароль для пользователя.

      Оставьте аргумент -c для любых дополнительных пользователей, которых вы захотите добавить, чтобы избежать необходимости перезаписывать файл:

      • sudo htpasswd /etc/apache2/.htpasswd another_user

      Шаг 3 — Настройка аутентификации по паролю для Apache

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

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

      • sudo nano /etc/apache2/sites-enabled/default-ssl.conf

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

      На этом шаге добавьте в файл следующие выделенные строки:

      /etc/apache2/sites-enabled/default-ssl.conf

      <VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
      
        <Directory "/var/www/html">
            AuthType Basic
            AuthName "Restricted Content"
            AuthUserFile /etc/apache2/.htpasswd
            Require valid-user
        </Directory>
      </VirtualHost>
      

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

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

      • sudo systemctl restart apache2
      • sudo systemctl status apache2

      Шаг 4 — Подтверждение аутентификации по паролю

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

      Запрос пароля Apache2

      Другие обучающие руководства

      Ниже представлены ссылки на более подробные материалы, связанные с настоящим обучающим руководством:



      Source link

      Настройка код-серверной облачной IDE-платформы в Ubuntu 18.04 [Краткое руководство]


      Введение

      Код-серверная IDE — это код Microsoft Visual Studio Code, запущенный на удаленном сервере и доступный напрямую из браузера. Это означает, что вы можете использовать различные устройства, работающие под управлением различных операционных систем, и всегда иметь под рукой постоянную среду разработки.

      В этом обучающем руководстве вы настроите код-серверную облачную IDE-платформу на компьютере с Ubuntu 18.04 и сделаете ее доступной на вашем домене, защищенном с помощью Let’s Encrypt. Более подробную версию этого обучающего руководства см. в статье Настройка код-серверной облачной IDE-платформы в Ubuntu 18.04.

      Предварительные требования

      • Сервер с Ubuntu 18.04 и не менее чем 2 ГБ оперативной памяти, root-доступ и учетная запись sudo без прав root. Вы можете выполнить настройку, следуя указаниям документа Начальная настройка сервера для Ubuntu 18.04.

      • Nginx, установленный на сервере. Выполните шаги 1–4 руководства по установке Nginx в Ubuntu 18.04.

      • Полное зарегистрированное доменное имя для размещения код-сервера, указывающее на ваш сервер. В этом обучающем руководстве мы будем использовать имя code-server.your-domain. Вы можете купить доменное имя на Namecheap, получить его бесплатно на Freenom или воспользоваться услугами любого предпочитаемого регистратора доменных имен.

      • На вашем сервере должны быть настроены обе нижеследующие записи DNS. В руководстве Введение в DigitalOcean DNS содержится подробная информация по их добавлению.

        • Запись A, где your-domain указывает на публичный IP-адрес вашего сервера.
        • Запись A, где your-domain указывает на публичный IP-адрес вашего сервера.

      Шаг 1 — Установка код-серверной IDE

      Создайте каталог для хранения всех данных код-серверной IDE:

      Перейдите в каталог:

      Посетите страницу релизов Github код-серверной IDE и выберите последнюю сборку Linux. Загрузите ее с помощью следующей команды:

      • wget https://github.com/cdr/code-server/releases/download/2.1692-vsc1.39.2/code-server2.1692-vsc1.39.2-linux-x86_64.tar.gz

      Распакуйте архив:

      • tar -xzvf code-server2.1692-vsc1.39.2-linux-x86_64.tar.gz

      Перейдите в каталог, содержащий исполняемый файл код-серверной IDE:

      • cd code-server2.1692-vsc1.39.2-linux-x86_64

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

      • sudo cp code-server /usr/local/bin

      Создайте папку для код-серверной IDE для хранения пользовательских данных:

      • sudo mkdir /var/lib/code-server

      Создайте службу systemd, code-server.service, в каталоге /lib/systemd/system:

      • sudo nano /lib/systemd/system/code-server.service

      Добавьте следующие строки:

      /lib/systemd/system/code-server.service

      [Unit]
      Description=code-server
      After=nginx.service
      
      [Service]
      Type=simple
      Environment=PASSWORD=your_password
      ExecStart=/usr/local/bin/code-server --host 127.0.0.1 --user-data-dir /var/lib/code-server --auth password
      Restart=always
      
      [Install]
      WantedBy=multi-user.target
      
      • --host 127.0.0.1 привязывает ее к localhost.
      • --user-data-dir /var/lib/code-server задает каталог пользовательских данных.
      • --auth password указывает, что для аутентификации посетителей используется пароль.

      Обязательно замените your_password на желаемый пароль.

      Сохраните и закройте файл.

      Запустите службу код-серверной IDE:

      • sudo systemctl start code-server

      Убедитесь, что она запущена корректно:

      • sudo systemctl status code-server

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

      Output

      ● code-server.service - code-server Loaded: loaded (/lib/systemd/system/code-server.service; disabled; vendor preset: enabled) Active: active (running) since Mon 2019-12-09 20:07:28 UTC; 4s ago Main PID: 5216 (code-server) Tasks: 23 (limit: 2362) CGroup: /system.slice/code-server.service ├─5216 /usr/local/bin/code-server --host 127.0.0.1 --user-data-dir /var/lib/code-server --auth password └─5240 /usr/local/bin/code-server --host 127.0.0.1 --user-data-dir /var/lib/code-server --auth password ...

      Активируйте код-серверную службу для автоматического запуска после перезагрузки сервера:

      • sudo systemctl enable code-server

      Шаг 2 — Публикация код-серверной IDE

      Теперь мы настроим Nginx в качестве обратного прокси для код-серверной IDE.

      Создайте code-server.conf для хранения конфигурации для публикации код-серверной IDE на вашем домене:

      • sudo nano /etc/nginx/sites-available/code-server.conf

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

      /etc/nginx/sites-available/code-server.conf

      server {
          listen 80;
          listen [::]:80;
      
          server_name code-server.your_domain;
      
          location / {
              proxy_pass http://localhost:8080/;
              proxy_set_header Upgrade $http_upgrade;
              proxy_set_header Connection upgrade;
              proxy_set_header Accept-Encoding gzip;
          }
      }
      

      Замените code-server.your_domain на желаемый домен, а затем сохраните и закройте файл.

      Чтобы сделать данную конфигурацию сайта активной, создайте символьную ссылку:

      • sudo ln -s /etc/nginx/sites-available/code-server.conf /etc/nginx/sites-enabled/code-server.conf

      Проверьте валидность конфигурации:

      Вывод должен выглядеть так:

      Output

      nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

      Чтобы новая конфигурация вступила в силу, перезапустите Nginx:

      • sudo systemctl restart nginx

      Шаг 3 — Защита вашего домена

      Теперь вы должны обеспечить защиту вашего домена с помощью TLS-сертификата Let’s Encrypt.

      Добавьте хранилище пакетов Certbot на ваш сервер:

      • sudo add-apt-repository ppa:certbot/certbot

      Установите Certbot и его плагин Nginx:

      • sudo apt install python-certbot-nginx

      Настройте ufw для принятия шифрованного трафика:

      Результат будет выглядеть следующим образом:

      Output

      Rule added Rule added (v6)

      Перезапустите, чтобы конфигурация вступила в силу:

      Результат будет выглядеть так:

      Output

      Firewall reloaded

      Перейдите на домен код-серверной IDE.

      запрос данных для входа в код-серверную IDE

      Введите пароль код-серверной IDE. Вы увидите интерфейс, опубликованный на вашем домене.

      графический интерфейс код-серверной IDE

      Чтобы обеспечить его защиту, выполните установку TLS-сертификата Let’s Encrypt с помощью Certbot.

      Запросите сертификат для вашего домена:

      • sudo certbot --nginx -d code-server.your_domain

      Предоставьте адрес электронной почты для срочных уведомлений, примите Правила и условия EFF и выберите, нужно ли перенаправить весь HTTP-трафик на HTTPS.

      Результат будет выглядеть примерно следующим образом:

      Output

      IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/code-server.your_domain/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/code-server.your_domain/privkey.pem Your cert will expire on ... To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" ...

      Certbot успешно сгенерировал TLS-сертификаты и применил их для конфигурации Nginx для вашего домена.

      Заключение

      Теперь у вас есть код-серверная IDE, установленная на сервере Ubuntu 18.04 и опубликованная на вашем домене с защитой в форме сертификатов Let’s Encrypt. Дополнительную информацию о других функциях и подробные инструкции по работе с прочими компонентами код-серверной IDE см. в документации для Visual Studio Code.



      Source link

      [Краткое] руководство по установке Anaconda в Ubuntu 18.04


      Введение

      Anaconda — диспетчер пакетов с открытым исходным кодом, диспетчер среды и средство дистрибуции языков программирования Python и R. Решение Anaconda предназначено для рабочих процессов аналитики данных и машинного обучения.

      Настоящее обучающее руководство рассказывает об устаовке Anaconda на сервере Ubuntu 18.04. Более детальный вариант настоящего руководства с подробным разъяснениями каждого шага можно найти в документе «Установка дистрибутива Anaconda Python на Ubuntu 18.04».

      Шаг 1 — Получение последней версии Anaconda

      Откройте в браузере следующую ссылку на страницу дистрибутива Anaconda:

      https://www.anaconda.com/distribution/
      

      Найдите последнюю версию Linux и скопируйте скрипт установщика bash.

      Шаг 2 — Загрузка скрипта Anaconda Bash

      Войдите на сервер Ubuntu 18.04 как пользователь sudo (не root), перейдите в каталог /tmp и используйте curl для загрузки ссылки, скопированной с сайта Anaconda:

      • cd /tmp
      • curl -O https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh

      Шаг 3 — Проверка целостности данных установщика

      Проверьте целостность данных установщика, используя криптографическую проверку хэша через контрольную сумму SHA-256:

      • sha256sum Anaconda3-2019.03-Linux-x86_64.sh

      Output

      45c851b7497cc14d5ca060064394569f724b67d9b5f98a926ed49b834a6bb73a Anaconda3-2019.03-Linux-x86_64.sh

      Шаг 4 — Запустите сценарий Anaconda

      • bash Anaconda3-2019.03-Linux-x86_64.sh

      Откроется экран просмотра лицензионного соглашения, где нужно будет нажимать ENTER, пока вы не дочитаете соглашение до конца.

      Output

      Welcome to Anaconda3 2019.03 In order to continue the installation process, please review the license agreement. Please, press ENTER to continue >>> ... Do you approve the license terms? [yes|no]

      Прочитав соглашение введите yes для завершения установки, если вы согласны с условиями лицензии.

      Шаг 5 — Завершение установки

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

      Output

      Anaconda3 will now be installed into this location: /home/sammy/anaconda3 - Press ENTER to confirm the location - Press CTRL-C to abort the installation - Or specify a different location below [/home/sammy/anaconda3] >>>

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

      Шаг 6 — Выбор параметров

      После завершения установки появится следующий экран:

      Output

      ... installation finished. Do you wish the installer to prepend the Anaconda3 install location to PATH in your /home/sammy/.bashrc ? [yes|no] [no] >>>

      Рекомендуется ввести yes, чтобы использовать команду conda.

      Шаг 7 — Активация установки

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

      Шаг 8 — Тестирование установки

      Используйте команду conda, чтобы протестировать установку и активацию:

      Будут выведены все пакеты. доступные через установку Anaconda.

      Шаг 9 — Настройка сред Anaconda

      Вы можете создавать среды Anaconda с помощью команды conda create. Например, среду Python 3 с именем my_env можно создать с помощью следующей команды:

      • conda create --name my_env python=3

      Активируйте новую среду, как показано далее:

      Префикс командной строки изменится и покажет, что вы находитесь в активной среде Anaconda и готовы начать работу над проектом.

      Другие обучающие руководства

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



      Source link