Создание смарт-контрактов Solidity для блокчейна Ethereum. Практическое руководство - страница 6




># visudo


Откроется редактор файла /etc/sudoers. Вам нужно добавить в конец этого файла следующую строку:


>book ALL=(ALL) ALL


Для установки сервиса ssh введите следующую команду:


>$ sudo apt-get install ssh


Далее в Ubuntu и Debian установите редактор vim (если вам удобно в нем работать), утилиты sudo (если она не установлена), git, curl, gcc и mc (mc устанавливать не обязательно, пригодится, если только вы привыкли работать с Midnight Commander):


>$ sudo apt-get install vim sudo git curl gcc mc


Для того чтобы обезопасить ваш сервер от атак типа брутфорса (перебор паролей) на порт SSH, установите fail2ban:


>$ sudo apt-get install fail2ban


Мы настоятельно рекомендуем использовать эту утилиту в рабочем окружении вместе с брандмауэром.

Установка Geth и Swarm в Ubuntu

Далее мы перейдем к установке Geth, а также ПО узла распределенного хранилища данных Swarm (потребуется позже, на 10 уроке).

Проще всего установить Geth в ОС Ubuntu. Процедура описана здесь: https://github.com/ethereum/go-ethereum/wiki/Installation-Instructions-for-Ubuntu.

Для установки выполните следующие команды:


>$ sudo apt-get install software-properties-common

>$ apt-get install build-essential

>$ sudo add-apt-repository -y ppa:ethereum/ethereum

>$ sudo apt-get update

>$ sudo apt-get install ethereum


Вы также можете установить девелоперскую (нестабильную версию Geth), для чего выполните такую команду:


>$ sudo apt-get install ethereum-unstable


После установки проверьте версию Geth:


>$ geth version

>Geth

>Version: 1.8.23-stable

>Git Commit: c942700427557e3ff6de3aaf6b916e2f056c1ec2

>Architecture: amd64

>Protocol Versions: [63 62]

>Network Id: 1

>Go Version: go1.10.4

>Operating System: linux

>GOPATH=

>GOROOT=/usr/lib/go-1.10


Как видите, здесь мы установили Geth стабильной версии 1.8.23 и Go версии 1.10.4.

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


>$ sudo apt-get install ethereum-swarm


После установки проверьте версию Swarm:


>$ swarm version

>Swarm

>Version: 0.3.11-stable

>Git Commit: c942700427557e3ff6de3aaf6b916e2f056c1ec2

>Go Version: go1.10.4

>OS: linux


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

В том случае, когда при установке произошли ошибки, попробуйте найти решение в поисковой системе Google. Заметим, что ошибки часто связаны с обновлением версий устанавливаемого ПО.

Установка Geth и Swarm в Debian

Установку Geth и Swarm в ОС Debian нужно выполнять из исходных текстов. При этом вначале нужно будет установить Go, а затем уже собственно Geth и Swarm.

На момент создания нашей книги была доступна версия Go 1.12.1. Заметим, что Geth и Swarm находятся в состоянии постоянного совершенствования. Не исключено, что к моменту, когда вы начнете работу над этой книгой, для них придется устанавливать новую версию Go.

Предварительная подготовка

Прежде всего обновите пакеты и установите необходимые утилиты:


>$ sudo apt-get update

>$ sudo apt-get upgrade

>$ apt-get install vim sudo git curl gcc mc


Если вы при установке ОС не добавили пользователю book возможность работы с командой sudo, сделайте это аналогично тому, как это было описано ранее для Ubuntu.

После этого можно переходить к установке Go и Geth.

Загрузка дистрибутива Go

Дистрибутивы Go различных версий и для различных платформ можно найти здесь: https://golang.org/dl/.

Прежде всего подключимся к нашему серверу (физическому или виртуальному) пользователем book и загрузим архив Go нужной версии: