1 (изменено: DnsIs, 2012-08-13 15:01:38)

Тема: OFF: Можно ли научить программу ходить через прокси, если не умеет?

Собственно задался целью, проверять почту консольной программой, а именно getmail.
При прямом подключении интернета, все пашет, но на работе подключение через  HTTP-прокси.

Доступа к серваку нету, соответственно перенаправление портов не светит.

Собственно возникает вопрос. Возможно ли получать почту при таком раскладе?

Интернет намекает, что якобы чудо программа FreeCap, поможет.
Но я ищу консольный вариант. Встречал кто-нибудь или я опять фантазирую?

Заранее благодарю.

ЗЫ В связи с тем, что сейчас конец рабочего дня понедельника, допускаю, что я втупливаю.

Нас невозможно сбить с пути, нам пофигу куда идти.

2

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

либо тонель с каким нибудь ресурсом за прокси, либо если прокси поддерживает коннект

Я конечно далек от мысли... (с)

3

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

DnsIs, перенёс тему.

4

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

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

5

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

Но ведь как то же почту thunderbird забирает.

Нас невозможно сбить с пути, нам пофигу куда идти.

6

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

Есть кстати консольный почтовик Postie, который обещает работать через прокси, но он платный - это не наш метод. )

Нас невозможно сбить с пути, нам пофигу куда идти.

7

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

птичка и любые почтовики никогда не умели и не могут уметь работать через прокси, без наличия в прокси метода коннект или тонеля до ресурса который уже производит коннект с поп3

Я конечно далек от мысли... (с)

8

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

Может быть стоит взглянуть в сторону autoit, где уже полно исходников по работе с почтой? HttpSetProxy() и в путь:)

9

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

DnsIs пишет:

Но ведь как то же почту thunderbird забирает.

Значит это HTTPS-прокси. Он отличается от HTTP-прокси тем, что у него разрешён метод CONNECT для 443-го порта.

JSman пишет:

Может быть стоит взглянуть в сторону autoit, где уже полно исходников по работе с почтой? HttpSetProxy() и в путь:)

Да какая разница в сторону чего смотреть, если нет принципиальной возможности реализации?

10

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

А возможно ли как-нибудь определить тип прокси не спрашивая админа (в отпуске он, да и админ то он так себе)?

Нас невозможно сбить с пути, нам пофигу куда идти.

11

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

telnet twitter.com 443

если есть соединение, значит ссл пропускается коннектом

но и в этом случае нужен посредник за пределами прокси

Я конечно далек от мысли... (с)

12 (изменено: Александр_, 2012-08-15 22:23:04)

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

DnsIs пишет:

А возможно ли как-нибудь определить тип прокси не спрашивая админа (в отпуске он, да и админ то он так себе)?

Ну разумеется, просто попробуй заюзать CONNECT на 25-ом и 110-ом портах. Например вот обмен пакетами на двух разных прокси, которые нашёл в интернете:

14.139.225.90:3128 пишет:

C:      CONNECT pop.mail.ru:110 HTTP/1.0


S:      HTTP/1.0 200 Connection Established
Proxy-Agent: Fortinet-Proxy/1.0


C:      USER dogma1599@mail.ru

S:      +OK
...

199.116.118.67:3128 пишет:

C:      CONNECT pop.mail.ru:110 HTTP/1.0


S:      HTTP/1.1 403 Forbidden
Server: squid/3.2.0.19
Mime-Version: 1.0
Date: Wed, 15 Aug 2012 18:27:21 GMT
...

Очевидно, что первый позволит мне забрать почту, а второй нет. Аналогично с SMTP.

13 (изменено: DnsIs, 2012-08-31 07:38:56)

Re: OFF: Можно ли научить программу ходить через прокси, если не умеет?

Собственно нашелся способ из палочек и соплей:
Беру утилиты: ncat, которая входит в комплект nmap и утилиту проверки почты getmail

В одной консоли запускаю:

ncat -l 127.0.0.1 8800 -c "ncat 217.69.139.74 110 --proxy 192.168.1.1:8080" -v

ncat слушает на локальной машине 8800 порт, после подключения к которому запускается 2 копия ncat прокладывающая туннель на pop.mail.ru (217.69.139.74) через прокси 192.168.1.1:8080

Во второй консоли (простейший пример):

getmail -u LOGIN -pw PASS -s 127.0.0.1 -port 8800 -nodelete -xtract -plain

Почта распаковывается вместе с вложениями, далее все придется разбирать ручками/скриптами.
После коннекта, ncat отрубается.

Нас невозможно сбить с пути, нам пофигу куда идти.