Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

http proxy za ftp

31 views
Skip to first unread message

Aleksandar Ivanisevic

unread,
Mar 12, 2013, 10:24:56 AM3/12/13
to

google fu me izdaje, jel postoji nesto kao web interface za ftp server
ali da korisnik ne mora znati login/password od ftp servera nego da je taj
negdje hardkodiran u configu a korisnik vidi samo web stranicu ili
eventualno upisuje neki sasvim treci user/pass?

Dakle kao da sam u apache config upisao

ProxyPass /nekaj/ ftp://user:pa...@ftp.nekaj.drugo/

a da to radi kao sto je napisano, a ne da ignorira hardkodiran
user/pass i trazi ga od usera.

--
Ti si arogantan, prepotentan i peglaš vlastitu frustraciju. -- Ivan
Tišljar, hr.comp.os.linux

Drazen Kacar

unread,
Mar 12, 2013, 11:00:12 AM3/12/13
to
Aleksandar Ivanisevic wrote:

> Dakle kao da sam u apache config upisao
>
> ProxyPass /nekaj/ ftp://user:pa...@ftp.nekaj.drugo/
>
> a da to radi kao sto je napisano, a ne da ignorira hardkodiran
> user/pass i trazi ga od usera.

Imaš li učitan mod_proxy_ftp? I jesi li siguran da nemaš tipfeler u
user:pass dijelu?

Ne da mi se sad isprobavati, ali možda bi to gore moglo raditi ako ga
nekako uglaviš u URL rewrite engine.

Ili bi mogao upogoniti mod_ext_filter tako da njemu ide filename koji
korisniku treba, a onda on pokrene eksterni program koji taj file i skine
s FTP servera. Content type pri tome mora biti fiksan, što mi se nikad
nije sviđalo kod tog modula. Pretpostavljam da bi application/octet-stream
bilo zadovoljavajuće (tebi :-).

--
.-. .-. Yes, I am an agent of Satan, but my duties are largely
(_ \ / _) ceremonial.
|
| da...@fly.srk.fer.hr

Aleksandar Ivanisevic

unread,
Mar 12, 2013, 11:25:37 AM3/12/13
to
Drazen Kacar <da...@fly.srk.fer.hr> writes:

> Aleksandar Ivanisevic wrote:
>
>> Dakle kao da sam u apache config upisao
>>
>> ProxyPass /nekaj/ ftp://user:pa...@ftp.nekaj.drugo/
>>
>> a da to radi kao sto je napisano, a ne da ignorira hardkodiran
>> user/pass i trazi ga od usera.
>
> Imaš li učitan mod_proxy_ftp?

Naravno, inace bi dobio internal error, ako bi se server opce htio
startat.

>I jesi li siguran da nemaš tipfeler u
> user:pass dijelu?

100%, upizdio sam ga i u curl za svaki slucaj

> Ne da mi se sad isprobavati, ali možda bi to gore moglo raditi ako ga
> nekako uglaviš u URL rewrite engine.

Ako rewriteam u

RewriteEngine On
RewriteRule ^/nekaj/(.*) ftp://user:pa...@ftp.nekaj.drugo/$1 [P,L]

Ponasa se potpuno isto kao i ProxyPass gore. Ili si mislio nes drugo?

> Ili bi mogao upogoniti mod_ext_filter tako da njemu ide filename koji
> korisniku treba, a onda on pokrene eksterni program koji taj file i skine
> s FTP servera. Content type pri tome mora biti fiksan, što mi se nikad
> nije sviđalo kod tog modula. Pretpostavljam da bi application/octet-stream
> bilo zadovoljavajuće (tebi :-).

E, al meni treba i listing kojih sve fajlova ima, dakle da se ponasa
isto ko da si upisao ftp:// u address bar.

Drazen Kacar

unread,
Mar 12, 2013, 12:10:52 PM3/12/13
to
Aleksandar Ivanisevic wrote:
> Drazen Kacar <da...@fly.srk.fer.hr> writes:

