---
title: 'Cyberduck'
sidebar_label: 'Cyberduck'
sidebar_position: 5
description: 'Как подключиться к хранилищу для работы с ним через графический или консольный клиент файлового менеджера Cyberduck'
---

import Formbricks from '@theme/MDXComponents/Formbricks'
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
import {TabItemLabel} from '@selectel/docux/components'
import GrantAccess from '@site/docs/_partials/s3/grant-access.mdx'

# Cyberduck

[Cyberduck](https://cyberduck.io/) — это файловый менеджер, который поддерживает протоколы FTP, OpenStack Swift и Amazon S3.
С Cyberduck можно работать через графический или консольный клиент.
Графический клиент доступен на ОС Windows и macOS.
Консольный клиент доступен на ОС Windows, Linux и macOS.

## Настроить Cyberduck \{#configure-cyberduck}

1. [Настройте доступ к S3](#configure-s3-access).
2. [Настройте клиент](#configure-client).

### 1. Настроить доступ к S3 \{#configure-s3-access}

<GrantAccess />

### 2. Настроить клиент \{#configure-client}

<Tabs queryString="client">
  <TabItem value="graphical" default>
    <TabItemLabel>
      Графический клиент
    </TabItemLabel>

    <Tabs queryString="graphical-client">
      <TabItem value="windows" default>
        <TabItemLabel>
          Windows
        </TabItemLabel>

        1. Установите [Cyberduck](https://cyberduck.io/download/).
        2. Откройте Cyberduck.
        3. Нажмите **Новое подключение**.
        4. В верхнем поле откройте список и выберите **Еще опции**.
        5. В разделе **Profiles** отметьте профиль **Selectel S3 Cloud Storage**. Для работы с профилем у бакета должна быть [включена Virtual-Hosted адресация](/s3/buckets/addressing-types.mdx#enable-virtual-hosted).
        6. Перезапустите Cyberduck.
        7. Нажмите **Новое подключение**.
        8. В верхнем поле откройте список и выберите **Selectel S3 Cloud Storage**.
        9. В поле **Access Key** вставьте значение поля **Access key** из S3-ключа пользователя, для которого вы [настроили доступ на этапе 1](#configure-s3-access).
        10. В поле **Secret Key** вставьте значение поля **Secret key** из S3-ключа пользователя, для которого вы [настроили доступ на этапе 1](#configure-s3-access).
        11. Нажмите **Подключиться**.
      </TabItem>

      <TabItem value="macos">
        <TabItemLabel>
          macOS
        </TabItemLabel>

        1. Установите [Cyberduck](https://cyberduck.io/download/).
        2. Откройте Cyberduck.
        3. Нажмите **Новое подключение**.
        4. В верхнем поле откройте список и выберите **More Options**.
        5. На вкладке **Профили** отметьте профиль **Selectel S3 Cloud Storage**. Для работы с профилем у бакета должна быть [включена Virtual-Hosted адресация](/s3/buckets/addressing-types.mdx#enable-virtual-hosted).
        6. Перезапустите Cyberduck.
        7. Нажмите **Новое подключение**.
        8. В верхнем поле откройте список и выберите **Selectel S3 Cloud Storage**.
        9. В поле **Access Key** вставьте значение поля **Access key** из S3-ключа пользователя, для которого вы [настроили доступ на этапе 1](#configure-s3-access).
        10. В поле **Secret Key** вставьте значение поля **Secret key** из S3-ключа пользователя, для которого вы [настроили доступ на этапе 1](#configure-s3-access).
        11. Нажмите **Подключиться**.
      </TabItem>
    </Tabs>
  </TabItem>

  <TabItem value="console-client">
    <TabItemLabel>
      Консольный клиент
    </TabItemLabel>

    Подробнее о работе с консольным клиентом в инструкции [Command Line Interface (CLI)](https://docs.duck.sh/cli/) документации Cyberduck.

    <Tabs queryString="os">
      <TabItem value="windows" default>
        <TabItemLabel>
          Windows
        </TabItemLabel>

        Консольная версия Cyberduck для Windows устанавливается с помощью менеджера пакетов [Chocolatey](https://chocolatey.org/).

        1. Откройте командную строку с правами администратора.

        2. [Установите менеджер пакетов Chocolatey](https://community.chocolatey.org/courses/installation/installing?method=installing-chocolatey).

        3. Установите Cyberduck:

           ```bash
           choco install duck
           ```

        4. Для установки всех пакетов введите `A` и нажмите **Enter**.

        5. [Скачайте файл профиля Selectel](https://static.selectel.ru/kb/selectel-s3-cloud-storage.cyberduckprofile).

        6. Загрузите файл профиля в папку `%AppData%\Cyberduck\Profiles`.
      </TabItem>

      <TabItem value="linux">
        <TabItemLabel>
          Linux
        </TabItemLabel>

        1. Откройте терминал.

        2. Добавьте репозиторий `duck`:

           ```bash
           sudo echo 'deb https://s3.amazonaws.com/repo.deb.cyberduck.io nightly main' >> /etc/apt/sources.list.d/cyberduck.list
           sudo echo 'deb https://s3.amazonaws.com/repo.deb.cyberduck.io stable main' >> /etc/apt/sources.list.d/cyberduck.list
           ```

        3. Добавьте GPG-ключ:

           ```bash
           sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FE7097963FEFBE72
           ```

        4. Обновите репозиторий:

           ```bash
           sudo apt-get update
           ```

        5. Установите Cyberduck CLI:

           ```bash
           sudo apt-get install duck
           ```

        6. Скачайте профиль Selectel:

           ```bash
           wget https://static.selectel.ru/kb/selectel-s3-cloud-storage.cyberduckprofile
           ```

        7. Создайте директорию с профилями:

           ```bash
           mkdir -p ~/.duck/profiles
           ```

        8. Переместите скачанный профиль Selectel в директорию с профилями:

           ```bash
           mv 'selectel-storage.cyberduckprofile' ~/.duck/profiles/
           ```
      </TabItem>

      <TabItem value="macos">
        <TabItemLabel>
          macOS
        </TabItemLabel>

        Консольная версия Cyberduck для macOS устанавливается с помощью менеджера пакетов [Homebrew](https://brew.sh/).

        1. Откройте терминал.

        2. Установите Cyberduck:

           ```bash
           brew install duck
           ```

        3. Скачайте профиль Selectel:

           ```bash
           wget https://static.selectel.ru/kb/selectel-s3-cloud-storage.cyberduckprofile
           ```

        4. Создайте директорию с профилями:

           ```bash
           mkdir -p ~/Library/Group Containers/G69SCX94XU.duck/Library/Application Support/duck/Profiles
           ```

        5. Переместите скачанный профиль Selectel в директорию с профилями:

           ```bash
           mv 'selectel-storage.cyberduckprofile' ~/Library/Group Containers/G69SCX94XU.duck/Library/Application Support/duck/Profiles
           ```
      </TabItem>
    </Tabs>
  </TabItem>
</Tabs>

## Формат команд для консольного клиента \{#command}

Для работы через консольный клиент используйте команды вида (при Path-Style адресации):

```bash
duck --region <pool> --username <access_key> --password <secret_key> --<command> s3://<s3_domain>/<bucket_name>
```

Укажите:

* `<pool>` — [пул](/infrastructure/locations.mdx#pool), в котором находится S3;
* `<access_key>` — значение поля **Access key** из [S3-ключа](/access-control/manage/edit-user-data-or-role.mdx#issue-s3-key);
* `<secret_key>` — значение поля **Secret key** из S3-ключа;
* `<command>` — команда Cyberduck, некоторые команды можно посмотреть в [документации CLI](https://docs.cyberduck.io/cli/);
* `<s3_domain>` — [домен S3 API](/s3/manage/domains.mdx#s3-api-domains). Домен зависит от [пула](/infrastructure/locations.mdx#pool), в котором находится S3;
* `<bucket_name>` — имя бакета.

## Получить ссылку на объект \{#obtain-link-to-object}

Вы можете получить ссылку на объект в публичном или приватном бакете через подписанный URL (Presigned URL).
Подробнее о Presigned URLs в инструкции [Sharing objects with presigned URLs](https://docs.aws.amazon.com/AmazonS3/latest/userguide/ShareObjectPreSignedURL.html) документации AWS.

1. Откройте графический клиент Cyberduck.
2. В списке объектов бакета нажмите правой кнопкой мыши на объект и выберите **Копировать URL**.
3. Выберите один из пунктов **Предподписанный URL** в зависимости от желаемого срока работы ссылки — час, день или неделя.

<Formbricks />
