Page 1 of 1

Αλλαγή ονομασίας φακέλου admin & vQmod [MOD]

Posted: Thu Jan 17, 2013 2:18 am
by People's Code
Όποιος χρησιμοποιεί vQmod και επιθυμεί για λόγους καλύτερης ασφάλειας να αλλάξει την αρχική ονομασία του φακέλου admin σε κάτι διαφορετικό και λιγότερο προβλέψιμο πχ diaxirisi101, είναι αναγκασμένος να κάνει search and replace τη λέξη “admin” με την αλλαγμένη ονομασία σε κάθε καινούργιο αρχείο vQmod που προσθέτει ...

Αυτό είναι αφενός χρονοβόρο και αφετέρου ενδέχεται να δημιουργήσει προβλήματα αν για παράδειγμα γίνει κατά λάθος replace σε μία λέξη admin που δεν ανήκει σε path αρχείου, άλλα είναι μέσα στο κώδικα που τροποποιεί το vQmod.

Με το παρακάτω πανεύκολο mod μπορούμε να αλλάξουμε την ονομασία του φακέλου admin χωρίς να χρειαστεί να πειράξουμε τα αρχεία xml των vQmods που προσθέτουμε. Οι αλλαγές θα πραγματοποιούνται αυτόματα από το ίδιο το vQmod και θα καταχωρούνται στο vqmod.cache. Αυτό έχει δύο πλεονεκτήματα.
1. Γλιτώνουμε χρόνο και πιθανά σφάλματα κατά το replace.
2. Τα αρχεία xml παραμένουν ανέπαφα, έτσι διατηρούν τη φορητότητα τους από μία εγκατάσταση Opencart σε μία άλλη.

Τι πρέπει να κάνουμε:

1. Αν δεν το έχουμε κάνει ήδη, εγκαθιστούμε κανονικά το τελευταίο vQmod v2.2.2 χωρίς να αλλάξουμε ακόμη την ονομασία του φακέλου admin.

2. Στο αρχείο config.php όπου υπάρχει με κόκκινα γράμματα admin, το αλλάζουμε με τη νέα ονομασία που θέλουμε να έχει ο φάκελος admin.
define('HTTP_ADMIN', 'http://www.mysite.gr/admin/');

3. Στο αρχείο admin/config.php κάνουμε ακριβώς το ίδιο και στις ακόλουθες γραμμές
define('HTTP_SERVER', 'http://www.mysite.gr/admin/');
define('HTTPS_SERVER', 'http://www.mysite.gr/admin/');
define('DIR_APPLICATION', '/home/myusername/public_html/mysite/admin/');
define('DIR_LANGUAGE', '/home/myusername/public_html/mysite/admin/language/');
define('DIR_TEMPLATE', '/home/myusername/public_html/mysite/admin/view/template/');


4. Μετονομάζουμε και το φάκελο admin στη νέα ονομασία

5. Στο αρχείο vqmod/vqmod.php αντικαθιστούμε τη γραμμή 612

Code: Select all

$fileToMod = $file->getAttribute('name');
Με αυτή:

Code: Select all

$fileToMod = preg_replace('/admin/', 'nea-onomasia', $file->getAttribute('name'), 1);
(Αντικαθιστούμε τη λέξη nea-onomasia με τη νέα ονομασία του φακέλου admin.)

6. Διαγράφουμε τα αρχεία του φακέλου vqmod/vqcache
7. Διαγράφουμε το αρχείο vqmod/mods.cache (οι αλλαγές των paths με τη νέα ονομασία του admin θα καταχωρηθούν μόνο εδώ!)

Πλέον μπορούμε να κάνουμε login στο admin χρησιμοποιόντας στο URL τη νέα ονομασία
πχ http://www.mydomain.gr/diaxiristis101/
... και να προσθέτουμε νέα vqmods χωρίς να κάνουμε καμία τροποποίηση στα αρχεία xml ;)

Re: Αλλαγή ονομασίας φακέλου admin & vQmod [MOD]

Posted: Sun Oct 27, 2013 11:38 pm
by Louis7777
Έχω την έκδοση 1.5.6 του opencart και την 2.4.1 του vQmod.

Μπορείς να δώσεις τα βήματα για την τελευταία έκδοση επειδή κάποια πράγματα μάλλον έχουν αλλάξει; (π.χ. δεν βλέπω πουθενά το 'HTTP_ADMIN')

Re: Αλλαγή ονομασίας φακέλου admin & vQmod [MOD]

Posted: Mon Oct 28, 2013 11:21 am
by People's Code
Το παραπάνω mod είναι για vQmod έως 2.2.2. Από το vQmod 2.3.0 και άνω, υπάρχει ενσωματωμένη η δυνατότητα να αναγνωρίζει αλλαγή ονόματος του admin.

Η νέα διαδικασία:
Μετονομάζεις το φάκελο admin σε κάτι άλλο λγότερο προβλέψιμο πχ d1ax1r1s1

Για το vQmod 2.3.0 έως το τρέχον vQmod 2.4.1, στο αρχείο vqmod/pathReplaces.php, ανάμεσα από τα:

Code: Select all

// START REPLACES //

// END REPLACES //
Προσθέτεις ανάμεσα το παρακάτω, όπου d1ax1r1s1 είναι η νέα ονομασία του φακέλου admin

Code: Select all

// START REPLACES //
$replaces[] = array('~^admin\b~', 'd1ax1r1s1');
// END REPLACES //
Ανάλογα με την έκδοση του Opencart που έχεις, ανοίγεις τα αρχεία config.php και (πρώην) admin/config.php έως την 1.5.4.1 ή μόνο το (πρώην) admin/config.php για τις εκδόσεις 1.5.5.1 και άνω. Σε όποιο path υπάρχει η λέξη admin το αλλάζεις με τη νέα ονομασία του φακέλλου admin πχ d1ax1r1s1.

Re: Αλλαγή ονομασίας φακέλου admin & vQmod [MOD]

Posted: Thu Nov 07, 2013 10:18 pm
by miltos
Καταρχάς να ευχαριστήσω για ακόμη ένα πολύ χρήσιμο post :)

Επιτρέψτε μου όμως να παρουσιάσω και μια διαφορετική αποψη.

Προς αποφυγή πιθανών προβλημάτων συμβατοτητας/αναβαθμίσεων, ενώ η ασφάλεια του site με απασχολεί πολύ, έχω επιλέξει να μην αλλάζω το όνομα του φακέλου admin. Απλώς επιλέγω πολύ δυνατό κωδικό.

Πιστεύω οτι με ένα κωδικό τουλαχιστον 12ψήφιο, 'αρκετά' random(οχι λέξεις, φράσεις κτλ) με χρήση πεζών, κεφαλαίων, αριθμών και συμβόλων υπάρχει αρκετή ασφάλεια(στο συγκεκριμένο θέμα) χωρίς ένα σωρό αλλαγές.

Ήδη για κάθε e-shop που κάνω σε OpenCart, κάνω πολλά mods, alterations και hacks έτσι ώστε να το φέρω στα μέτρα του πελάτη. Για κάθε e-shop κρατάω αρχείο με σημειώσεις για τις αλλαγές που έκανα, έτσι ώστε να μην τις ξεχνάω. Δεν ήθελα να προσθέσω μια ακόμη λίστα με όλες τις αλλαγές που θα επέφερε η αλλάγη ονόματος του φακέλου admin.

Είχα προσπαθήσει να αλλάξω το ονομα του φακέλου (κατόπιν και της προτροπής από το official documentation) αλλά τελικά αποφάσισα πως μια τέτοια αλλαγή μάλλον περισσότερα προβλήματα θα δημιουργήσει παρά θα λύσει... :-\

Re: Αλλαγή ονομασίας φακέλου admin & vQmod [MOD]

Posted: Wed Nov 13, 2013 3:46 pm
by People's Code
Δεν ήθελα να προσθέσω μια ακόμη λίστα με όλες τις αλλαγές που θα επέφερε η αλλάγη ονόματος του φακέλου admin.
Η αλλαγή ονομασίας του admin είναι μία διαδικασία που δεν παίρνει πάνω από ένα λεπτό μαζί με τις αλλαγές στα αρχεία config και στο pathReplaces.php και δεν επηρεάζει τίποτε άλλο.