> > Ne da mi se sad isprobavati, ali mo�da bi to gore moglo raditi ako ga
> > nekako uglaviďż˝ u URL rewrite engine.
>
> Ako rewriteam u
>
> RewriteEngine On
> RewriteRule ^/nekaj/(.*) ftp://user:pa...@ftp.nekaj.drugo/$1 [P,L]
>
> Ponasa se potpuno isto kao i ProxyPass gore. Ili si mislio nes drugo?

To sam mislio. Jbga.

> > Ili bi mogao upogoniti mod_ext_filter tako da njemu ide filename koji
> > korisniku treba, a onda on pokrene eksterni program koji taj file i skine
> > s FTP servera. Content type pri tome mora biti fiksan, �to mi se nikad
> > nije svi�alo kod tog modula. Pretpostavljam da bi application/octet-stream
> > bilo zadovoljavaju�e (tebi :-).
>
> E, al meni treba i listing kojih sve fajlova ima, dakle da se ponasa
> isto ko da si upisao ftp:// u address bar.

A gle, postoje programi zvani lynx, links, elinks, a mo�da i jo� koji u
toj kategoriji i svi oni znaju napraviti to �to ti treba. Ne mora�
koristiti wget i curl.

Bax

unread,
Mar 12, 2013, 4:41:14 PM3/12/13
to

"Aleksandar Ivanisevic" <aleks...@ivanisevic.de> wrote in message
news:m3hakg1...@alex.2e-systems.com...
>
> google fu me izdaje, jel postoji nesto kao web interface za ftp server
> ali da korisnik ne mora znati login/password od ftp servera nego da je taj
> negdje hardkodiran u configu a korisnik vidi samo web stranicu ili
> eventualno upisuje neki sasvim treci user/pass?
>
> Dakle kao da sam u apache config upisao
>
> ProxyPass /nekaj/ ftp://user:pa...@ftp.nekaj.drugo/
>
> a da to radi kao sto je napisano, a ne da ignorira hardkodiran
> user/pass i trazi ga od usera.

Ne�to ovako ? http://user.wisp.hr/


Aleksandar Ivanisevic

unread,
Mar 13, 2013, 5:47:38 AM3/13/13
to
Drazen Kacar <da...@fly.srk.fer.hr> writes:

> A gle, postoje programi zvani lynx, links, elinks, a možda i još koji u
> toj kategoriji i svi oni znaju napraviti to što ti treba. Ne moraš
> koristiti wget i curl.

Dakle imam jedan ftp server na koji imam samo ftp pristup sa
user/passom koji ne zelim nikome davati. E sad bi ja da mogu shareati
jedan direktorij na tom serveru preko weba, koristeci drugi server kao
proxy, a bez da tamo trebam prostora na disku, dakle tocno ono sto
radi proxypass, kad bi ga se samo moglo sloziti da ne trazi originalni
user/pass.

Kako da to postignem pomocu lynxa, linksa, elinksa, curla ili wgeta,
molicu fino?

Aleksandar Ivanisevic

unread,
Mar 13, 2013, 5:48:03 AM3/13/13
to
> Nešto ovako ? http://user.wisp.hr/

Nikako tako ;)

Service Temporarily Unavailable

The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
Apache/2.2.14 (Win32) DAV/2 mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1 Server at user.wisp.hr Port 80

Josip Lazic

unread,
Mar 13, 2013, 6:14:03 AM3/13/13
to
On Tuesday, March 12, 2013 3:24:56 PM UTC+1, Aleksandar Ivanisevic wrote:
> google fu me izdaje, jel postoji nesto kao web interface za ftp server
>
> ali da korisnik ne mora znati login/password od ftp servera nego da je taj

Fora je u tome da u config fileu moraš host dio napisati kao FQDN, a ne kao IP adresu. Ako nemaš DNS zapis za taj server stavi neko ime u hosts file.

Zna li netko možda kako natjerati ftp proxy da koristi PASV mod? FTP na koji se spajam je iza NAT-a, tako da dobijem grešku

Reason: EPSV attempt to connect to host:11716 failed - firewall/NAT?

Josip Lazic

unread,
Mar 13, 2013, 6:17:46 AM3/13/13
to
On Wednesday, March 13, 2013 11:14:03 AM UTC+1, Josip Lazic wrote:
> On Tuesday, March 12, 2013 3:24:56 PM UTC+1, Aleksandar Ivanisevic wrote:
>
> > google fu me izdaje, jel postoji nesto kao web interface za ftp server
>
> > ali da korisnik ne mora znati login/password od ftp servera nego da je taj
>
> Fora je u tome da u config fileu moraš host dio napisati kao FQDN, a ne kao IP adresu. Ako nemaš DNS zapis za taj server stavi neko ime u hosts file.

Zanemarite ovo, zatulavio sam i zanemario da browser cacheira user/pwd.

Valentin Vidic

unread,
Mar 13, 2013, 6:33:16 AM3/13/13
to
On 2013-03-13, Aleksandar Ivanisevic <aleks...@ivanisevic.de> wrote:
> Kako da to postignem pomocu lynxa, linksa, elinksa, curla ili wgeta,
> molicu fino?

Mozda bi se moglo sa curlftpfs ili necim slicnim mountati taj FTP server
pa ga posluzivati kroz Apache kao lokalne datoteke.

--
Valentin

Drazen Kacar

unread,
Mar 13, 2013, 7:11:43 AM3/13/13
to
Aleksandar Ivanisevic wrote:
> Drazen Kacar <da...@fly.srk.fer.hr> writes:
>
> > A gle, postoje programi zvani lynx, links, elinks, a možda i još koji u
> > toj kategoriji i svi oni znaju napraviti to što ti treba. Ne moraš
> > koristiti wget i curl.
>
> Dakle imam jedan ftp server na koji imam samo ftp pristup sa
> user/passom koji ne zelim nikome davati. E sad bi ja da mogu shareati
> jedan direktorij na tom serveru preko weba, koristeci drugi server kao
> proxy, a bez da tamo trebam prostora na disku, dakle tocno ono sto
> radi proxypass, kad bi ga se samo moglo sloziti da ne trazi originalni
> user/pass.
>
> Kako da to postignem pomocu lynxa, linksa, elinksa, curla ili wgeta,
> molicu fino?

Ajme meni. Oš me zaposlit nakon ovoga? :-)

U Apache config staviš nešto ovakvo:

ScriptAlias /acocgi/ /home/dave/aco/
<Directory "/home/dave/aco">
AllowOverride None
Options +ExecCGI
Order allow,deny
Allow from all
</Directory>
RewriteEngine On
RewriteRule ^/shareddir$ /shareddir/ [R,L]
RewriteRule ^/shareddir/(.*) http://127.0.0.1/acocgi/getit/$1 [PT,L]

U /home/dave/aco staviš skriptu pod nazivom getit:

#!/bin/zsh

if [[ -z $PATH_INFO || $PATH_INFO[-1] == "/" ]]; then
# Get the directory listing
echo Content-Type: text/html
echo

elinks -source ftp://user:pass@localhost/home/dave/trash$PATH_INFO
else
# Get the file
echo Content-Type: application/octet-stream
echo

wget -q -O - ftp://user:pass@localhost/trash$PATH_INFO
fi


I to ti otprilike radi to što hoćeš (umjesto 127.0.0.1 trebaš staviti
hostname svog servera). Invokcija elinksa će vjerojatno trebati još neke
flagove (-no-connect i -no-home barem), a i njegov output ćeš morati
procesirati jer na par mjesta imaš URL FTP servera (bez usernamea i
passworda, doduše).

A mogao bi i dodati malo koda za izbacivanje pravilnog content typea
kod skidanja datoteke umjesto hardkodiranog application/octet-stream.

Nisam provjerio radi li ispravno za poddirektorije. Pati se sam s tim. :-)

Luka Ćavara

unread,
Mar 13, 2013, 9:38:53 AM3/13/13
to
On 03/13/2013 10:47 AM, Aleksandar Ivanisevic wrote:
> Drazen Kacar<da...@fly.srk.fer.hr> writes:
>
>> A gle, postoje programi zvani lynx, links, elinks, a možda i još koji u
>> toj kategoriji i svi oni znaju napraviti to što ti treba. Ne moraš
>> koristiti wget i curl.
>
> Dakle imam jedan ftp server na koji imam samo ftp pristup sa
> user/passom koji ne zelim nikome davati. E sad bi ja da mogu shareati
> jedan direktorij na tom serveru preko weba, koristeci drugi server kao
> proxy, a bez da tamo trebam prostora na disku, dakle tocno ono sto
> radi proxypass, kad bi ga se samo moglo sloziti da ne trazi originalni
> user/pass.
>
> Kako da to postignem pomocu lynxa, linksa, elinksa, curla ili wgeta,
> molicu fino?
>

Pogledaj ovo, samo raspakiraš u neki direktorij na web poslužitelju
i odmah radi:

http://www.webresourcesdepot.com/web-based-php-ftp-application-phpwebftp/



http://www.phpwebftp.com/



--
ɹɥ˙ʇǝuʇɥ˙ƃz@ɐɹɐʌɐɔ˙ɐʞnן

Bax

unread,
Mar 13, 2013, 2:56:54 PM3/13/13
to

"Aleksandar Ivanisevic" <aleks...@ivanisevic.de> wrote in message
news:m34ngf1...@alex.2e-systems.com...
> "Bax" <b...@neki.com> writes:
>
>> "Aleksandar Ivanisevic" <aleks...@ivanisevic.de> wrote in message
>> news:m3hakg1...@alex.2e-systems.com...
>>>
>>> google fu me izdaje, jel postoji nesto kao web interface za ftp server
>>> ali da korisnik ne mora znati login/password od ftp servera nego da je
>>> taj
>>> negdje hardkodiran u configu a korisnik vidi samo web stranicu ili
>>> eventualno upisuje neki sasvim treci user/pass?
>>>
>>> Dakle kao da sam u apache config upisao
>>>
>>> ProxyPass /nekaj/ ftp://user:pa...@ftp.nekaj.drugo/
>>>
>>> a da to radi kao sto je napisano, a ne da ignorira hardkodiran
>>> user/pass i trazi ga od usera.
>>
>> Ne�to ovako ? http://user.wisp.hr/
>
> Nikako tako ;)
>
> Service Temporarily Unavailable
>
> The server is temporarily unable to service your request due to
> maintenance downtime or capacity problems. Please try again later.
> Apache/2.2.14 (Win32) DAV/2 mod_autoindex_color PHP/5.3.1
> mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1 Server at
> user.wisp.hr Port 80
>
> --

Moja gre�ka ... sorry zaboravio sam da mi je mre�a malo komplicirana ... a
nisam provjeravao dostupnost izvana ... taj host nije ba� �ivotno va�an :)
al eto sad radi ... probaj ponovno


Aleksandar Ivanisevic

unread,
Mar 22, 2013, 6:16:21 AM3/22/13
to
Drazen Kacar <da...@fly.srk.fer.hr> writes:

> Aleksandar Ivanisevic wrote:
>> Drazen Kacar <da...@fly.srk.fer.hr> writes:
>>
>> > A gle, postoje programi zvani lynx, links, elinks, a možda i još koji u
>> > toj kategoriji i svi oni znaju napraviti to što ti treba. Ne moraš
>> > koristiti wget i curl.
>>
>> Dakle imam jedan ftp server na koji imam samo ftp pristup sa
>> user/passom koji ne zelim nikome davati. E sad bi ja da mogu shareati
>> jedan direktorij na tom serveru preko weba, koristeci drugi server kao
>> proxy, a bez da tamo trebam prostora na disku, dakle tocno ono sto
>> radi proxypass, kad bi ga se samo moglo sloziti da ne trazi originalni
>> user/pass.
>>
>> Kako da to postignem pomocu lynxa, linksa, elinksa, curla ili wgeta,
>> molicu fino?
>
> Ajme meni. Oš me zaposlit nakon ovoga? :-)

Ja cu te zaposlit i prije ovoga, al ti samo kenjas i nikad nis od toga ;)

[...]

> I to ti otprilike radi to što hoćeš (umjesto 127.0.0.1 trebaš staviti
> hostname svog servera). Invokcija elinksa će vjerojatno trebati još neke
> flagove (-no-connect i -no-home barem), a i njegov output ćeš morati
> procesirati jer na par mjesta imaš URL FTP servera (bez usernamea i
> passworda, doduše).
>
> A mogao bi i dodati malo koda za izbacivanje pravilnog content typea
> kod skidanja datoteke umjesto hardkodiranog
> application/octet-stream.

Je da, i onda potrosim vise vremena da dotjeram to u red nego sto ce
se ukupno koristiti :) Been there, done that, vec sam malo prestar za
to. Zato sam i trazio nes da se moze instalirat za 30 sekundi.

Aleksandar Ivanisevic

unread,
Mar 22, 2013, 7:37:01 AM3/22/13
to
Luka Ćavara <lca...@zg.htnet.hrREMOVE_THIS> writes:

> Pogledaj ovo, samo raspakiraš u neki direktorij na web poslužitelju
> i odmah radi:
>
> http://www.webresourcesdepot.com/web-based-php-ftp-application-phpwebftp/
>
> http://www.phpwebftp.com/

Ma too majstore. 30 sekundi instalacija, daljnih 3 minute da nadjem
kako da limitiram stvar na jedan dir... i onda skuzim da ta ujdurma
prvo downloada cijeli file na server, da bi ga tek onda slala dalje, a
sto sam eksplicite htio izbjeci.

Na kraju ce bit nesto kao ovo Daveovo, a najvjerojatnije nece bit
nista jer mis e nece dat s tim zajebavat.

Drazen Kacar

unread,
Mar 22, 2013, 8:10:42 AM3/22/13
to
Aleksandar Ivanisevic wrote:

> Je da, i onda potrosim vise vremena da dotjeram to u red nego sto ce
> se ukupno koristiti :) Been there, done that, vec sam malo prestar za
> to. Zato sam i trazio nes da se moze instalirat za 30 sekundi.

A ba� sam se pitao ho�e li se pojaviti jo� neki requirement. :-)

Gle, ono iz prethodnog posta je bilo optimizirano tako da ja potro�im
minimum vremena na to, a ne da bude kvalitetno po bilo kojem drugom
kriteriju. Zato je implementirano preko CGI-ja, a ne na neki drugi na�in.

S druge strane, ako ideďż˝ to tako implementirati, onda radiďż˝ kompletan
tunel (tunel je proxy koji ne snima stvari na lokalni file system), �to
ipak zahtijeva stanovitu koli�inu koda.

Da ja trebam rije�iti taj problem u praksi, prvo bih pogledao mogu li
popraviti ProxyPass direktivu tako da FTP username i password rade onako
kako bi trebalo. Pa onda taj patch poslao Apache maintainerima i tako se
rije�io obaveze da odr�avam kod.

Aleksandar Ivanisevic

unread,
Mar 22, 2013, 10:05:15 AM3/22/13
to
Drazen Kacar <da...@fly.srk.fer.hr> writes:

[...]

> Da ja trebam riješiti taj problem u praksi, prvo bih pogledao mogu li
> popraviti ProxyPass direktivu tako da FTP username i password rade onako
> kako bi trebalo. Pa onda taj patch poslao Apache maintainerima i tako se
> riješio obaveze da održavam kod.

Je, tak obicno i ja radim, al ovo mi je za po doma, dakle u igri je
brljavljenje da se potrosi sto manje vremena. Zato i pitam na njuzima,
inace bi vec davno nesto sam smislio.
0 new messages