ftp proxy

Karel Dudasek karel.dudasek na vghur.army.cz
Středa Červen 27 07:13:26 CEST 2007


On Tue, 26 Jun 2007, Jan Volešák wrote:
> Dobry den,
> neresil jste nekdo ftp proxy? Mam problem s predavanim hesla :(
> Jen zbezne jsem otestoval ftp-proxy a frox a nejak jsem se nedobral vysledku.
> Byl bych vdecen za nastin primejsi cesty
> Diky za pripadne namety
> Honza Volesak
/etc/inetd.conf: (2 radky)
##### FTP PROXY ######
ftpproxy stream tcp nowait ftpgw /usr/sbin/tcpd /usr/local/sbin/ftp.proxy
  -f /usr/local/ftpproxy/ftp.proxy.conf -e

/usr/local/ftpproxy/ftp.proxy.conf:
         acp /usr/local/ftpproxy/ftp.proxy.acp.sh
         allow-anyremote no
         allow-blanks yes
         allow-passwdblanks yes
         ccp /usr/local/ftpproxy/ftp.proxy.ccp.sh
         ctp /usr/local/ftpproxy/ftp.proxy.ctp.sh
         debug no
         monitormode no
         proxy-routing yes
#       selectserver yes|no
#       server ftpserver
#       serverlist list-of-allowed-server
#       sourceip ip-number
#       timeout timeout
         xferlog /usr/local/ftpproxy/var/xferlog

[10.224.96.111]
         bind 3200
         xferlog /usr/local/ftpproxy/var/xferlog

#[80.188.37.130]

[192.168.200.1]
         bind 3200
         xferlog /usr/local/ftpproxy/var/xferlog

[127.0.0.1]
         bind 3200
         xferlog /usr/local/ftpproxy/var/xferlog

/usr/local/ftpproxy/ftp.proxy.acp.sh:
#!/bin/bash
LC_ALL=C
export LC_ALL
LOGFILE=/usr/local/ftpproxy/var/acp.log
POVOLENE_IP="192.168.200. 10.224.96. 10.224.97. 127.0.0. 80.188.37.130"

DATUM=`date`
HESLOPROXY=${PROXY_PASSWD}
HESLOPROXY="********"
echo "${DATUM}: CLIENT:${PROXY_CLIENT}(${PROXY_CLIENTNAME}) 
IF:${PROXY_INTERFACE
} SERVER:${PROXY_SERVER}(${PROXY_SERVERNAME}) LOGIN:${PROXY_SERVERLOGIN}" 
>>${LO
GFILE}
echo "${DATUM}: CLIENT AUTH: ${PROXY_USERNAME} LOGIN:${HESLOPROXY}" 
>>${LOGFILE}
# Test na vhodne klienty
# Testujeme shodu na povolene IP rozsahy
valid=0
for i in $POVOLENE_IP
do
   m=${PROXY_INTERFACE#${i}}
   if [ ${#m} -ne ${#PROXY_INTERFACE} ]; then
      valid=1
   fi
done
if [ $valid -ne 1 ]; then
    echo "-ERR: request from denied IP address\n"
    exit 1
fi
# Zkusebne testneme test na user/passwd na proxy
export HTTP_PROXY=http://${PROXY_USERNAME}:${PROXY_PASSWD}@lincom:3128/
wget -q --spider --proxy=on http://www.dobruska.cz 2>/dev/null >/dev/null
ret=$?
if [ $ret -ne 0 ]; then
    echo "-ERR: request denied proxy auth for ${PROXY_USERNAME} failed\n"
    exit 1
fi
exit 0


Proxy služba pro přenos souborů
Je spuštěna na portu 3200. A opět vyžaduje jméno a heslo pro přístup k 
internetu. Vzhledem k použitému protokolu jsou tyto údaje zadávány 
současně s přihlašovacími informacemi k serveru. Nejlépe to bude vidět na 
příkladu:

C:\tmp> ftp lincom 3200<ENTER>
Connected to lincom.vghur.army.cz.
220 server ready - login please
Name (lincom:xxxx): Uziv_jmeno_proxy:jmeno_uzivatele_ftp na jmeno_ftp_serveru
331 password required
Password: heslo_na_proxy:heslo_na_ftp_serveru
230 login accepted
....



                              Karel Dudasek


Další informace o konferenci Linux