Перейти к содержимому

Как отключиться от ftp сервера

  • автор:

Настройка анонимного FTP-доступа

Если ваш сайт размещен на выделенном IP-адресе, вы можете создать для него папку, в которую другие пользователи смогут анонимно загружать/выгружать файлы по FTP. После включения анонимного доступа по FTP пользователи смогут зайти на адрес ftp://ftp.ваш-домен.com, указав имя «anonymous» (анонимный) и любой пароль.

Чтобы разрешить анонимный доступ по FTP:

  1. Перейдите на страницу Сайты и домены > ваш домен >FTP.
  2. Перейдите на вкладку Анонимный FTP.
  3. Сделайте следующее:
    1. Чтобы активировать службу анонимного FTP, нажмите Включить.
    2. Для настройки приветствия, которое будут видеть пользователи при подключении к сайту по FTP, установите флажок Отображать приветственное сообщение и введите нужный текст сообщения. Учтите, что не все FTP-клиенты обеспечивают отображение сообщений приветствия.
    3. Чтобы разрешить пользователям загружать файлы в папку /incoming , установите флажок Разрешить загрузку в папку Incoming.
    4. Чтобы разрешить пользователям создавать подпапки в папке /incoming , установите флажок Разрешить создание папок в папке Incoming.
    5. Чтобы разрешить скачивание файлов из папки /incoming, установите флажок Разрешить скачивание из папки Incoming .
    6. Чтобы ограничить объем дискового пространства, доступного для загрузки файлов, снимите флажок Без ограничений напротив Ограничить размер папки Incoming и укажите значение в килобайтах. Это жесткое ограничение: по его достижении пользователи больше не смогут добавлять файлы в данную папку.
    7. Чтобы ограничить количество одновременных анонимных подключений к серверу по FTP, снимите флажок Без ограничений напротив Ограничить максимальное количество одновременных соединений и укажите допустимое количество соединений.
    8. Чтобы ограничить пропускную способность для анонимных FTP-соединений, снимите флажок Без ограничений напротив Ограничить пропускную способность и введите максимальную пропускную способность в килобайтах в секунду.

    Чтобы изменить настройки анонимного FTP-доступа или отключить эту возможность:

    1. Перейдите на страницу Сайты и домены > ваш домен >FTP.
    2. Перейдите на вкладку Анонимный FTP.
    3. Выполните нужные операции:
      • Внесите нужные изменения и нажмите OK.
      • Чтобы отключить анонимный FTP-доступ, нажмите Отключить.

    Удалённая работа с FTP-хранилищем: ftp, cURL, wget

    url image

    Для начала работы необходимо подключиться к серверу по SSH.

    Работа с консольным клиентом ftp

    ftp — консольный клиент для работы с файлами по протоколу FTP. Доступен для установки в каждом дистрибутиве операционных систем семейства Linux:

    -- установлен по умолчанию -- apt-get update apt-get install ftp
    yum install ftp

    Предположим, что у нас есть несколько резервных копий в каталоге /root/backup/ Перед началом работы с хранилищем нужно перейти в него с помощью команды:

    cd /root/backup/

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

    Тестовый набор файлов

    Подключение и отключение

    Для работы с внешним FTP-диском нам потребуются:

    • адрес хранилища
    • логин FTP-пользователя
    • пароль FTP-пользователя

    Если вы используете Диск для бэкапов, эти данные доступа можно найти в Личном кабинете — раздел Товары — Внешний диск для бэкапов . Выберите ваш диск в списке и сверху нажмите «Инструкция» . В разделе «Доступ по протоколу FTP» будут указаны нужные данные:

    Доступы к FTP-диску

    Для подключения в терминале введите команду:

    ftp [адрес хранилища]

    Система запросит у вас имя и пароль FTP-пользователя:

    Подключение через ftp Ввод логина и пароля

    Чтобы завершить работу с хранилищем, введите команду bye или quit

    Отключение от FTP-сервера

    Автоматическая авторизация

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

    touch ~/.netrc chmod 600 ~/.netrc

    В файле нужно прописать данные хранилища: адрес (вместо ftp.storage.address ), логин (вместо ftp_login ), и пароль (вместо ftp_password ). В один файл можно записать доступы сразу к нескольким таким хранилищам.

    #Диск для бэкапов machine ftp1.storage.address login ftp1_login password ftp1_password #Архив сайта machine ftp2.storage.address login ftp2_login password ftp2_password #Секреты админа machine ftp3.storage.address login ftp3_login password ftp3_password

    Клиент ftp использует этот файл по умолчанию. Чтобы отменить принудительную авторизацию, при подключении используйте ключ -n :

    ftp -n [адрес хранилища]

    Тогда система запросит логин и пароль для подключения в обычном режиме.

    Возможности

    После авторизации откроется интерфейс для работы с хранилищем. Синтаксис команд напоминает стандартные команды Linux:

    Навигация
    • pwd — отображает текущую директорию, в которой мы находимся на удалённом хранилище;
    • ls — отображает список файлов и папок, размещенных в текущей директории хранилища; Пример работы команд pw и ls
    • mkdir folder_name и rmdir folder_name — используются соответственно для создания и удаления директорий хранилища;
    • cd /path/to/directory/ — используется для перемещения по каталогам; Создание папки с помощью mkdir и переход в неё с помощью cd
    • lcd /path/to/directory/ — переключает текущую рабочую директорию на локальном сервере. Пригодится, когда нужно загрузить в хранилище несколько файлов из разных каталогов текущего сервера. Переключение локальной рабочей директории с помощью lcd
    Управление файлами
    • put file — используется для загрузки на хранилище одиночного файла file . Для загрузки доступны файлы только из текущей рабочей директории локального сервера. Загрузка файла с помощью put
    • mput file1 file2 — позволяет загрузить в хранилище несколько файлов за раз. При этом после ввода команда будет запрашивать подтверждение для передачи каждого файла — нужно ввести yes и нажать клавишу Enter . Загрузка нескольких файлов за раз с помощью mput
    • get file — скачивает файл file с хранилища в текущую рабочую директорию на локальном сервере; Скачивание файлов с помощью get
    • mget file1 file2 — позволяет скачать из хранилища несколько файлов за один раз. Для скачивания каждого файла будет запрошено подтверждение. Скачивание нескольких файлов с помощью mget
    • delete file — безвозвратно удаляет одиночный файл из текущей директории хранилища. mdelete file1 file2 — позволяет удалить несколько файлов из хранилища за один раз. Удаление файлов с delete и mdelete

    Работа с cURL

    cURL — кроссплатформенная утилита, позволяющая обрабатывать и передавать данные по URL. Поддерживает огромное количество различных протоколов ( FTP, HTTP, HTTPS, IMAP, POP3, SCP, SFTP, SMB, SMTP, Telnet и др.).

    cURL предустановлен в большинстве современных Linux-дистрибутивов.

    -- установлен по умолчанию -- apt-get update apt-get install curl
    -- установлен по умолчанию -- yum install curl

    Подключение

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

    Подключиться к хранилищу можно двумя способами:

      Указав авторизационные данные прямо в команде. Это быстро и удобно, но небезопасно — использованный вами пароль можно подсмотреть в истории команд.

    curl -u ftp_login:ftp_password ftp://ftp.storage.address
    curl -n ftp://ftp.storage.address

    В обоих примерах cURL выведет в терминал список содержимого корневой папки хранилища. Аналогично можно вывести содержимое отдельных директорий хранилища, просто дописав путь после адреса FTP-сервера:

    curl -n ftp://ftp.storage.address/backup/

    Возможности

    Чтобы работать с файлами через cURL , нужно знать их название и расположение.

    • Загрузка файлов
    • Скачивание файлов
    • Управление файлами
    Загрузка файлов

    Загрузить файл filename на удалённое хранилище в условную папку backup/ можно с помощью следующей команды:

    curl -T filename -u ftp_login:ftp_password ftp://ftp.storage.address/backup/

    Если каталога backup/ , в который нужно загрузить файл, ещё не существует, можно добавить к команде опцию —ftp-create-dirs Тогда cURL автоматически создаст в хранилище недостающие директории и загрузит туда файл.

    Скачивание файлов

    Скачать файл filename из условной папки backup/ с хранилища также просто. Для сохранения файла с его текущим именем используйте опцию -O :

    curl -O -u ftp_login:ftp_password ftp://ftp.storage.address/filename

    Если же нужно сохранить файл на локальном сервере с новым именем local-filename , можно использовать опцию -o , указав после неё новое название файла:

    curl -o local-filename -u ftp_login:ftp_password ftp://ftp.storage.address/backup/filename

    Если вы скачиваете или загружаете большой файл, и процесс загрузки по какой-то причине вдруг прервался, можно возобновить его с места остановки. Для этого в предыдущую команду, которую вы запустили для скачивания/загрузки, добавьте опцию -С —

    curl -С - -O -u ftp_login:ftp_password ftp://ftp.storage.address/backup/filename
    Управление файлами

    cURL может передавать команды FTP-серверу хранилища, тем самым позволяя управлять папками и файлами:

      Создать папку backup/ на FTP-хранилище можно командой:

    curl -u ftp_login:ftp_password ftp://ftp.storage.address/ -Q '-MKD backup'
    curl -u ftp_login:ftp_password ftp://ftp.storage.address/ -Q '-RMD backup'
    curl -u ftp_login:ftp_password ftp://ftp.storage.address/backup/ -Q '-RNFR filename' -Q ‘-RNTO new-filename’
    curl -u ftp_login:ftp_password ftp://ftp.storage.address/backup/ -Q '-DELE filename'

    Загрузка файлов с wget

    wget — базовая утилита загрузки файлов. Доступна по умолчанию в любом дистрибутиве семейства Linux.

    Чтобы скачать файл filename , размещённый в папке backup/ удалённого хранилища, достаточно ввести команду:

    wget -m ftp://'ftp-login':'ftp-password'@ftp.server.address/backup/filename

    Или, при наличии файла .netrc :

    wget -m ftp://ftp.server.address/backup/filename

    По умолчанию файл будет сохранён в вашу текущую рабочую директорию. Можно изменить путь для сохранения, использовав опцию -P /path/to/directory/

    wget -m -P ~/user-downloads ftp://ftp.server.address/backup/filename

    Также wget может возобновить прерванную загрузку файла — для этого нужно повторить команду на скачивание файла с ключом -с

    wget -c ftp://ftp.server.address/backup/filename

    отключение ftp авторизации в windows server

    Мне нужно отключить авторизацию на ftp сервере, чтобы делать прямые ссылки на скачивание файла. Я пытался делать ссылки, включающие логин и пароль, но браузер все равно просит авторизацию. Анонимный доступ не помогает, все так же просит авторизацию(или может что то еще надо добавлять?). Вопрос такой: как Отключить Б-гомерзкую авторизацию на ftp? Заранее спасибо!

    Отслеживать
    8,355 4 4 золотых знака 25 25 серебряных знаков 64 64 бронзовых знака
    задан 24 окт 2019 в 11:12
    Comrade Tymanich Comrade Tymanich
    15 3 3 бронзовых знака

    1 ответ 1

    Сортировка: Сброс на вариант по умолчанию

    Если ничего не забыл, то как-то так:

    appcmd set config -section:system.applicationHost/sites /[name='имя_вашего_FTP'].ftpServer.security.authentication.AnonimouseAuthentication.enabled:true 

    Ну, и следом раздать права:

    appcmd set config имя_вашего_FTP /section:system.ftpserver/security/authorization /+[accessType='Allow',permissions='Read',roles='',users='*'] /commit:apphost 

    Не забудьте также выдать разрешение на чтение виртуальных папок:

    appcmd set config -section:system.applicationHost/sites /[name='имя_вашего_FTP'].ftpServer.directoryBrowse.showFlags:DisplayVirtualDirectories 

    Можно и через powershell, но там немного геморройнее. Но AppCmd появился, ЕМНИП, начиная с IIS7.

    Команда FTP

    Команда FTP реализует обмен файлами с FTP сервером в командной строке Windows. Утилита ftp.exe входит в стандартный дистрибутив всех версий операционных систем семейства Windows и позволяет выполнять обмен с сервером как в командном, так и в интерактивном режиме.

    Формат командной строки:

    FTP [-v] [-d] [-i] [-n] [-g] [-s:имя_файла] [-a] [-A] [-x:sendbuffer] [-r:recvbuffer] [-b:asyncbuffers] [-w:windowsize] [узел]

    -v — Отключение вывода на экран ответов с удаленного сервера.
    -n — Отключение автоматического входа при начальном подключении.
    -I — Отключение интерактивных запросов при передаче нескольких файлов.
    -d — Включение отладочного режима.
    -g — Отключение глобализации имен файлов (см. команду GLOB).
    -s:имя_файла — Задание текстового файла, содержащего команды FTP, которые будут выполняться автоматически при запуске FTP.
    -a — Использование локального интерфейса для привязки соединения.
    -A — Анонимное подключение к серверу.
    -x:send sockbuf — Переопределение стандартного размера буфера SO_SNDBUF (8192).
    -r:recv sockbuf — Переопределение стандартного размера буфера SO_RCVBUF (8192).
    -b:async count — Переопределение стандартного размера счетчика async (3)
    -w:windowsize — Переопределение стандартного размера буфера передачи (65535).
    узел — Задание имени или адреса IP удаленного узла, к которому необходимо выполнить подключение.

    — команды mget и mput принимают параметры y/n/q как YES/NO/QUIT.
    — для прекращения выполнения команд нажмите комбинацию клавиш CTRL+C.

    При запуске без параметров, FTP переходит в интерактивный режим, ожидая ввода команд пользователем. На экране отображается приглашение — ftp > .

    Для получения списка доступных команд можно ввести знак вопроса или команду help

    Подсказку по конкретной команде можно получить введя знак вопроса или help и имя команды:

    ? connect
    help connect

    Список команд FTP клиента Windows:

    ! — Временный переход из среды FTP в командную строку Windows (CMD.EXE) . Для возврата в FTP используется команда EXIT
    append добавление данных передаваемого файла в конец существующего.
    ascii — установка режима передачи файлов в формате ascii (текстовый режим)
    bell — выдача звукового сигнала по завершении команды .
    binary — установка режима передачи файлов в двоичном формате
    bye — завершение сеанса FTP и выход из программы.
    cd — изменение текущего каталога на удаленном компьютере
    close — завершение сеанса FTP ( закрытие соединения, открытого командой open )
    delete — удаление указанного файла на удаленном компьютере
    debug — переход в режим отладки
    dir — вывод содержимого каталога удаленного компьютера
    disconnect — завершение сеанса ftp. Отключение от сервера FTP без завершения программы.
    get — прием файла от сервера FTP
    glob — Переключение метасимвольного расширения имен локальных файлов. По умолчанию этот режим включен и позволяет использовать символы * и ? в шаблонах имен файлов.
    hash — переключение режима вывода метки хэширования для каждого переданного буфера
    help — вывод справочной информации по командам FTP
    lcd — смена рабочего каталога локального компьютера
    literal — отправка произвольной строки символов в качестве команды ftp
    ls — вывод содержимого каталога удаленного компьютера
    mdelete — удаление нескольких файлов
    mdir — вывод содержимого нескольких каталогов сервера FTP
    mget — прием нескольких файлов от сервера FTP
    mkdir — создание каталога на сервере FTP
    mls — вывод содержимого нескольких каталогов удаленного компьютера
    mput — отправка нескольких файлов на сервер FTP open — открыть соединение (подключиться) к серверу FTP
    prompt — изменение строки в приглашения к вводу команд в интерактивном режиме.
    put — передача одного файла
    pwd — отобразить имя текущего рабочего каталога на сервере FTP
    quit — завершение сеанса и выход из программы
    quote — отправка произвольной команды серверу FTP
    recv — прием одиночного файла
    remotehelp — получение справки от сервера FTP
    rename — переименование файла
    rmdir — удаление каталога на сервере
    send — передача одиночного файла
    status — отображение текущего состояния сеанса — к какому серверу выполнено подключение, тип передаваемых данных, состояние режимов, изменяемых командами FTP
    trace — переключение режима трассировки
    type — установка типа передачи файлов
    user — изменение имени пользователя в сеансе обмена с сервером FTP
    verbose — переключение режима детализации при выводе сообщений

    Как видно из списка перечисленных команд, стандартный клиент FTP в операционных системах Windows поддерживает далеко не полный перечень стандартных ftp-команд и, что самое неприятное, он не поддерживает команду переключения в пассивный режим ( passv ) обмена с сервером FTP, что делает его непригодным для обмена данными с серверами FTP, подключение к которым выполняется с использованием технологии трансляции сетевых адресов NAT . Другими словами, для обмена файлами с внешними, по отношению к подсети клиента, серверами, стандартный FTP-клиент не подходит. Это касается всех версий Windows, включая и Windows 10. Именно этот факт предопределяет область использования утилиты ftp.exe — только в локальных сетях, где возможно прямое TCP-соединение между клиентом и сервером.

    Пример сессии с использованием клиента FTP Windows:

    open 192.168.1.1 — открыть соединение с сервером 192.168.1.1
    user admin — использовать имя пользователя admin при подключении к серверу. В ответ на эту команду сервера запросит пароль.
    adminpass — ввод пароля для пользователя admin
    ls — отобразить список файлов и папок в удаленном каталоге
    get myfile.txt — принять файл myfile.txt из удаленного каталога в текущий локальный каталог.
    lcd C:\files — сменить текущий локальный каталог.
    get myfile.txt — принять файл myfile.txt из удаленного каталога в текущий локальный каталог ( C:\files ) .

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

    ftp -s:ftpcomm.txt — В файл ftpcomm.txt записывается перечень команд, в таком же порядке, в каком они вводились бы в интерактивном режиме. Например, для приема файла binfile.bin в каталог C:\temp:

    open
    192.168.1.1
    admin
    adminpass
    lcd C:\temp
    binary
    get binfile.bin
    bye

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *