Schrift
[thread]11172[/thread]

MySql connect aus bestimmte IP. Wie ?



<< >> 8 Einträge, 1 Seite
Gast Gast
 2008-01-23 10:56
#105038 #105038
Hallo,

habe bis her kein Lösung gefunden, auch über Suchmaschienen...

Allso zur Frage: auf meinem Server sind mehrere IP eingebunden.
Es ist weiter ein MySql Datenbank auf zweitem Server, zu dem ich von ersten die Verbindung aufbauen möchte. Kein Problem, wenn ich in MySql Datenbank den User mit "Egal welche Hosts %" eingerichtet hätte. Jedoch das ist aus Sichercheitsgrunden nicht gut. Und wenn ich mit use DBI eine Verbindung setze, kommt der Perl aus nicht gewünschte IP die Verbindung zu erstellen.

allso em0 hat 192.168.1.1, 192.168.1.2, 192.168.1.3, 192.168.1.4, 192.168.1.5
und ich soll nur aus 192.168.1.1 die Verbindung stellen.

Kann jemand was zu empfehlen ?

Danke!
Gruß
Alexander
GwenDragon
 2008-01-23 12:22
#105039 #105039
User since
2005-01-17
14748 Artikel
Admin1
[Homepage]
user image
Quote
Es ist weiter ein MySql Datenbank auf zweitem Server, zu dem ich von ersten die Verbindung aufbauen möchte

In den Zugangsberechtigungen des SQL-Servers muss die IP des ersten Servers stehen, also 192.168.1.1
Gast Gast
 2008-01-23 12:27
#105040 #105040
Ist selbstverständlich klahr, doch der Perl script kommt nicht aus 192.168.1.1 zu verbinden, jedoch aus ihm gewünschten IP, z.B 192.168.1.5
Und wie kann ich Zuordnen dem Perl, dass der nur 192.168.1.1 verwendnen soll, das ist unklahr...
nepos
 2008-01-23 13:12
#105044 #105044
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hm, das ist eigentlich Sache des Kernels. Der entscheidet normal, welche IP als Quelle genommen wird.

Hab ich das richtig verstanden, dass Server A zwar mehrere IPs hat, du zu Server B (MySQL) nur von 192.168.1.1 aus connecten lassen willst?
Wo wäre das Problem, wenn du connects von 192.168.1-5 zulassen würdest?
Gast Gast
 2008-01-23 13:44
#105047 #105047
Problem ist in dem, dass der Server öffentliche IP hat. Allso nicht 192.168.0.0/24 Netz, sondern richtige IPs.

Ja, das liegt irgend wo in dem Kernel. Aber das kann irgend wie einfach ändern. Ich habe FreeBSD. So mit auch über Perl einstellungen, oder DBI... Villeicht schon jemenad gemacht. Wie gesagt, über Suchmaschienen , hab ich nicht´s gefunden.
nepos
 2008-01-23 14:55
#105057 #105057
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Ja, aber dein DB-Server hat ja sicherlich eine nicht-öffentliche IP oder? Der soll ja eigentlich nicht aus dem Internet zugänglich sein?!
Wenn ja, dann muss dein Server ja auch eine IP im internen Netz haben und die wird dann ja für die Datenbank-Connects benutzt.
Verstehe dein Problem immer noch nicht so 100%.
Gast Gast
 2008-01-23 15:08
#105059 #105059
die 192.168.... sind Beispiel IPs. Datenbank hat zur Zeit öffentliche IP Adresse. Dem Perl aus Client-Rechnern möchte ich zuordnen sein Client-IP, über welche er Verbindung mit dem MySql Server baut.
Gast Gast
 2008-01-25 12:07
#105145 #105145
Wie fast es immer passiert, gefunden hat der, wer das sucht.

1. erstellen /etc/my.cnf (auf dem Rechner wo PERL Script ist) mit Kontent:
Code: (dl )
1
2
3
4
5
6
[client]
host={..IP..}

[mysqld]
host={..IP..}
port=3306


2. In dem Script
Code: (dl )
1
2
my $dsn = "dbi:mysql:$P_BASE;mysql_read_default_file=/etc/my.cnf;host=$MysqlHOST";
my $dbh = DBI->connect($dsn, $MysqlUSER, $MysqlPAWD, {RaiseError => 1}) or error ($DBI::errstr);


Und los gehts!

PS: Rechner herunterfahern ist erforderlich, falls dies nicht hilft. Weil der PERL macht irgendwie inzwischen eine Cache, wo die IP's und Hosts gespeichert sind. Allso bei mir funktioniert so was nun.

Gruss aus Schwedt/Oder
Alexander
<< >> 8 Einträge, 1 Seite



View all threads created 2008-01-23 10:56.