Kurztipp: Externe IP ermitteln und auf einen Webserver laden

RollerChris

R.I.P.
Gesendet von Sven Blumenstein am Di, 7. Jan 2003 um 22:20

Wenn man seinen Rechner per (quasi)-Standleitung, z.B. mit ISDN- oder DSL-Flatrate, ans Internet gehängt hat, kann man im Prinzip jederzeit von außen auf ihn zugreifen. Allerdings muß man dafür seine IP-Adresse kennen. In vielen Fällen dürfte es sinnvoll sein, diese Adresse bei einem kostenlosen DNS-Service wie dyndns.org zu registrieren. Wenn das nicht möglich ist, gibt es immer noch die folgende, nicht ganz so bequeme Alternative.

Ich habe ein kleines BASH-Skript geschrieben, welches die externe IP ermittelt, in eine HTML-Seite schreibt und die Seite dann per FTP hochlädt.


#!/bin/bash
#########################################################################
# #
# upip.sh - Externe IP ermitteln und auf einen FTP Server laden #
# Geschrieben von Sven Blumenstein #
# #
#########################################################################
# #
# Ich habe dieses Script geschrieben um jederzeit per Internet auf #
# die IP meines Linux Servers und somit den Server selber zugreifen #
# zu koennen. Auf die Verwendung eines DynDns Dienstes wird absichtlich #
# verzichtet, da dadurch eine "statische" Adresse entsteht unter der #
# die dynamische IP angesprochen werden kann. Dadurch verschwindet #
# der (kleine) Sicherheitsvorteil einer dynamischen IP #
# #
# Kleiner Tip: Das Verzeichniss in welches die html Datei hochgeladen #
# wird sollte nach Moeglichkeit per .htaccess Datei geschuetzt werden. #
# #
# Aus Sicherheitsgruenden enthaelt diese Datei weder Benutzername #
# noch Passwort fuer den FTP Server. Zur authentifizierung sollte #
# man eine Datei namens ".netrc" im home Verzeichniss des Benutzers #
# anlegen der diese Script ausfuehrt und folgendes hineinschreiben: #
# #
# machine yourdomain.com login youruser password yourpass #
# #
# Nicht vergessen die Datei per "chmod 0400 .netrc" zu schuetzen! #
# Wenn man nun "ftp yourdomain.com" eingibt, werden die Logindaten #
# aus der .netrc gelesen. Siehe "man netrc" fuer weitere Infos. #
# #
#########################################################################

DOMAIN=yourdomain.com
DIR=remotedirectory
IP_PATH=/home/ip/index.html
IP_FILE=`basename $IP_PATH`
MACHINE=`hostname`

# TIME=`date +%H:%M:%S`

if [ `uptime | awk -F, '{print NF}'` = 5 ]; then
TIME=`uptime | awk -F, '{print $1}'`
else
TIME=`uptime | awk -F, '{print $1, $2}'`
fi

IP=`wget -q -O - http://checkip.dyndns.org |
grep Address | awk '{print $4}'`

if [ -e $IP_PATH ]; then
rm -f $IP_PATH
else
touch $IP_PATH
fi

cat << EOF > $IP_PATH
IP: $IP
$TIME
EOF

(echo cd $DIR; echo del $IP_FILE; echo put $IP_PATH $IP_FILE;
echo bye) | ftp $DOMAIN 1>&2>/dev/null

# End of file

Quelle: www.pro-linux.de
 
In der Downloas Section vertreten ist das Programm Autodialup,
das kann, automatisch connecten, und wenn es connectet hat
1) DIe aktuelle Ip in ne e-mail schreiben und die sonst wo hin schicken, wo mans gern hätte
und
2) Eine Seite via ftp updaten lassen, die immer zur aktuellen Ip weiterleitet! Ist ansich besser als no-ip und co.
denn freunde etc- könen sich die bekannte de.vu domains (e.g. mein-server.de.vu bestimmt besser mergen als mein-server.no-ip.com ...
 
Bitte für mich gaaaaanz langsahm zum Mitdenken.
Das Problem: wir habe einen Rootserver mit de Domain und zu Hause einen DSL Server. Zur Zeit ist der DSL Server über die üblichen Verdächtigen (no-ip.com, dyn.ee u.s.w) zu erreichen. Der Rootserver läuft unter Linux und Apache, der DSL Server mit XP und G6. Da der Rootserver immer da ist, wollte ich schon von Anfang an den DSL Server mit der de Domain updaten, damit ich von den Freeanbietern wegkomme, da sie mir zu Unzuverlässig sind, der Rootserver aber, ausser bei einen Plattencrash, immer da ist. Wie funktioniert das? Geht das? So als Laie nehme ich an, daß der DSL Server sich bei der DE Domain (per Skript, oder wie, oder was?) anmeldet und alle können dann, so sie lustig sind, über die DE Adresse den DSL Server erreichen. Schön wär's, aber ich habe überhaup keinen blassen, ob und wie das gehen soll. Input zu dem Thema währe willkommen :D
 
Oben