Остались вопросы?
Мы с удовольствием вам поможем
Спасибо! Ваша заявка принята.
Ваша заявка принята. Наш менеджер скоро с вами свяжется
Заказать звонок
Спасибо! Ваша заявка принята.
Спасибо за обращение.
Мы обязательно свяжемся с вами

Время работы офиса
Пн-Пт: 8:00 — 18:00
Сб: 10:00 — 16:00
Вс: выходной
Забыли пароль?

Введите email, который вы использовали при регистрации на hoster.by

success icon

Объектное хранилище S3: подключение с помощью S3cmd

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

Инициализация файла конфигурации

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

При запуске команд s3cmd использует параметры, установленные в файле конфигурации по умолчанию. Можно указать другую конфигурацию, добавляя
ее к каждой команде при помощи -c ~/path/to/config/file.

Если вы планируете использовать только наш S3 и не хотите указывать его конфигурационный файл каждый раз при работе с s3cmd, то настройте файл ~/.s3cfg по умолчанию с помощью следующей команды:

s3cmd --configure

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

Пример:

Enter new values or accept defaults in brackets with Enter.

Refer to user manual for detailed description of all options.

Access key and Secret key are your identifiers for Amazon S3. Leave them empty for using the env variables.

Access Key []: EXAMPLE7UQOTHDTF3GK4

Secret Key []: exampleb8e1ec97b97bff326955375c5

Default Region [US]:

Затем введите конечную точку.

Пример:

Use "s3.amazonaws.com" for S3 Endpoint and not modify it to the target Amazon S3.

S3 Endpoint [s3.amazonaws.com]: storage-1.s3.hoster.by

Далее будет запрошен шаблон URL-адреса для доступа к вашему бакету. Вы можете использовать переменную %(bucket)s вместо имени вашего контейнера. Введите следующий формат шаблона точно так, как написано: %(bucket)s.storage-1.s3.hoster.by.

Пример:

Use "%(bucket)s.s3.amazonaws.com" to the target Amazon S3. "%(bucket)s" and "%(location)s" vars c

an be used if the target S3 system supports dns based buckets.

DNS-style bucket+hostname:port template for accessing a bucket []: %(bucket)s.storage-1.s3.hoster.by

Установка пароля шифрования по технологии GPG — необязательно

Если HTTPS шифрует данные только во время передачи, то GPG — при передаче и хранении. Установка пароля по технологии GPG не зашифрует ранее размещенные файлы, но обеспечит шифрование добавленным после.

Пример:

Encryption password is used to protect your files from reading

by unauthorized persons while in transfer to S3

Encryption password:

В следующем запросе будет задан путь к программе GPG. В Linux вы можете принять значение по умолчанию, нажав ENTER. Если вы следуете этим инструкциям в macOS, вам, возможно, придется установить GPG с помощью такого инструмента, как Homebrew (brew install gpg). Затем вы можете найти путь GPG с помощью which gpg.

Пример:

Path to GPG program [/usr/bin/gpg]:

Настройка HTTPS-подключения

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

Пример:

When using secure HTTPS protocol all communication with Amazon S3

servers is protected from 3rd party eavesdropping. This method is

slower than plain HTTP, and can only be proxied with Python 2.7 or newer

Use HTTPS protocol [Yes]: Yes

Настройка прокси-сервера HTTP — необязательно

Если в вашей сети используется прокси-сервер HTTP, то следующий запрос потребует его IP-адрес или имя домена без протокола. Если для вас эти настройки неактуальны, нажмите ENTER, чтобы оставить поле пустым.

Пример:

On some networks all internet access must go through a HTTP proxy.

Try setting it here if you can't connect to S3 directly

HTTP Proxy server name:

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

Пример:

New settings:

Access Key: EXAMPLES7UQOTHDTF3GK4

Secret Key: b8e1ec97b97bff326955375c5example

Default Region: US

S3 Endpoint: storage-1.s3.hoster.by

DNS-style bucket+hostname:port template for accessing a bucket: %(bucket)s.s

torage-1.s3.hoster.by

Encryption password: secure_password

Path to GPG program: /usr/bin/gpg

Use HTTPS protocol: True

HTTP Proxy server name:

HTTP Proxy server port: 0

Test access with supplied credentials? [Y/n] Y

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

Пример:

Please wait, attempting to list all buckets...

Success. Your access key and secret key worked fine :-)

Now verifying that encryption works...

Success. Encryption and decryption worked fine :-)

Save settings? [y/N] Y

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

Пример настройки бакета

Для создания бакета используйте команду mb (сокращение от «make Bucket»:

s3cmd mb s3://spacename s3://secondspace

Перечислить все существующие бакеты:

s3cmd ls

Перечислить весь контент во всех бакетах:

s3cmd la --recursive

Используйте команду rb (сокращение от «remove Bucket») для удаления пустого бакета. Если нужно удалить бакет со всем его содержимым, добавьте --recursive. Это навсегда удалит все файлы.

s3cmd rb s3://spacename

Просмотреть информацию по бакету:

s3cmd info s3://spacename

Применить политики к бакету:

s3cmd setpolicy ./policy.json s3://spacename

Пример:


Public read:

{

"Version": "2012-10-17",

"Statement": [{

"Effect": "Allow",

"Principal": "*",

"Action": "s3:GetObject",

"Resource": "arn:aws:s3:::*"

}]

}

Public full access:

{

"Version": "2012-10-17",

"Statement": [{

"Effect": "Allow",

"Principal": "*",

"Action": "s3:*",

"Resource": "arn:aws:s3:::*"

}]

}

По умолчанию публичный доступ закрыт.



Получилось найти ответ?
success image
Спасибо за обратную связь!
Задать вопрос
Уточните, пожалуйста, вопрос, ответ на который вы не нашли на этой странице. Мы подготовим ответ и отправим его на вашу электронную почту.
Спасибо! Ваша заявка принята.
Мы скоро свяжемся с вами
Подпишитесь на email-рассылку!

Будьте в курсе новостей. Отправляем полезные письма каждый месяц.

Пожалуйста, введите адрес электронной почты
Пожалуйста, подтвердите согласие с условиями обработки персональных данных.
article mailing picture
Вы подписались на нашу рассылку!

Скоро вы получите новое письмо.

article mailing picture