.: Доброе время суток!
Ведущий рассылки FTPMail, Agora etc. -
Сергей Невский рад предложить Вам 13ый
выпуск рассылки, посвященной всецело
доступу к ресурсам сети Интернет через
электронную почту. Достаточно часто бывает,
что человек имеет доступ только к
электронной почте и ограниченный или
вообще никакой доступ к таким ресурсам
сети, как WWW, FTP и др. В рассылке чаще всего
будут печататься статьи, справочники,
ссылки на полные версии, а так же списки
WWW4Mail, Agora, FTPMail, GetWeb, GopherMail, Mail2FTP серверов, их
отличительные способности.
.: К случаю.
Приветствую всех подписчиков.
Наконец то и Вы, и я дождались выхода
очередного выпуска рассылки. На протяжении
всего этого времени ко мне постоянно
приходили письма с вопросами, неужели
рассылка больше не будет выходить? Нет,
рассылка выходить будет, но хочу
предупредить сразу, нерегулярно. Сегодня
выпуск справедливо будет назвать экспресс выпуском.
Как я уже успел заметить по Вашим письмам,
особый интерес вызывает возможность
обновления своих домашних страниц через
электронную почту, посредством сервиса
Mail2FTP. Что же, давайте остановимся на этом
более подробно.
.: Mail2FTP и FTPMail
Оригинальный help-файл
расположен здесь
/ заказать
по почте
Этот сервис создан в помощь
пользователям, которые по каким-либо
причинам не могут пользоваться обычным FTP-клиентом
для обновления своих сайтов в сети. Нередко
в сочетании в сервисом Mail2FTP приходиться
использовать FTPMail, с помощью последнего
можно узнать точное расположение и
название файлов (папок), расположенных на
удаленном сервере. Итак, по порядку.
При использовании данного
сервиса необходимо, что бы Ваш почтовый
клиент (Outlook, The Bat!) отправлял сообщения в
виде простого текста, без использования html,
кодирования base64 или quoted-printable. Если Ваша
программа настроена неправильно, то на
запрос, сервер Mail2FTP пришлет Вам сообщение
примерно следующего характера:
You must set up your mail client to send plain text, no HTML, no attachments.
554 5.3.0 |/home/mail2ftp/mail2ftp.pl... unknown mailer error 255
Как видите однажды я тоже
обжегся на этом;)
Работа с сервером бесплатна и без
каких-либо гарантий.
Существует два сервера Mail2FTP: mail2ftp@rootshell.be
и mail2ftp@treelife.org.ua,
работать можно с любым из них, первый
находится на территории Бельгии и работает
быстро, а второй расположен на Украине и
работает медленнее, так как имеет не такие
широкие каналы, как его бельгийский
коллега.
В посылаемых Вами письмах
игнорируется тема письма (Subject). Первая
строка тела письма должна содержать
команду MAIL2FTP. В ответ Вы получите письмо с
протоколом. Не отвечайте на письма от
сервера mail2ftp, вместо этого отправляйте
новые письма.
Для работы с сервисом
применяются следующие команды:
- Команда Mail2FTP
Mail2FTP host login password
Где host, login, password данные Вашего доступа к
FTP-серверу. Имя хоста (host) и имя
пользователя (login) могут содержать
латинские буквы, цифры, '.', '_', '-'. (Вымышленный)
пример:
mail2ftp ftp.narod.ru nevskys l5Y56rew
- Команда PUT (или UPLOAD) -
выгрузка текстового файла
PUT имя_файла (После команды PUT
поместите со следующей строчки файл,
который Вы хотите загрузить на сервер с
именем "имя_файла" ) После файла
поместите строку, содержащую
EOF
(обязательно прописными буквами). Вы
можете использовать другую строку
признака конца файла - в этом Вам поможет
команда SETEOF. Если файл существовал, то он
будет замещен (см. также команду RENAME).
Символы конца строки будут изменены с
соответствии с соглашениями FTP-сервера.
Файл
может содержать 8-битовые текстовые
символы (например, русские буквы).
- Выгрузка двоичного файла
Просто поместите uuencod-ированный файл
в письмо. Первая строка uuencod-ированного
файла (begin XXX имя_файла) служит командой. Три
или четыре цифры между "begin" и именем
файла игнорируются. Uuencod-ированный файл
должен заканчиваться строкой "end".
Если файл существовал, то он будет
замещен (см. также команду RENAME). Если Ваш
uuencoder использует пробелы вместо символов
"`", то Ваши текстовый редактор и
почтовый клиент не должны сжимать
несколько пробелов подряд в один и не
должны опускать пробелы в концах строк,
иначе получится ошибка "invalid string of uuencoded
file". В этом
случае найдите другой uuencoder, использующий
"`" (строка перед "end" должна
содержать один этот символ). Если Ваш
uuencoder вставляет заголовок перед строкой
"begin" и/или контрольные суммы после
"end", удаляйте их.
- Команда CD (или CHDIR, CWD)
CD имя_директории
Позволяет Вам перейти в другую папку на
сервере в том случае, если Вы хотите
выгрузить не в папку, куда FTP-сервер
помещает Вас при входе с Вашим логином,
вставьте команду CD перед первой командой
PUT или uuencod-ированным файлом. Многие FTP-серверы
начинают с главной (или единственной) из
Ваших собственных директорий (папок) на
FTP-сервере (в зависимости от Вашего логина
на FTP-сервере), так что во многих случаях
команда CD Вам не нужна.
- Команда CDUP
CDUP
Делает текущей директорию (папку) одним
уровнем выше. Попытки CDUP из
директории (папки), которую FTP-сервер
сделал текущей в начале Вашего
доступа, могут быть безуспешными или
проигнорированы.
- Команда PWD
PWD
Печатает в протоколе имя текущей
директории (папки) на FTP-сервере. Если
FTP-сервер начинает с Вашей собственной
директории (папки), эта директория
может казаться "/" FTP-клиенту (в
данном случае серверу mail2ftp).
- Команда DEL (или DELETE, ERASE, REMOVE)
DEL имя_файла
Удаляет файл с FTP-сервера.
- Команда RENAME (или REN)
RENAME старое_имя новое_имя
Переименовывает файл. Если новое имя уже
существовало, то старый файл с этим
именем автоматически удаляется. Когда Вы
обновляете файл, выгружая его новую
версию на FTP-сервер, рекомендуется
указывать другое имя и затем
переименовать файл на правильное имя -
тогда в случае сбоя (тайм-аут, запорченный
uuencod-ированный файл и т.п.) файл не
останется испорченным на FTP-сервере.
Пример:
put index.htm
~~~(файл)~~~
EOF
rename index.htm index.html
- Команда MKDIR (или MD)
MKDIR имя_директории
Создает директорию (папку) (если FTP-сервер
позволяет это).
- Команда RMDIR (или RD)
RMDIR имя_директории
Удаляет директорию, если она пустая. В
случае неуспеха удаления предупреждения
об этом не будет.
- Команда GETSIZE (или SIZE)
GETSIZE имя_файла
Печатает в протоколе размер файла на FTP-сервере.
Это редко нужно, т.к. команда PUT и выгрузка
двоичного файла (uuencod-ированный файл)
определяют и печатают размер только что
выгруженного файла.
- Команда MDTM
MDTM имя_файла
Печатает в протоколе дату и время (GMT)
последней модификации файла.
- Команда CHMOD
CHMOD permissions имя_файла
Если Вы не знаете, что такое chmod, то эта
команда Вам не нужна. Permissions должны быть
указаны как 3 или 4 восьмеричных цифры (0-7).
В протоколе FTP нет команды для изменения
permissions файла на удаленном сервере, но
некоторые FTP-серверы позволяют давать
команду chmod через команду SITE. Сервер mail2ftp
пытается это сделать, если пользователь
дал команду CHMOD. Нет гарантии, что это
сработает. Обратите внимание, что permissions в
строке "begin" uuencod-ированного файла
игнорируются сервером mail2ftp.
Пример:
chmod 755 myscript.cgi
- Команда SETEOF
SETEOF строка
Если в Вашем текстовом файле содержится
строка "EOF", используйте команду SETEOF
перед командой PUT.
- Команда APPEND (или OFFSET)
APPEND размер
Эта команда позволяет выгружать файл по
частям - полезно если Ваш почтовый клиент
или провайдер ограничивает размер писем,
которые Вы можете отправлять, или если
Вам не удается избежать тайм-аутов при
выгрузке очень больших файлов. Вы должны
"разрезать" файл на Вашем диске на
части. Найдите для этого подходящую
программу (их множество) или напишите
такую программу сами. Выгрузите первую
часть, скрипт скажет Вам ее размер на FTP-сервере
(для текстовых файлов может отличаться от
размера на Вашем диске). Например, скрипт
сказал:
uploaded file is 49743 bytes long
Теперь выгружайте вторую часть, указав
append 49743
перед командой PUT (с тем же именем файла)
или перед uuencod-ированным файлом (с тем же
именем файла в строке "begin"). Сервер
mail2ftp проверяет, совпадает ли длина файла
с указанным числом, и если да, добавляет
вторую часть за первой и говорит Вам
размер объединенных частей. Затем Вы
повторяете этот процесс с каждой
оставшейся частью. Не все FTP-серверы
позволяют добавление
(ftp.halyava.ru и .hypermart.net например не позволяют).
- Команда QUIT (или END, STOP, строка
с первым символом "-" или "_")
QUIT
Прекращает обработку письма. Полезно,
если Ваш почтовый клиент помещает
подпись в Ваши письма или если Ваш
провайдер цепляет рекламу в конце
каждого письма.
- Номер порта
Вы можете указать номер порта после
имени хоста (отделив двоеточием). Как
правило, это не нужно.
- Режим verbose
Если Вы укажете MAIL2FTPVERBOSE вместо MAIL2FTP в
первой строке, то протокол будет
содержать также команды, отправленные
сервером mail2ftp FTP-серверу, и ответы FTP-сервера.
В командах серверу mail2ftp
строчные и прописные буквы не различаются,
в именах файлов обычно различаются, в
строке EOF различаются. Пробелы перед
командой недопустимы, т.е. каждая команда
должна начинаться с первой колонки.
Примеры:
Предположим у меня есть сайт
nevskys.narod.ru. Мне необходимо его обновить и
загрузить пару веб-страниц и парочку
фотографий. Для чего составляем следующий
запрос:
КОМУ (TO): mail2ftp@rootshell.be
ТЕМА (SUBJECT): |
mail2ftp ftp.narod.ru
nevskys l5Y56rew
put system.h
<html>
<head>
<base href="http://nevskys.narod.ru/system.html">
<meta http-equiv="Content-Language" content="ru">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~ и так далее ~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
</table></center></div>
</body>
</html>
EOF
rename system.h system.html
cd images
begin 600 my.j
M4$L#!!0````(`'MR<"
BG(>28``&1:```+````1DE,15981"Y66$3M?'M\ M5$66?U5WD^X\.TC0J!$;;31"8")!!!(DKPZ)YM%YHR`A0B+!D+!)-Z`#3IA.
MK^E<>L09V969V8^X/E9GG!EGQG71$2:AV1`4'$#7!7%=W]X00!Y"HD3Z]SU5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~ и так далее ~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MD&*N?RV&O1R^9_P6GK]G?-G2NF;+BJ;&^YNJEUL65ST-#HL]]58FIP-EKH&
M2W91J65YXY*:*='1$5:-QGWED]^\:5K6$X'TUJ2\)V[1\K.02NH6+Z5\H,]\
end
rename my.j my.jpg
cdup
del net.html
quit |
Теперь поясним написанное. Я
указываю серверу соединиться с FTP-сервером
ftp.narod.ru под именем (login) nevskys и указанным
паролем с помощью команды MAIL2FTP.
Далее с помощью команды PUT я
выкладываю на сервер файл с именем system.h, не
забыв при этом в конце файла обязательно
добавить EOF. Потом командой RENAME
я переименовываю только что выгруженный
файл с system.h на system.html. Мне необходимо
выгрузить фотографию в каталог images,
поэтому я перехожу в этот каталог с помощью
команды CD и выгружаю фото в
uu-кодированном виде под именем my.j, после
чего меняю это имя, опять же с помощью
команды RENAME, с my.j на my.jpg.
Используя команду CDUP
возвращаюсь в домашний каталог, где при
помощи команды DEL удаляю
файл с именем net.html и "прощаюсь" с
сервером с помощью команды QUIT.
У кого будут проблемы - пишите, постараюсь
помочь. После выполнения всех команд
сервер вышлет отчет о проделанной работе,
примерно такого содержания:
email->FTP response
16:13:27 connecting to FTP host ftp.narod.ru, port 21
16:13:35 logging in, user nevskys
16:13:39 > put index.h
16:13:43 so-called ASCII mode
(more exactly text mode - 8bit text characters are allowed)
16:13:57 beginning file uploading
16:13:57 247 lines, 14264 bytes transferred
16:15:06 closing FTP data connection UNSUCCESSFUL
16:15:06 closing FTP connection
16:15:06 finished.
Добавлю пару слов по поводу
Mail2FTP: во-первых, если у Вас проблемы в доступе
к FTP-серверу по причине proxy или firewall, то для
Вас наверняка будет удобнее использовать
службу Web2FTP, работающую
по протоколу HTTP через обычный браузер - я
использую ее очень давно и вполне доволен;
во-вторых при использовании mail2ftp-сервера
mail2ftp@rootshell.be могут
возникнуть проблемы (или точно возникнут)
при попытках доступа к FTP-серверам таких
бесплатных хостинг-провайдеров, как Chat.ru,
Boom.ru и, возможно, NewMail.Ru - это связано с тем,
что у них прикрыт зарубежный канал; если Вы
попытаетесь проделать это, то Вам будут в
течении какого-то времени приходить
сообщения от сервера о попытке установки
связи, примерно такого содержания:
16:11:42 connecting to FTP host ftp.hotbox.ru, port 21
16:11:52 UNSUCCESSFUL: Net::FTP: Connection refused
Здесь я могу посоветовать только
использование более медленного
украинского сервера.
Плавно переходим к FTPMail, серверу,
который выступает посредником между Вами и
любым FTP-сервером в Интернете; я думаю,
что не помешает дать описание всех команд
данного сервиса.
Адреса FTPMail:
ftpmail@ftp.sunet.se ftpmail@ftp.uni-stuttgart.de ftpmail@mail.iif.hu
ftpmail@btoy1.rochester.ny.us ftpmail@dna.affrc.go.jp ftpmail@relcom.ru
Так же, как и при использовании
Mail2FTP, здесь команды серверу посылаются в
"теле" письма.
Для работы с сервисом
применяются следующие команды:
- Команда HELP
HELP
Высылает информацию (FAQ) с описанием
команд на английском языке.
- Команда OPEN
OPEN host login password
Соединяется с сервером, указанным под
именем host с именем пользователя (login) и
паролем. Если применить команду без
параметров host, login и password по умолчанию
будет произведено соединение с ftp-сервером
того сервиса FTPMail, которым Вы пользуетесь.
Примеры:
open ftp.narod.ru nevskys l5Y56rew
open (для ftpmail@ftp.sunet.se будет установлено
соединение с ftp.sunet.se и т.д.)
- Команда CD
CD имя_директории
Переход в указанную директорию.
- Команда LS
LS или LS имя_директории
Краткий листинг (список) файлов и
каталогов той директории (каталога),
которую Вы указали или , по умолчанию, где
сейчас находитесь.
- Команда DIR
DIR или DIR имя_директории
Полный листинг (список) файлов и
каталогов той директории (каталога),
которую Вы указали или , по умолчанию, где
сейчас находитесь.
- Команда GET
GET имя_файла
Закачивает с сервера указанный файл и
высылает Вам.
- Команда COMPRESS
COMPRESS
Сжимает утилитой compress файлы и листинги
перед отправкой
- Команда GZIP
GZIP
Сжимает утилитой gzip файлы и листинги
перед отправкой
- Команда BZIP2
BZIP2
Сжимает утилитой bzip2 файлы и листинги
перед отправкой
- Команда UUENCODE
UUENCODE
UU-кодирует файлы перед отправкой (по
умолчанию)
- Команда FORCE UUENCODE
FORCE UUENCODE
UU-колирует все (листинги и файлы) перед
отправкой
- Команда MIME
MIME
Кодирует файлы MIME V 1.0 перед отправкой
- Команда FORCE MIME
FORCE MIME
Кодирует все (листинги и файлы) MIME V 1.0
перед отправкой
- Команда NO
NO [COMPRESS/GZIP/UUENCODE/MIME]
Отключить кодирование способом,
выбранным ранее
- Команда SIZE
SIZE num[K|M]
Установить максимальный объем файла в Kb [K]
или Mb [M] перед отсылкой. (Можно
устанавливать значения до 1048576 байт)
- Команда MODE
MODE [binary/ascii]
Смена режима получения файлов. По
умолчанию binary
- Команда QUIT
QUIT
Завершения сеанса.
Стоит заметить, что команды BZIP2,
FORCE UUENCODE, MIME, FORCE MIME применимы не на всех
FTPMail-серверах.
Примеры:
Поскольку мы сегодня работаем со
своим сайтом, то попробуем применить FTPMail-сервис
для того, что нам не дает Mail2FTP, а именно для
получения информации о том, какие каталоги
и файлы находятся на нашем сервере и как
они называются.
Думаю, не стоит здесь в
подробностях описывать мои действия, так
все предельно ясно, если посмотреть на
значения команд.
Обычно сразу же приходит
сообщение от FTPMail-сервера, например:
<FTP EMAIL> response
---------------------------------------------------------------------
Due to the heavy load of the server, please restrict your request to
research and academic sites only. This helps the server live
longer.
---------------------------------------------------------------------
ftpmail has received the following job from
you:
reply-to nes@km.ru
open ftp.narod.ru nevskys l5Y56rew
dir
ftpmail has queued your job as: 91007647864.18243
Your priority is 9 (0 = highest, 9 = lowest)
Requests to ftp.dna.affrc.go.jp will be done before other jobs.
There are 4 jobs ahead of this one in the queue.
To remove send a message to ftpmail@dna.affrc.go.jp containing just:
delete 91007647864.18243
В пришедшем письме сообщается о
том, что мое задание поставлено в очередь
под таким-то номером (здесь 91007647864.18243) и
приоритете выполнения (здесь 9 - самый
медленный, самый наивысший приоритет (0)
выполнения задания имеют только запросы,
где в качестве FTP-сервера указан
ftp.dna.affrc.go.jp). Так же если я захочу удалить
свое задание из очереди, то должен
отправить команду DELETE номер_задания (здесь delete 91007647864.18243)
Теперь остается ждать результата
- когда он придет? Бывает серверы работаю
быстро, а бывает и нет. Случается так, что
иногда FTPMail-сервер не может установить
соединение с FTP-сервером, в этом случае
приходит сообщение об ошибке, примерно
такого содержания:
<FTP EMAIL> response
Your job was (lines beginning DONE show completed transfers):
reply-to nes@km.ru
open ftp.narod.ru nevskys
l5Y56rew
dir
The ftp log contains:
Connecting to ftp.hotbox.ru
Failed to connect
Pausing between retries
Failed to connect
Ну, а когда все идет путем..., то мы
получаем в ответ от FTPMail-сервера чаще всего
два письма, в одном из них протокол (лог)
соединения:
<FTP EMAIL> response
Your job was (lines beginning DONE show completed transfers):
reply-to nes@km.ru
open ftp.narod.ru nevskys
l5Y56rew
dir
The ftp log contains:
Connecting to ftp.narod.ru
220 w3.www.narod.ru (Libra FTP daemon 0.17 20001109)
---> USER nevskys
331 Password required
---> PASS <somestring>
230 Logged in, proceed
---> PWD
257 "/"
---> TYPE I
200 Type: I
---> TYPE A
200 Type: A N
---> PORT 150,26,230,49,241,91
200 PORT command OK
---> LIST
150 Opening ASCII mode data connection for .
timed out
---> TYPE I
226 Transfer complete.
---> QUIT
200 Type set to I.
... а в другом сам заказ:
total 16
drwxrwxr-x 2 53 53 4096 Sep 27 08:27 image
-rw-rw-r-- 1 53 53 452 Oct 21 06:09 index.html
-rw-rw-r-- 1 58 10 355 Oct 21 05:36 system.html
Не стоит удивляться, что получили
мы так мало, просто задачу мы ставили перед
собой такую; если же Вас интересует
получение файлов, то применяйте команду GET
и будете получать в ответ на Ваш запрос
большие письма;)
.: Поговорим?
По моим
задумкам здесь должна развернуться
дискуссия между подписчиками рассылки. Все
просто: кто-то присылает вопрос - я его
публикую в рассылке, а тот, кто знает ответ
на вопрос - шлет его - так же для публикации
в рассылке.
Если Вы не увидели своего
вопроса - это значит, что на него не
поступало ответа.
Вопросы шлите сюда.
(e-mail: nes@km.ru "Тема" (Subject): "Vopros").
Ждем Ваших вопросов.
.: P.S.
Узнать больше Вы можете на
официальном сайте рассылки, что бы
получить начальную страницу сайта по
электронной почте жмите
сюда:
будет автоматически создано письмо для
отсылки на WWW4Mail сервер - ничего не
изменяйте ни в теме, ни в теле письма - сразу
же или чуть попозже Вам придет письмо с
начальной страницей сайта
http://neva.pp.ru
На все Ваши письма я всегда
отвечаю, поэтому, если Вы ждали от меня
ответ, а его все нет и нет, то пошлите мне
письмо снова - письма частенько не доходят.
На письма с темой Vopros я не отвечаю - ответы
читайте в рассылке.
К сожалению у меня нет
возможности подготавливать текстовую
версию рассылки - она создается почтовым
роботом на сервере и поэтому вся
ответственность лежит на почтовых службах.
До новых встреч.
Архив рассылки находится здесь.
С Уважением к Вам, Сергей Невский.
e-mail:nes@km.ru
|