Ένας server... πολλές λειτουργίες!

Τεχνικές και μόνο Συζητήσεις για WEB hosting servers, Mail servers, DNS servers. Όχι αναζήτηση υπηρεσιών εδώ!

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
_Invisible_
Δημοσιεύσεις: 418
Εγγραφή: 16 Νοέμ 2006 16:47
Τοποθεσία: Greece

Ένας server... πολλές λειτουργίες!

Δημοσίευση από _Invisible_ » 04 Δεκ 2006 21:47

Γεια σας.

Ας πούμε ότι έχουμε τον Apache (Apache/2.2.0 (Win32) PHP/5.1.2) και θέλουμε να δώσουμε πρόσβαση σε κάποιον τρίτο (πχ έναν φίλο μας κλπ.). Κάνουμε έναν user κλπ κλπ... και όλα εντάξει. Υπάρχει κάτι που θα με κάνει να έχω το κεφάλι μου ήσυχο; Δηλαδή:

Έχουμε 2 Πισιά (από το pc lol), και έχουμε μία γραμμή DSL. Συνδέουμε και τα δύο στο Internet με την ίδια γραμμή και έχουμε 2 server ή τα συνδέουμε μεταξύ τους. Πχ όταν κάνουμε τον χρήστη Χ να μπορούμε να περιορίσουμε τα δικαιώματά του και να έχει δυνατότητα να κάνει συγκεκριμένα πράγματα όπως πχ μόνο file uploading (οk αυτό από ftp), και μερικές ακόμη δυνατότητες, όπως πχ να βάζει χρήστες στην db με ΠΕΡΙΟΡΙΣΜΕΝΑ δικαιώματα και άλλα.

Πώς γίνεται να κάνω αυτό το πράγμα με τον Apache??? Πχ, ok τον πετάμε στο internet και τον αφήνουμε εκεί και ο κόσμος μπαίνει, βλέπει σελίδες κλπ κλπ. Αλλά αν ο "πελάτης" βάλει ένα αρχείο που ο μόνος σκοπός του είναι να μολύνει το pc μας (server, ok);; Δεν πρέπει να έχουμε και ένα anti-virus που θα ελέγχει συνεχώς (real-time) τον φάκελο εκείνο; Αλλά να ελέγχει τον φάκελο με έναν τρόπο που να καταλαβαίνει τι μπορεί να βλάψει και τι όχι το PC.

Υπάρχουν Apache Webservers πολύ καλά κονφιγκουραρισμένοι (από το configure) και έχουν πολλούς περιορισμούς. Δηλαδή τον φάκελο htdocs τον έχουν αλλάξει σε κάτι άλλο (καλά αυτό ξέρω πως γίνεται -- μέσα από το http.conf) και έχουν ορίσει γενικά στον server τους πολύ καλούς και σωτήριους περιορισμούς.

Θέλω να μου πείτε πως γίνεται να περιορίσω και την PHP πάρα πολύ (όχι μόνο να βγάλω την εμφάνιση σφαλμάτων) ώστε να μην στέλνει στοιχεία στους browsers των χρηστών.

Πχ αν κάποιος "πελάτης" βάλει ένα αρχείο PHP (ναι θα αφήσω να ανεβαίνουν και PHP), βάλει ένα print_r($_SERVER) και μάθει τα πάντα; Τρελοί είμαστε; Πώς μπορούμε να κρύψουμε πληροφορίες που είναι ζωτικής σημασίας;

Ευχαριστώ για την βοήθειά σας!!

Άβαταρ μέλους
tix-3-
Δημοσιεύσεις: 827
Εγγραφή: 25 Μαρ 2004 05:12
Τοποθεσία: Θεσσαλονικη-Καβαλα-βεροια(το τριγωνο της καταρας)
Επικοινωνία:

Ένας server... πολλές λειτουργίες!

Δημοσίευση από tix-3- » 04 Δεκ 2006 23:35

