Τα παρακάτω αφορούν χρήση ενός Debian server από άλλο υπολογιστή (απομακρυσμένα).
Απομακρυσμένη χρήση Debian με ασφάλεια και σωστά ελληνικά
(όταν κάνουμε SSH σε Debian με χρήση δημόσιου/ιδιωτικού κλειδιού)
Ακολούθησα αυτό τον πολύ καλό οδηγό http://www.debuntu.org/ssh-key-based-authentication για να ρυθμίσω τον Debian server μου, ώστε να μπορέσω να τον χρησιμοποιώ με ασφάλεια από απόσταση.
Ως client χρησιμοποιήθηκε το προγραμμα Putty στα Windows. Τόσο ο server όσο και το Putty ήταν ρυθμισμένα σε UTF-8.
Αφού έγιναν οι κατάλληλες ρυθμίσεις τόσο στον server όσο και στο PuTTY έγινε επιτυχημένη σύνδεση και η λειτουργία με τον server ήταν πλέον "σαν να είμουν εκεί".
Κάποια στιγμή ήθελα να επεξεργαστώ ένα αρχείο και τότε διαπίστωσα το πρόβλημα.
ΠΡΟΒΛΗΜΑ: Τα ελληνικά δεν εμφανιζόνται σωστά, ούτε στο nano (εμφανίζονται περίπου οι μισοί ελληνικοί χαρακτήρες), ούτε στο vi (εμφανίζονται σε στυλ \xbf\xbc κλπ). Παρόλα αυτά όταν κάνουμε cat σε κάποιο αρχείο που περιέχει ελληνικά ή όταν το ανοίγουμε με ed, το αρχείο
εμφανίζεται κανονικά.
Η αναζήτηση στο google για πιθανά προβλήματα του nano, vi, debian, openssh, ncurses σχετικά με την κωδικοποίηση σε UTF8, έδειξε ότι πράγματι υπήρχαν σχετικά προβλήματα σε παλαιότερες εκδόσεις, αλλά όλα τα παραπάνω έχουν ήδη (από το 2006 περίπου) ενσωματώσει το UTF8 και δεν υπήρχε λόγος να πιστεύω ότι θα βρω τη λύση σε κάποιο από αυτά.
Επίσης άκουσα και την πρόταση του #debian.gr (irc.freenode.net) να δοκιμάσω από άλλο client εκτός Windows (τόσα που τραβάνε οι χρήστες Windows έχουν κάνει κλισέ αυτές τις προτάσεις), δοκίμασα σε Slax live CD (με PuTTY και κονσόλα ssh) χωρίς επιτυχία.
Επίσης έπαιξα αρκετά και με τις μεταβλητές περιβάλλοντος LANG, LANGUAGE, LC_ALL και έψαξα και για αυτές αρκετά στο Internet, μέχρι που τελικά βρήκα αναφορές για προβλήματα με την σωστή απεικόνιση UTF8 μέσω SSH καθώς και ότι χρησιμοποιούνται κάποια κόλπα για να περάσουν μεταβλητές περιβάλλοντος μέσω SSH και αυτό γίνεται μόνο όταν ο ssh server έχει στο αρχείο ρυθμίσεων usePAM=yes κάτι που ο οδηγός που ανέφερα στην αρχή μας πρότεινε να το έχουμε usePAM=no.
ΛΥΣΗ: για σωστά ελληνικά, στο αρχείο ρυθμίσεων του openssh server, φροντίζουμε να έχει usePAM=yes
Αν θέλετε να μάθετε περισσότερα για το PAM δείτε και αυτό http://aplawrence.com/Basics/understandingpam.html
Επίσης δείτε το http://jean-christophe.dubacq.fr/post/Openssh-and-the-transmission-of-the-locale-setting
Βαγγέλης Σκαρμούτσος