• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Anmeldefehler bei Warcraft auf Win-Client via LINUX-Server

Hallo liebe Forum-Mitglieder,

ich hoffe, dass ich hier Hilfe zur Lösung meines Problems erhalten kann.
Ich betreibe bei mir zu Hause ein privates Netzwerk mit
5 Clients, auf denen Windows XP installiert ist
(meine Familie möchte lieber WindowsXP-Rechnern arbeiten)
1 Server mit SuSE Linux 9.3 Pro (seit -3- Tagen)

Problem:
Auf einem der WindowsXP-Clients soll das Online-Spiel „World of Warcraft (WoW)“ laufen. Trotz einwandfreiem – und atemberaubend schnellem - Internet-Zugriff schlägt die Anmeldung auf dem WoW-Login-Server fehl.

Hintergrund / Problemdarstellung:
In der vergangenen Woche habe ich den alten Win-NT 4-Rechner, der vorher als Internet-Gateway fungierte durch einen etwas stärkeren Rechner ersetzt und (endlich) Linux darauf installiert.
Weiterhin habe ich den den DSL-Provider gewechselt (jetzt: Versatel mit echter 6000-er Flatrate).
Von der Linux-Installation selbst war ich - entgegen früherer Erfahrungen mit Linux – angenehm überrascht.
Auch die anschließende Konfiguration von SAMBA (als PDC) und SQUID habe ich in noch annehmbarer Zeit in den Griff bekommen; so dass alle angeschlossenen Clients nun – wie auch vorher unter dem alten Gateway – wieder Zugriff auf´s Internet und ihre zentralen Netzlaufwerke erhalten.

Nur eine Konfiguration ... die bekomme ich einfach nicht gebacken:
Mein Sohn (13) hat sich die neueste Version des Online-Spiels „World of Warcraft (WoW)“ gekauft und möchte dieses nun spielen. Er benutzt einen WinXP-Client (HostName: clientcly). Die Anmeldung am Linux-Server (Name: dvd-server) läuft genauso problemlos wie der Zugriff auf das Benutzer-eigene „home-Verzeichnis“.

Ich habe aber offensichtlich noch ein Problem mit der Freigabe der für dieses Spiel benötigten Ports. Das Problem ist wahrscheinlich auch auf beliebige andere Anwendungen, die auf den Clients ausgeführt werden (z.B. auch „TeamSpeek“ an einem anderen Client) reproduzierbar.
Die Web-Seite des Spieleanbieters (http://www.wow-europe.com/de/ bzw.: eu.logon.worldofwarcraft.com) ist von seinem Client aus erreichbar. Mein Sohn konnte auch schon seinen Account erstellen und sich dort anmelden. Lediglich der Login vom Spiel selbst schlägt unaufhörlich fehl.
Daraufhin habe ich die betreffende Support-Seite (http://faq.wow-europe.com/de/category.php?id=13) aufgerufen und in Erfahrung gebracht, dass für dieses Spiel die dort angegebenen Ports (tcp: 3724, 6112, 6881-6999, 8086, 8087, 9081, 9097 und 9100) benötigt werden oder hilfreich sind, die ich dan auch in SQUID frei gegeben; auch wenn´s ganz schön viele Ports sind. ... jedenfalls glaube ich, das ich das getan habe.

Dazu habe ich in der Datei /etc/squid/squid.conf im Abschnitt ACCESS CONTROLS die betreffenden Ports aus dem vorgegebenen Bereich (acl Safe_ports port 1025-65535 # unregistered ports) ausgenommen, was dann nunmehr wie folgt aussieht:

#Recommended minimum configuration:
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
### AENDERUNG v. 09.10.2005,15:00 -BEGIN
### ehem. Eintrag: acl Safe_ports port 1025-65535 #
unregistered ports
acl Safe_ports port 1025-2999 # unregistered ports
acl Safe_ports port 3001-3217 # 3000 für HBCI
acl Safe_ports port 3219-3723 # unregistered ports
acl Safe_ports port 3725-6111 # 3724 für WoW
acl Safe_ports port 6113-6880 # 6112 für WoW
acl Safe_ports port 7000-8079 # 6881-6999 für WoW
acl Safe_ports port 8081-8085 # 8080 für http
acl Safe_ports port 8088-9080 # 8086-8087 für WoW
acl Safe_ports port 9082-9089 # 9081 für WoW
acl Safe_ports port 9091-9096 # 9097 für WoW
acl Safe_ports port 9098 9099 # 9100 für WoW
acl Safe_ports port 9101-65535 # unregistered ports
### AENDERUNG v. 09.10.2005,15:00 -END
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
...
#Default:
# http_access [allow | deny] all
http_access allow all
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports
#
# We strongly recommend the following be uncommented to protect innocent
# web applications running on the proxy server who think the only
# one who can access services on "localhost" is a local user
#http_access deny to_localhost

acl our_networks src 192.168.100.0/24 #192.168.2.0/24
http_access allow our_networks
### Änderung 09.10.2005, 17:14 alle Einschränkungen aufgehoben: -BEGIN
#http_access allow localhost
http_access allow all
### Änderung 09.10.2005, 17:14 alle Einschränkungen aufgehoben: -END

# And finally deny all other access to this proxy
http_access deny all

Auch den Befehl
rcsquid reload
habe ich in der Konsole eingegeben, was SQUID mit einem akzeptablen „done“ anstandslos hinnahm. Die Überprüfung mit dem Befehl
netstat -nl
ergab dann diese Ausgabe, nach der m.E. die betreffenden ports frei gegeben sind , oder ?

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:6112 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6881 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:9090 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6882 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6883 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6884 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6885 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6886 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6887 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6888 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:10024 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:9097 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6889 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:10025 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6890 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6891 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:9100 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6892 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:3724 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6893 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6894 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6895 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6896 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6897 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6898 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6899 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8086 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:8087 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:631 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:9081 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:37435 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN
tcp 0 0 ::1:10025 :::* LISTEN
tcp 0 0 :::22 :::* LISTEN
tcp 0 0 ::1:25 :::* LISTEN

... aber dennoch mit demselben Ergebnis: Kein Anmelden möglich.

Weis einer Rat ???

Muss ich
die IP Durchreichen (Masquerading) ?
ist möglicher Weise WoW von Versatel gesperrt ?

Gruß

daiml
 
Hallo,

ich hab leider nicht so viel ahnung von Linux, aber ich kann dir mit Sicherheit sagen, das das mit Squid nicht geht, da das ja ein Proxy ist und fürs Surfen bestimmt ist und nicht fürs spielen. Du brauchst einen Router bzw. du must Masquerading (Iptabeles) anwenden. Wenn du "nur" einen Rechner haben willst der alle PC ins Netz bringen würde ich dir zu IPCOP raten. IPTabels Ist ebenfalls ein sehr schwieriges Thema, aber wie gesagt mit Squid kommst du da nicht weiter. Ich habe mal ein gutes Ebook gesehen für dieses Thema "Das Firewall Buch" Suse Press.

Gruss

Spedgrim
 
Hallo Spedgrim,

ich danke Dir für Deinen Hinweis.
Nach mehreren weiteren Lese-Marathons habe ich auch schon den Verdacht gehabt, dass ich dafür ein "masquerading" konfigurieren muss. Zumindest muss ich wohl einigen Rechnern einen direkten Zugang zum Internet ermöglichen.
Der Linux-Server soll nicht nur die lokalen Clients in´s InterNet bringen, sondern auch noch weitere "Samba-Dienste" zur Verfügung stellen.
Das mit dem Spiele-Zugang ist halt ein dringender "Herzenswunsch" meines Sohnes ... naja, kann man da nein sagen?

Ich weiß nur leider immer noch nicht, ob ich squid zusätzlich installieren darf / kann / soll / muss.

Ich danke Dir auf jeden Fall für Deinen Tip

Gruß daiml
 
Hallo,

natürlich darfst du squid installieren. Aber dieser Dienst ist halt ein Proxy hätte für dich den Vorteil, das du z.b. XXX Seiten für deine Sohn sperren kannst. Denke das ist der größte Vorteil in einem kleinen Netz vor allem wenn man Kinder hat. Im Prinzip, stellst du die Windows XP Clients so ein, dass sie alle HTTP anfragen Port 80 auf deinen Proxy weiterleiten. Alles andere wie z.b. das Spiel, hat andere Ports, du musst eigentlich nur deinem Server klar machen das er die weiterleitet und Maskiert. Denke der einfachste weg ist dir mal die SUSE Firewall anzukucken, glaub die hat eine Einstellung dafür, das sie einfach als Router fungiert. Die Firewall funktioniert mit IPTables, nur kannst du das hier besser einstellen, wenn du so wie ich dich noch nicht so gut mit Linux auskennst.

Gruss

Spedgrim
 
hallo,

das problem habe ich auch gerade.
wir haben in unserem büro einen linux 9.3 server laufen.
der geht über eine feste ip adresse über ein weiteres netzwerk (extern) nach aussen (anmerkung: mein büro, mein server....)
bis vor kurzem hatten wir den server über die firewall so konfiguriert, dass via masquerading sowohl WoW, als auch pop, smtp, imap etc ohne probleme möglich war.
vor drei wochen ist die externe netzwerkkarte abgerauscht und wollte ersetzt werden.
nach der neuinstallation einer anderen netzwerkkarte funktioniert nun leider das masquerading nicht mehr (internet geht auf jeden fall nach aussen, scheint über einen proxy zu laufen).

ich hab schon ziemlich viel rumprobiert (für meine verhältnisse, bin absoluter linux frischling), kriege das aber nicht eingestellt.
gibt es irgendwelche grundlegenden einstellung bezüglich masquerading/forwardng, die man noch festlegen muss?
für hilfe wäre ich dankbar.

merci,

emme
 
Noch eine kleine Anmerkung:
hendrix schrieb:
...
Code:
...
acl Safe_ports port 3725-6111   # 3724 für WoW
acl Safe_ports port 6113-6880   # 6112 für WoW
acl Safe_ports port 7000-8079   # 6881-6999 für WoW
...
...
Ähem, genau falsch herum...

Ich versuch mal das zu erklären: Eine wichtige Zeile ist etwas tiefer in der Config-Datei
Code:
# Deny requests to unknown ports
http_access deny !Safe_ports
Da steht eine doppelte Verneinung drinn: "Verbiete Zugriff über Ports die nicht in Safe_ports stehen" Somit muss man weiter oben die Ports angeben, die erlaub sind. Für das oben angefürte Zitat wäre das
Code:
acl Safe_ports port 3724 # fuer WoW
acl Safe_ports port 6112  # fuer WoW
acl Safe_ports port 6881-6999 # fuer WoW
Erkennen kann man das auch an der Zeile für den http Zugriff:
Code:
acl Safe_ports port 80 # http

Das mit der doppelten Verneinung ist kompliziert zu durchschauen, bringt aber Sicherheit im Betrieb.
Michael
 

framp

Moderator
Teammitglied
Das Problem kommt mir bekannt vor :roll:

Proxy bringt nichts fuer Spiele. Nur fuer ftp und http.
Socks kann u.U. was bringen. Haengt aber vom Spiel ab. Letztendlich habe ich folgenden Algorithmus entwickelt:

1) Herausfinden welche Ports ein Spiel benutzt
google und 'wow firewall ports' liefert z.B.

If you are using a firewall or router, be sure that port 6112, 3724, and 6881 through 6999 are open and forwarded to your computer and only your computer. You may need to refer to your firewall/router's documentation for instructions on opening ports and setting up port forwarding. Also, make sure that no other programs that use bandwidth are running while attempting to use the Blizzard Downloader.

2) Entweder eigene kleine ShellScripts schreiben mit denen selektiv die Ports fuer einen Rechner ein- und ausgeschaltet werden koennen oder

Code:
/usr/sbin/iptables $cmd FORWARD -p udp -i dsl0 -o nic0 -s 0/0 --sport 6100 -d $ip -j ACCEPT
/usr/sbin/iptables $cmd FORWARD -p udp -o dsl0 -i nic0 -d 0/0 --dport 6100 -s $ip -j ACCEPT
/usr/sbin/iptables $cmd FORWARD -p udp -i dsl0 -o nic0 -s 0/0 --sport 33333 -d $ip -j ACCEPT

Dabei ist $cmd entweder -I oder -D (insert/delete) und $ip die Ip des lokalen Clients.

3) die SuSEFW so erweitern, dass die Ports frei sind. Das sind sie dann allerdings immer.

# Format: space separated list of
# <source network>,<ip to forward to>,<protocol>,<port>[,redirect port,[destination ip]]
#
# Protocol must be either tcp or udp
#
# Examples: - "4.0.0.0/8,10.0.0.10,tcp,80" forward all tcp request on
# port 80 coming from the 4.0.0.0/8 network to the
# internal server 10.10.0.10
# - "4.0.0.0/8,10.0.0.10,tcp,80,81" forward all tcp request on
# port 80 coming from the 4.0.0.0/8 network to the
# internal server 10.10.0.10 on port 81
# - "200.200.200.0/24,10.0.0.10,tcp,80,81,202.202.202.202"
# the network 200.200.200.0/24 trying to access the
# address 202.202.202.202 on port 80 will be forwarded
# to the internal server 10.0.0.10 on port 81
#

also
Code:
FW_FORWARD_MASQ="0/0,192.168.47.11,tcp,6112 0/0,192.168.47.11,3724" usw

Das Problem ist, dass in der Antwort nicht klar ist, ob tcp oder udp. Ich habe einfach mal tcp eingesetzt.

In der regel kommt man aber nicht umhin mal tcpdump oder ethereal einzusetzen um im Detail zu sehen welche Ports involviert sind. :cry:
 
Hallo,

zunächst einmal DANKE für die Tips.

Ich hab´s jetzt ...
... und zwar habe ich die SuSEFireWall direkt in YaST eingestellt.
Dabei habe ich lediglich die Marker für
- "Masquerading"
- "IP-Weiterleitung"
aktiviert und
- die Ports (3724, 6112, etc) in der FireWall bei den erlaubten Ports eingetragen.

Jetzt läuft´s ... auch der Proxy (den ich jetzt an die "Bedürfnisse" meiner Kinder anpassen werde)

Gruß daiml
 

framp

Moderator
Teammitglied
hendrix schrieb:
Ich hab´s jetzt ...
... und zwar habe ich die SuSEFireWall direkt in YaST eingestellt.

Ja - es gibt zwei Methoden den FW zu konfigurieren. Entweder durch das GUI oder durch direkte Aenderungen SuSEFW.config Datei.

Die erste ist zu Anfang die einfachere - aber leider in bestimmten Situation nicht sehr durchschaubar. Ich bevorzuge das direkte Aendern in der Datei. Das laesst sich auch leichter im Forum beschreiben. Wenn ich hier sagen muesste: Im Panel sowieso gehe nach sowieso und gibt ein blablabla ... ist umstaendlich.

Aber fein wenn es jetzt tun. Ist aber permanent!
 
guzmamb6 schrieb:
Noch eine kleine Anmerkung:
hendrix schrieb:
...
Code:
...
acl Safe_ports port 3725-6111   # 3724 für WoW
acl Safe_ports port 6113-6880   # 6112 für WoW
acl Safe_ports port 7000-8079   # 6881-6999 für WoW
...
...
Ähem, genau falsch herum...
Da steht eine doppelte Verneinung drinn: "Verbiete Zugriff über Ports die nicht in Safe_ports stehen"

Danke,
das hatte ich tatasächlich vollkommen verpeilt. :oops:
Da ich aber zwischenzeitlich Linux neu installiert hatte (ja, inzwischen weiß ich auch, dass einige Konfigurationsänderungen an den IP-Adressen der Netzwerkkarten im Linux-Server durchaus ausgereicht hätten :cry: ) hatte ich mich zunächst für eine "Light"-Konfiguration der FireWall und Squid entschieden.
Im Klartext: ich habe in Squid gegenüber der Standard-Conf zunächst nicht viel geändert.

Danke für die Tips und Hilfe :p
 
Spedgrim schrieb:
@emme hast du dein Problem schon gelösst? Oder brauchst du noch eine Lösung?

Hallo Spedgrim

danke, wie Du in der vorigen Nachricht sehen kannst, habe ich bereits eine Lösung.
Abgesehen davon, dass das grundsätzliche Problem an einer falschen IP-Adressierung der Netzwerkkarten lag, ließ sich das Problem mit dem Port-Zugang sehr leicht (kann ich jedenfalls jetzt behaupten) über die FireWall-Konfiguration lösen.

Gruß daiml
 
Hallo Hendrix Ich habe das Gleiche Problem wie du jedoch benutze ich auch kein squid sondern nur die port weitereitung.

wäre es mglich mir einen auszug aus deiner iptables config mit den entsprechenden zeilen für World of Warcraft zur verfügung zu stellen damit ich die mit meiner vergleichen kann ???

für deine mühe danke ich

Gruß Fabian
 
Hallo rider200675,

sorry, aber ich habe nach einem Platten-Crash zwischenzeitlich Linux neu installieren müssen ...
... und habe mir mit Linux SuSE 10 reichlich viel Ärger ´rein gewürgt :evil:
Bin mit der Konfiguration von Servern (Mail~, Fax~, File~, Proxy~, etc.) noch immer nicht fertig. :cry:

sofern ich an meine damalige Konfiguration erinnern kann, habe ich lediglich die IP-Weiterschlatung im YAST aktiviert und Squid trotzdem benutzt... wobei Squid keinen Einfluss auf WOW genommen hat. Auch ohne diesen Proxy wurde bei IP-Weiterleitung die entsprechenden ports durchgereicht - allerdings müssen im Windows-Client (ich gehe ´mal davon aus, dass bei Dir ein solcher betrieben wird?) die Ports in der Firewall (bei Windows XP) freischalten.

Gruß daiml
 
So, ich hab jetzt mal den OFF-Topic abgetrennt und den Thread hier ins Firewall-Forum verschoben.

EDIT: Da ist der Link zu eurem OFF-Topic:

http://www.linux-club.de/viewtopic.php?t=53741&sid=618a1f7f720664f9fc084bdc254a25ba
 
Du müsstest jedenfalls das Masquerading aktivieren (WoW benutzt *viele* Highports > 1024), d. h. selektives Freigeben von einzelnen Ports wird wohl nicht zum erwünschten Erfolg führen.

Um trotzdem Dein Sicherheits / Cache Projekt mit Squid nicht ad adsurbum zu führen könntest Du (ebenfalls mit einer Option im SuSEfirewall2 Script /etc/sysconfig/SuSEfirewall2) die Ports 80 und 443 lokal auf dein Squid Port umleiten. Somit kann Dein Sohn durch Austragen des Proxys aus dem Browser, diesen nicht umgehen, da er so automatisch wieder zu squid zurückgeführt wird :)

Einfach mal so, um nen anderen Ansatz aufzuführen.
 
Oben