1ον αυτες οι ερωτησεις σηκωνουν ΑΠΕΙΡΟ διαβασμα και ακομα πιο πολυ φαντασια (γιατι για να προσφερεις προστασια θελει φαντασια για το τι θα κανει ο αλλος που θελει να σου κανει ζημια
1η παρατηρηση (προσωπικη μου αποψη) Αν θες να στησεις ασφαλες php-mysql-apache θα προτεινα να ασχοληθεις με Linux.Εμενα τουλαχιστον μου καθεται πιο καλα.
Το να δωσεις περιορισμενα δικαιωματα σε καποιον στην mysql ειναι απλό.Google for user priviledges mysql.
Επειδη δεν μπορεσα να καταλαβω.Οταν ενοεις πελατη ενοεις καποιο φίλο η κανονικό πελατή;
Το να κανει αυτο που ειπες με την PHP δεν ειναι και κατι τοσο τρομακτικο οταν θα μπορει να σηκωσει ενα php shell script και να κανει τι θελει με τον user που τρεχει ο apache (o οποιος αν ειναι και αντμιν γμτα) οποτε το exec () αστο να παει :cry: ¨.
Το να κρυψεις καποιες πληροφοριες ειναι απλο.Απλα αν ειναι κανονικος πελατης και οχι καποιος φιλος pen-tester o πιθανοτερο ειναι να παραπονεθει.

p.s. Γενικοτερα για production server δεν θα προτεινα windows με apache.Πειτε με κομπλεξικο αλλα με φοβιζει παρα πολυ...

Άβαταρ μέλους
_Invisible_
Δημοσιεύσεις: 418
Εγγραφή: 16 Νοέμ 2006 16:47
Τοποθεσία: Greece

Ένας server... πολλές λειτουργίες!

Δημοσίευση από _Invisible_ » 05 Δεκ 2006 00:34

Τουλάχιστον χαίρομαι που απάντησες... Τέσπα ξέρω ότι ο server σε Linux θα ήταν πιο ασφαλές αλλά το θέμα είναι ότι θέλω να βάλω ένα παιχνίδι μέσα σε ένα directory του server μου (πχ C:\apache2triad\htdocs\game) και από εκεί να τρέχει στο σύστημά μου σαν διεργασία, σαν ότι θέλει τελωσπάντων κλπ κλπ.

Το θέμα είναι ότι δεν ξέρω πως θα γίνεται η όλη ιστορία με το παιχνίδι αυτό και δεν ξέρω αν θα έχει κακόβουλο κώδικα. Τέσπα, δεν είναι πελάτες, απλά είναι κάτι τρελόπαιδα που θα βάλουμε παιχνίδια και θα το τρέχουν και θα παίζουν αυτοί online.

Δεν ξέρω ούτε πως θα δουλεύει και δεν ξέρω καν γιατί μου ζητάνε Remote Desktop Access για να παίξουν το παιχνίδι online. Τέσπα μπερδεύτηκα πολύ με αυτή την ιστορία και πιστεύω ότι δεν αξίζει το ρίσκο να βάλω μέσα στο pc μου την βλακεία του καθενός που έκανε ο κάθε τυχαίος σε C++.

Άσε που έχω και dynamic ip. Ευχαριστώ παιδιά για την βοήθεια, να 'στε καλά.

(μπορεί μόνο ο tix-3- να απάντησε, αλλά βοήθησαν και άλλα άτομα -- το λέω για να μην νομίζουν ότι τους παρέλειψα). Thanks dudes!

Ούτως η άλλως tix-3- δεν ασχολούμαι και πολύ με Linux...

Άβαταρ μέλους
tix-3-
Δημοσιεύσεις: 827
Εγγραφή: 25 Μαρ 2004 05:12
Τοποθεσία: Θεσσαλονικη-Καβαλα-βεροια(το τριγωνο της καταρας)
Επικοινωνία:

Ένας server... πολλές λειτουργίες!

Δημοσίευση από tix-3- » 05 Δεκ 2006 00:41

το παιχνιδι να τρεχει σαν τι;
το executable απο τον apache;
Περιεργο μου ακουγεται...
Πιο λογικο ειναι ενα ζιπ και οποιος θελει το κατεβαζει.
Δινεις δικαιωματα σε ενα φακελο αφηνεις και τον apache να κανει browse σε εκεινο τον φακελο option +Indexes και τελος :lol:

Άβαταρ μέλους
dimsis
Reporter
Δημοσιεύσεις: 7994
Εγγραφή: 25 Ιούλ 2001 03:00

Ένας server... πολλές λειτουργίες!

Δημοσίευση από dimsis » 05 Δεκ 2006 09:16

Α ρε αυτός ο Lineage ][ server έχει βγάλει πολλούς developers τελευταία! :p

ΑΝ "πέφτω μέσα":
http://forum.ragezone.com/lineage-2-l2j ... 70987.html

Αρχικά να διευκρινίσω ότι πρόκειται για emulated server όποτε θεωρείται νόμιμο!

-Κατεβαστέ τα παρακάτω αρχεία

1) Ο SERVER C4
http://l2j.sourceforge.net/nightly/

2) TO DATAPACK
http://home.comcast.net/~mastermind007/Nightly.html

3) Αν δεν έχετε εγκατεστημένη java στο pc σας χρειάζεται να κατεβάσετε και το παρακάτω αρχείο

Java
- Install Java:
http://www.java.com/en/download/index.jsp

4)Θα χρειαστείτε την Mysql 5.0 που μπορείτε να κατεβάσετε εδώ http://dev.mysql.com/downloads/

5)Επίσης απαραίτητο εργαλείο για να μπορείτε να ελέγχετε την βάση δεδομένων σας είναι το Navicat που μπορείτε να κατεβάσετε απο εδώ http://www.navicat.com/download.html

6)Αν θέλετε μπορείτε να κατεβάσετε την EasyPhp που περιλαμβάνει τον Apache Server και την Mysql απο εδώ http://www.easyphp.org/telechargements.php3
ΠΡΟΣΟΧΗ!!! Σε αυτή τη περίπτωση δεν χρειάζεται να κάνετε τα βήματα (4) και (5).

7) Αφού έχετε εγκαταστήσει τα απαραίτητα παραπάνω προγράμματα κάνετε extract σε ένα φάκελο τον server π.χ. C:\C4_SERVER.

Επόμενο βήμα είναι η αποσυμπίεση του Datapack μέσα στον φάκελο c:\C4_SERVER\gameserver
Θα δείτε ένα μήνυμα επιβεβαίωσης για την αντιγραφή, αυτό σημαίνει πως όλα πάνε καλά...

9) Λοιπόν τώρα θα πρέπει να δημιουργήσετε μια βάση δεδομένων στην Mysql και να την ονομάσετε l2jdb

10) Αφου δημιουργήσετε την βάση δεδομένων θα πρέπει να ανοίξετε τον φάκελο c:\C4_SERVER\gameserver\tools και να εντοπίσετε το αρχείο database_installer.bat
Στο αρχείο αυτό καθορίστε τις παρακάτω παραμέτρους :

REM ############################################
REM MYSQL BIN PATH
set mysqlBinPath=C:\Program Files\MySQL\MySQL Server 4.1\bin <<<καθορίστε εδώ που βρίσκεται η βάση

REM LOGINSERVER
set lsuser=root
set lspass= <<<<βαλτε εδώ το password της βάσης δεδομένων
set lsdb=l2jdb
set lshost=localhost

REM GAMESERVER
set gsuser=root
set gspass= <<<<βαλτε εδώ το password της βάσης δεδομένων
set gsdb=l2jdb
set gshost=localhost
REM ############################################


Αφού έχουν γίνει όλα τα παραπάνω τρέξτε το αρχείο database_installer.bat
Στην πρώτη ερώτηση εγκαθίσταται ο Login Server και στην επόμενη ερώτηση εγκαθίσταται η πλήρης βάση δεδομένων σας για το παιχνίδι.

ΠΡΟΣΟΧΗ!!! Μην εγκαθιστάτε τα experimental updates γιατί θα απουσιάζουν τα mobs απο τις C4 περιοχές. (Αυτή είναι η 3 ερώτηση!)

11) Το βήμα αυτό είναι ένα απο τα σημαντικότερα έτσι ώστε να δημιουργήσουμε τον login server που είναι υπεύθυνος για τα Account. Πρώτα ανοίγουμε το αρχείο c:\C4_SERVER\login\config\loginserver.properties και κάνουμε τις απαραίτητες αλλαγές όπως φαίνεται πιο κάτω....

# This is transmitted to the clients connecting from an external network, so it has to be a public IP or resolvable hostname
ExternalHostname=82.28.82.28 <<<εδώ βάζω την ip στην οποία θα συνδέονται άτομα απο το διαδίκτυο

# This is transmitted to the client from the same network, so it has to be a local IP or resolvable hostname
InternalHostname=192.168.1.100 <<<εδώ βάζω την ip του υπολογιστή τοπικά(στο δίκτυο)

# Bind ip of the loginserver, use * to bind on all available IPs
LoginserverHostname=*
LoginserverPort=2106
LoginTryBeforeBan=20

# The port on which login will listen for GameServers
LoginPort=9014

# If set to true any GameServer can register on your login's free slots
AcceptNewGameServer = False

# If false, the licence (after the login) will not be shown
ShowLicence = True

# Database info
Driver=com.mysql.jdbc.Driver
#Driver=org.hsqldb.jdbcDriver
#Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
URL=jdbc:mysql://localhost/l2jdb
#URL=jdbc:hsqldb:hsql://localhost/l2jdb
#URL=jdbc:sqlserver://localhost/database=l2jdb/user=sa/password=
Login=root
Password= <<<<<<<βαλτε εδώ το password της βάσης δεδομένων
MaximumDbConnections=10


Αφού αποθηκεύσω τις ρυθμίσεις σε αυτό το αρχείο, εντοπίζω το αρχείο c:\C4_SERVER\login\RegisterGameServer.bat
Το τρέχω ακολουθώντας τις οδηγίες στην οθόνη και το αρχείο που προκείπτει το μετονομάζω σε hexid.txt και το τοποθετώ στον φάκελο c:\C4_SERVER\gameserver\config\

Ελέγχω την HEXID του αρχείου αυτού hexid.txt με την hexid που αναγράφεται στον πίνακα gameservers της βάσης δεδομένων μου.

12) Τελευταίο βήμα είναι η ρίθμιση παραμέτρων του gameserver. Οπότε εντοπίζω αυτή την φορά το αρχείο c:\C4_SERVER\gameserver\config\server.properties και αλλάζω τις παραμέτρους όπως φαίνεται παρακάτω :


# This is transmitted to the clients connecting from an external network, so it has to be a public IP or resolvable hostname
# If this ip is resolvable by Login just leave *
ExternalHostname=82.28.82.28 <<<εξωτερική ip όπως και του login server

# This is transmitted to the client from the same network, so it has to be a local IP or resolvable hostname
# If this ip is resolvable by Login just leave *
InternalHostname=192.168.0.2 <<<εσωτερική ip όπως και του login server

# Bind ip of the loginserver, use * to bind on all available IPs
LoginserverHostname=*
LoginserverPort=2106
LoginTryBeforeBan=20

# The Loginserver host and port
LoginPort=9014
LoginHost=127.0.0.1

# This is the server id that the gameserver will request (i.e. 0 is Bartz)
RequestServerID = 0
# If set to true, the login will give an other id to the server if the requested id is allready reserved
AcceptAlternateID = True

# Database info
Driver=com.mysql.jdbc.Driver
#Driver=org.hsqldb.jdbcDriver
#Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
URL=jdbc:mysql://localhost/l2jdb
#URL=jdbc:hsqldb:hsql://localhost/l2jdb
#URL=jdbc:sqlserver://localhost/database=l2jdb/user=sa/password=
Login=root
Password= <<< <<<<βαλτε εδώ το password της βάσης δεδομένων
MaximumDbConnections=10

Αν σώσετε και αυτό το αρχείο είσαστε έτοιμοι να ξεκινήσετε τον Lineage Server σας.

13) Το ποιό εύκολο βήμα και κρίσιμο είναι αυτό. Για να δείτε αν όλα πήγαν καλά τρέξτε πρώτα το αρχείο c:\C4_SERVER\login\startLoginServer.bat
και έπειτα το αρχείο αυτό c:\C4_SERVER\gameserver\startGameServer.bat


14) Αν αντιμετωπίζετε προβλήματα σας παρακαλώ γράψτε σε αυτό το forum και όχι στέλνωντας pm και θα προσπαθήσω να σας βοηθήσω. Σύντομα θα προσθέσω κάποια εικόνα του gameserver και του loginserver σε λειτουργία για να δείτε αν ταιριάζει με αυτή που βλέπετε εσείς

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

Ένας server... πολλές λειτουργίες!

Δημοσίευση από ThyClub » 05 Δεκ 2006 15:16

@dimsis

δεν είναι νόμιμο. Τους τρέχει τώρα τελευταία η NCSOFT γενικά και τους L2J και τους Official based. Οι λόγοι πολλοί (trademarks κτλ κτλ)

Άβαταρ μέλους
_Invisible_
Δημοσιεύσεις: 418
Εγγραφή: 16 Νοέμ 2006 16:47
Τοποθεσία: Greece

Ένας server... πολλές λειτουργίες!

Δημοσίευση από _Invisible_ » 05 Δεκ 2006 15:21

Φίλοι μου σας ευχαριστώ για τις απαντήσεις σας.

Είχα πει:
Τέσπα μπερδεύτηκα πολύ με αυτή την ιστορία και πιστεύω ότι δεν αξίζει το ρίσκο να βάλω μέσα στο pc μου την βλακεία του καθενός που έκανε ο κάθε τυχαίος σε C++.
που αυτό σημαίνει ότι δεν πρόκειται να ασχοληθώ άλλο με αυτή την ιστορία. Αυτό δεν σημαίνει ότι οι συμβουλές σας είναι πολύ σημαντικές και χρειάζονται. Αυτά που λες dimsis θα τα δοκιμάσω κάποια στιγμή που έχω χρόνο έτσι για να περάσει και η ώρα.

Τώρα είτε είναι νόμιμο, είτε όχι, τελικά δεν θα γίνει.

Ευχαριστώ πάρα πολύ για τις απαντήσεις σας φίλοι μου!

leontwo
Δημοσιεύσεις: 5
Εγγραφή: 17 Ιούλ 2007 07:34
Τοποθεσία: giannitsa

Ένας server... πολλές λειτουργίες!

Δημοσίευση από leontwo » 18 Ιούλ 2007 14:43

οταν ξεζιπαρο το database μεσα στο game server δεν μου λει tpt αλλα παι καλα μεχρι εκι μετα πεσμου οταν λεs βαση δεδομενον πιο φακελο ενοιs ακριβοs ?

Άβαταρ μέλους
Stathis
Photography Moderator
Δημοσιεύσεις: 4841
Εγγραφή: 23 Απρ 2005 21:03
Τοποθεσία: http://127.0.0.0
Επικοινωνία:

Ένας server... πολλές λειτουργίες!

Δημοσίευση από Stathis » 18 Ιούλ 2007 16:04

Η βαση δεδομενων δεν είναι φακελος ! Εφ'οσων την δημιουργησεις απο το phpmyadmin , θα μπορείς να τη διαχειρίζεσαι και απο εκεί !

leontwo
Δημοσιεύσεις: 5
Εγγραφή: 17 Ιούλ 2007 07:34
Τοποθεσία: giannitsa

Ένας server... πολλές λειτουργίες!

Δημοσίευση από leontwo » 19 Ιούλ 2007 05:01

man efxaristo alla anigo navicat ke mysql ke den mou kani conexion kapia gnomi sto navicat mou lei can conexion to mysql server on localhost(10061) ti ftei ama xeris tpt pesmou

Άβαταρ μέλους
tix-3-
Δημοσιεύσεις: 827
Εγγραφή: 25 Μαρ 2004 05:12
Τοποθεσία: Θεσσαλονικη-Καβαλα-βεροια(το τριγωνο της καταρας)
Επικοινωνία:

Ένας server... πολλές λειτουργίες!

Δημοσίευση από tix-3- » 19 Ιούλ 2007 05:15

πρεπει να ξεκινησεις την Mysql για να μπορει να κανει connect
Αν δεν υπήρχανε οι κνίτες κι'η ηρωίνη...

Απάντηση

Επιστροφή στο “Apache, IIS, DNS Servers”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες