- Установка Ruby и настройка локальной среды разработки в Windows 10
- Требования
- 1: Установка Bash в Windows
- 2: Установка RVM и Ruby
- 3: Создание простой программы Ruby
- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- Как установить и использовать Ruby в Windows
- Для чего устанавливать Ruby
- Как установить Ruby на Windows
- Как обновить Ruby на Windows
- Как установить и использовать gem в Windows
- Как установить bundler
- Как установить программу Ruby в Windows. Как запустить программу Ruby в Windows
- Восстановление сайтов из Интернет Архива в Windows
- Как установить WhatWeb в Windows
- Установка WPScan в Windows
- Что такое MSYS2. Как пользоваться MSYS2
Установка Ruby и настройка локальной среды разработки в Windows 10
Ruby – это динамический язык программирования, в котором можно написать что угодно: от простых скриптов до игр и веб-приложений. Ruby появился в Японии в 1993 году, но только в 2005 году он стал популярным языком для разработки на стороне сервера. Ruby прост в использовании и с ним легко работать даже новичкам, но он достаточно мощный, чтобы создавать сложные системы. Это отличный выбор для начинающих и опытных разработчиков.
Существует много способов установки Ruby в Windows. Microsoft рекомендует использовать для разработки Ruby Windows Subsystem for Linux (WSL) и Bash. WSL – это функция Windows 10, которая позволяет запускать инструменты командной строки Linux в Windows. Многие библиотеки Ruby предназначены для работы в Linux, и при использовании их в Windows могут возникать проблемы. Компания Microsoft сотрудничает с Linux, чтобы разрешить встроенную поддержку оболочки Bash и инструментов командной строки Linux для решения проблем совместимости Ruby и Windows. Установив Bash и WSL, вы сможете редактировать файлы с помощью инструментов Windows, а для работы Ruby и связанных с ним библиотек использовать Bash.
Данное руководство научит настраивать среду разработки Ruby на локальной машине Windows с помощью командной строки. Для тестирования среды будет создана простая программа Ruby.
Требования
- Машина Windows 10.
- Creators Update.
- Права администратора.
1: Установка Bash в Windows
Для установки Ruby будет использована командная строка. Командная строка представляет собой неграфический способ взаимодействия с компьютером. Вместо нажатия кнопок с помощью мыши вы вводите команды в виде текста и получаете обратную связь опять же в виде текста. Командная строка, также известная как оболочка, позволяет вам автоматизировать многие рутинные задачи и является важным инструментом для разработчиков программного обеспечения.
Windows предлагает два интерфейса командной строки «из коробки»: классическую командную строку и PowerShell. Для работы с Ruby рекомендуется установить строку Bash, популярный командный язык, которые используется в Linux и macOS.
Включите на машине Developer mode. Для этого откройте Settings, выберите Update & Security, в боковой панели найдите For developers. Затем выберите опцию Developer mode и подтвердите изменения.
Откройте Control Panel и выберите Programs → Turn Windows features on or off. В списке компонентов выберите опцию Windows Subsystem For Linux (Beta). Кликните OK и подождите, пока система установит дополнительные компоненты. Это может занять несколько минут.
После этого система предложит перезапустить компьютер. Сделайте это, чтобы обновить общесистемные файлы.
После перезагрузки откройте командную строку и введите:
Будет предложено установить Bash из Windows Store. Это бесплатно, загрузка занимает несколько минут.
This will install Ubuntu on Windows, distributed by Canonical
and licensed under its terms available here:
https://aka.ms/uowterms
Press «y» to continue: y
Downloading from the Windows Store. 100%
Extracting filesystem, this will take a few minutes.
После установки инсталлятор предложит создать пользователя:
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms.wslusers
Enter new UNIX username: 8host
Enter new UNIX password:
Укажите имя пользователя, нажмите Enter, введите пароль.
При вводе пароля символы не отображаются в окне терминала. Эта мера безопасности часто применяется при запросе паролей в командной строке. Вы не будете видеть символов, но система все равно будет фиксировать нажимаемые клавиши. Введите пароль и нажмите Enter, чтобы продолжить.
Оболочка Bash запустится. Командная строка будет выглядеть так:
Важно! Windows Subsystem for Linux имеет собственную файловую систему, которая хранится в скрытом файле в операционной системе. Microsoft не поддерживает доступ приложений Windows к этой файловой системе.
Однако все существующие файлы доступны в оболочке Bash. Например, все содержимое диска C можно найти в каталоге /mnt/c. Корпорация Microsoft рекомендует работать с файлами из этой папки. Таким образом, вы можете использовать инструменты Windows для работы с файлами и по-прежнему обращаться к ним из оболочки Bash. Доступ к файлам из других частей Windows Subsystem for Linux через программы Windows, таких как текстовые редакторы, файловые менеджеры и IDE, может привести к повреждению данных и не поддерживается.
2: Установка RVM и Ruby
RVM автоматизирует процесс установки среды Ruby в системе Ubuntu, на которой основана ваша установка Bash.
Самый быстрый способ установить Ruby с помощью RVM – запустить сценарий установки, размещенный на веб-сайте RVM.
Сначала используйте команду gpg, чтобы связаться с сервером открытых ключей и запросить ключ проекта RVM, который используется для подписи каждой версии RVM. Это позволяет подтвердить подлинность релиза RVM. В домашнем каталоге выполните следующую команду:
gpg —keyserver hkp://keys.gnupg.net —recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Затем установите пакет gnupg2 (сценарий установки RVM будет использовать компоненты этого пакета для проверки релиза). Выполните эту команду:
sudo apt-get install gnupg2
Для установки программы нужно ввести пароль администратора. Однако при вводе пароля символы не отображаются в окне терминала. Эта мера безопасности часто применяется при запросе паролей в командной строке. Вы не будете видеть символов, но система все равно будет фиксировать нажимаемые клавиши. Введите пароль, нажмите Enter и программа будет установлена.
Затем используйте команду curl для загрузки сценария установки RVM с веб-сайта проекта. Обратный слеш в начале команды отключает все псевдонимы команды и запускает обычную команду curl.
\curl -sSL https://get.rvm.io -o rvm.sh
В команде использованы такие флаги:
- Флаг -s (–silent) отключает индикатор выполнения.
- Флаг -S (–show-error) включает поддержку сообщений об ошибках curl.
- Флаг -L (–location) включает обработку редиректов. Если сервер сообщает, что запрошенная страница переместилась на другой адрес, команда автоматически отправит запрос в новое местоположение.
После загрузки можно проверить содержимое сценария перед его запуском:
Используйте клавиши со стрелками для прокрутки файла. Чтобы вернуться в командную строку, нажмите q.
Убедившись, что сценарий не содержит ничего лишнего, выполните эту команду, чтобы установить последнюю стабильную версию RVM:
cat rvm.sh | bash -s stable
Сценарий создает в домашнем каталоге новый каталог под названием .rvm. Здесь будет установлен релиз Ruby и все связанные с ним компоненты, а также исполняемая программа rvm, которую вы используете для установки Ruby. Процесс установки изменит файл.bashrc и добавит папку .rvm/bin в переменную среды PATH. Это позволит запускать команду rvm.
Однако в текущей сессии команда rvm будет недоступна. Чтобы исправить это, введите:
Используйте rvm, чтобы установить последнюю версию Ruby.
rvm install ruby —default
Эта команда загрузит и установит Ruby и все сопутствующие компоненты и сделает эту версию Ruby версией по умолчанию, чтобы избежать конфликтов, если у вас уже установлена версия другая Ruby.
Searching for binary rubies, this might take some time.
Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/16.04/x86_64/ruby-2.4.0.tar.bz2
Если в системе не хватает важных зависимостей, инсталлятор загрузит и установит их. При этом он может запросить пароль пользователя Linux.
Checking requirements for ubuntu.
Installing requirements for ubuntu.
Updating system.
Installing required packages: gawk, libssl-dev, zlib1g-dev, libyaml-dev, libsqlite3-dev, sqlite3, autoconf, libgmp-dev, libgdbm-dev, libncurses5-dev, automake, libtool, bison, libffi-dev, libgmp-dev, libreadline6-dev.
Requirements installation successful.
Установив зависимости, RVM загрузит и установит Ruby.
ruby-2.4.0 — #configure
ruby-2.4.0 — #download
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 16.4M 100 16.4M 0 0 4828k 0 0:00:03 0:00:03 —:—:— 4829k
ruby-2.4.0 — #validate archive
ruby-2.4.0 — #extract
ruby-2.4.0 — #validate binary
ruby-2.4.0 — #setup
ruby-2.4.0 — #gemset created /home/brian/.rvm/gems/ruby-2.4.0@global
ruby-2.4.0 — #importing gemset /home/brian/.rvm/gemsets/global.gems.
ruby-2.4.0 — #generating global wrappers.
ruby-2.4.0 — #gemset created /home/brian/.rvm/gems/ruby-2.4.0
ruby-2.4.0 — #importing gemsetfile /home/brian/.rvm/gemsets/default.gems evaluated to empty gem list
ruby-2.4.0 — #generating default wrappers.
После выполнения сценария будет установлена последняя версия Ruby.
В дополнение к Ruby RVM устанавливает несколько сопутствующих инструментов: irb (интерактивная консоль Ruby), rake (программа для запуска сценариев автоматизации) и gem (упрощает установку и обновление библиотек Ruby, которые можно использовать в проектах).
Запросите версию Ruby:
ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
Важно! Чтобы менеджер RVM мог использовать эту версию Ruby при запуске сессий Bash, нужно запустить Bash как login shell. RVM нужен доступ к файлу .bash_profile, который вызывается только в login shell. Bash for Windows не запускает login shell по умолчанию, потому для работы с Ruby нужно открыть командную строку и запустить Bash с помощью команды:
Также вместо этого можно запускать следующую команду при каждом запуске Bash:
3: Создание простой программы Ruby
Чтобы убедиться, что среда работает, напишите простую программу «Hello, World».
Создайте файл hello.rb:
Введите в него следующий код:
puts «Hello, World!»
Нажмите Y, чтобы сохранить файл.
Программа выведет на экран следующую фразу:
Эта простая программа подтверждает, что среда разработки настроена правильно.
Теперь локальная машина готова к разработке программного обеспечения.
Вы можете использовать эту среду для изучения Ruby и создания более сложных и интересных проектов.
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Как установить и использовать Ruby в Windows
Для чего устанавливать Ruby
Ruby — это скриптовый язык, то есть для запуска программ не требуется предварительная компиляция. В этом смысле Ruby является аналогом PHP, Python, PERL и других.
Ruby достаточно популярный язык и на нём написано много интересных программ; если говорить применительно к InfoSec, то в качестве примеров можно привести знаменитые WPScan, WhatWeb, Wayback Machine Downloader и другие.
Установив Ruby на Windows вы сможете запускать программы, написанные на этом языке, а также изучать это язык программирования и писать свои собственные скрипты.
Кстати, Ruby, наравне как и PHP, Python и PERL, может быть модулем веб-сервера и скрипты, написанные на этом языке, можно использовать в качестве программной основы веб-сайта или сервиса.
Как установить Ruby на Windows
Там вы увидите много вариантов установщика, которые различаются не только версиями, но и составом скаченных файлов. Исполнимые файлы являются самодостаточными установщиками для Windows, которые включают язык Ruby, окружение выполнения, важную документацию и прочее. Если вы не знаете, какую версию установить, чтобы начать знакомство с Ruby, то рекомендуется установщик Ruby+Devkit * (x64). Он предоставляет самое большое число совместимых gem (пакеты Ruby) и устанавливает MSYS2-Devkit вместе с Ruby, благодаря чему gem с C-расширениями могут быть скомпилированы сразу после завершения установки.
Запустите скаченный файл. В этом окне мы можем выбрать настройки:
Папку установки можно оставить без изменения.
Add Ruby executables to your PATH – означает добавить каталог с исполнимыми файлами Ruby в системную переменную. Это рекомендуется сделать, чтобы не указывать при каждом запуске скрипта Ruby полный путь до интерпретатора скриптов.
Associate .rb and .rbw files with Ruby installation — означает связать файлы с расширениями .rb и .rbw с установленным Ruby. Благодаря этому файлы Ruby можно будет запускать двойным кликом или набрав имя скрипта в командной строке.
Use UTF-8 as default external encoding – означает использовать кодировку UTF-8 в качестве внешней кодировки по умолчанию.
Я выбрал все три галочки и в качестве папку установки ввёл C:\Ruby26:
Как видно на следующей странице, сам пакет Ruby занимает немного места, но много места занимается предлагаемая к установке набор инструментов разработчика MSYS2. Я настоятельно рекомендую установить MSYS2, поскольку кроме упомянутой выше возможности компилировать пакеты для Ruby, MSYS2 обеспечивает консольное окружение с функциями Linux (примерно как это делает Cygwin, но с дополнительными возможностями).
Оставьте галочку на последнем окне для настройки инструментов разработчика MSYS2 и нажмите Finish.
Далее нам предлагается:
Просто нажимаем ENTER для выполнения всех трёх действий:
Всё завершено, для выхода нажмите ENTER:
Кстати, если вы внимательно смотрели за происходящем на экране, то могли заметить pacman. В этом консольном окружении действительно есть менеджер пакетов pacman. К другим функциями MSYS2 вернёмся чуть позже.
Подробнее о Pacman смотрите в статьях:
Как обновить Ruby на Windows
Для обновления до последнего патча (то есть минорной версии, к примеру с 2.5.1 до 2.5.4), достаточно запустить новую версию установщика. Установленные gem (пакеты из репозитория Ruby), не перезаписываются и будут работать с новой версией без переустановки. Для обновления установки достаточно использовать RubyInstaller без Devkit. Обновить Devkit можно отдельно запустив в командной строке Windows следующую команду:
При выходе новой мажорной версии её нельзя обновить установкой в ту же директорию, что и предыдущая. К примеру, если предыдущая версия установки RubyInstaller-2.5.x, а новая версия RubyInstaller-2.6.x, то её нужно установить либо в новую директорию, либо удалить старую версию и вместо неё установить новую, поскольку gem (программы) с C расширениями не совместимы между ruby-2.5 и 2.6.
Как установить и использовать gem в Windows
RubyGems — это менеджер пакетов для Ruby. С помощью него можно установить различные программы и их зависимости, установку можно делать как из исходного кода на локальной системе, так и с удалённых источников приложений.
Показанная выше установка Ruby также устанавливает и gem, чтобы в этом убедиться выполните команду:
Вы должны увидеть справку по использованию gem.
Чтобы вывести все доступные команды gem, выполните:
Чтобы установить пакет запустите команду вида:
Больше примеров по установке пакетов будет далее.
Чтобы показать справку о команде установки:
К примеру, для установки программы ‘rake’ из локальной директории или удалённого сервера:
Установка пакета ‘rake’ только с удалённого сервера:
Установка ‘rake’, но только версии 0.3.1, даже если имеются неудовлетворённые зависимости, установку сделать в пользовательскую директорию:
Вывести список gem (пакетов), чьё имя начинается на ‘D’:
Вывести список локальный и удалённых gem, чьё имя содержит ‘log’:
gem search log —both
Предыдущая команда используется для поиска пакетов по имени.
Вывести список только удалённых (не локальных) gem, чьё имя содержит ‘log’:
Просмотреть информацию о RubyGems:
Обновить все программы gem в системе:
Обновить локальную версию RubyGems:
Как установить bundler
bundler — это менеджер зависимостей Ruby. Данный менеджер пригодится при установке других программ, написанных на Ruby.
Для установки bundler в Windows выполните:
Для обновления bundle выполните команду:
Если вы устанавливаете программу из исходного кода и там присутствует файл Gemfile, то перейдите в папку с этой программой и выполните в ней команду:
Эта команда установит все перечисленные в файле Gemfile зависимости.
Чтобы увидеть, где установленные с помощью bundle пакеты gem, используйте команду:
Как установить программу Ruby в Windows. Как запустить программу Ruby в Windows
Далее рассмотрим несколько примеров установки и использования программ на Ruby в Windows.
Восстановление сайтов из Интернет Архива в Windows
Начнём с программы Wayback Machine Downloader, которая полностью восстанавливает сайты из веб архива.
Для установки Wayback Machine Downloader достаточно выполнить:
Запустим для проверки работоспособности программы восстановление сайта из Архива Интернета:
Программа успешно завершила работу:
Как установить WhatWeb в Windows
WhatWeb идентифицирует веб-сайты. Цель этой программы ответить на вопрос «Чем является этот веб-сайт?». WhatWeb распознает веб-технологии, в том числе систему управления контентом (CMS), платформы для ведения блогов, пакеты статистики/аналитики, библиоотеки JavaScript, веб-сервера и встроенные устройства. WhatWeb имеет более 1700 плагинов, каждый из которых для распознавания чего-то одного. WhatWeb также идентифицирует номера версий, email адреса, ID аккаунтов, модули веб-платформ, SQL ошибки и прочее.
Начнём с поиска WhatWeb в репозитории пакетов Ruby:
Найдено только simple_whatweb (0.4.1).
Даже если это WhatWeb, то версия очень старая. Поэтому на Windows установим WhatWeb из исходного кода.
Распакуйте эту папку. Откройте командную строку и перейдите в эту папку:
Следующая команда покажет справку по программе:
Запустим проверку сайтов:
Установка WPScan в Windows
Что такое MSYS2. Как пользоваться MSYS2
Мы установили уже MSYS2 для того, чтобы получить доступ к инструментам компиляции, благодаря которым мы сможем установить любой пакет Ruby. На самом деле MSYS2 основывается на Cygwin и содержит большое количество утилит Linux.
MSYS2 предоставляет оболочку bash, Autotools, make, gcc, pacman, sh и многие другие пакеты. Особенно следует отметить менеджер пакетов pacman.
Для активации рабочего окружения MSYS2 откройте командную строку или консоль powershell и выполните там:
В результате сразу станут доступны для работы многие утилиты Linux, а также менеджер пакетов Pacman, с помощью которого можно установить новые пакеты или обновить имеющиеся. При установке пакетов Pacman следит за зависимостями и устанавливает их.