Il est assez facile de «récupérer» (c'est-à-dire dessiner localement) une application linux exécutée à distance: si je me connecte ssh -Y
à la machine distante et que j'exécute une application, cette application apparaîtra sûrement assez sur mon bureau local.
Si, cependant, pendant que je suis ssh'ed sur la machine distante, je le fais su
à un autre utilisateur, je ne peux pas transférer l'application X sur ma machine locale. Ça dit wrong authentication
.
Je ne sais pas comment aborder cette affaire. Le echo $DISPLAY
est toujours correct (défini par la ssh -Y
connexion initiale ), mais le cookie de session n'est probablement défini que pour l'utilisateur initial qui s'est connecté à ssh.
Comment puis-je surmonter cette difficulté et transférer d'autres applications X exécutées par différents utilisateurs?
La raison pour laquelle je ne ssh'ing pas directement est parce que je ne veux pas que cet utilisateur soit accessible via ssh (c'est l'utilisateur "virtualbox", qui est évidemment une cible facile pour les bots essayant de ssh sur ce serveur) ...
la source
ssh -Y
à la machine distante comme vous-même.xauth list
. Une liste d'articles MAGIC-COOKIE apparaît. Votre session de connexion est probablement la dernière de la liste. (Vérifiez cela en examinant le nom d'hôte et le code du numéro UNIX, et en le comparant avec le nom d'hôte à partir duquel vous avez décortiqué et votre variable locale localhost: ## DISPLAY env.)xauth add
+ toute la ligne MAGIC-COOKIE par le haut.xlogo
.la source
USER="otherusername" && MAGIC_COOKIE=`xauth list | tail -n1` && su -c "xauth add $MAGIC_COOKIE" $USER && su - $USER
J'aime la réponse de Randy, mais cela n'a pas vraiment fonctionné pour moi.
Voici ce que j'ai pu travailler:
ssh -Y as user1
xauth list | grep `uname -n`
unset XAUTHORITY
xauth generate :0 .
xauth add :0 . <KEY-FROM-STEP-2>
Notez les deux périodes des étapes 5 et 6.
Si je ne fais que suivre la réponse de Randy, la
XAUTHORITY
variable de user2 pointe toujours vers le.Xauthority
fichier de user1 . Et sa syntaxe de la touche + ne fonctionnait pas.la source
Ce n'est pas une réponse, donc si vous en trouvez une, c'est évidemment préférable.
Sinon, et c'est la cause profonde de votre énigme:
Cela ne me semble pas un excellent raisonnement. "Quels bots ciblent" WRT un sshd bien configuré est largement hors de propos. Vont-ils bourdonner autour du port 22 un peu partout? Apparemment oui. Est-ce à dire qu'ils ont réellement une chance de succès?
Essayez de parcourir Google pour une histoire sur quelqu'un qui a eu un bot anonyme aléatoire réussi à s'introduire dans sshd. Je suis sûr que cela a dû arriver à quelqu'un quelque part (et, bien sûr, vous ne le saurez peut-être jamais), mais je ne trouve aucun rapport à ce sujet. Il serait intéressant de lire la configuration utilisée.
SSH est très sécurisé lorsqu'il est utilisé correctement. Si ce n'était pas le cas, le commerce sur Internet ne serait pas possible. Alors, pourquoi ces robots dérangent-ils? Par «utilisé correctement», je veux dire, principalement, avec des paires de clés publiques / privées obligatoires. Si vous faites cela et êtes sûr que votre clé privée est sécurisée (et vous devriez l'être), faites confiance à sshd.
Je pense que la raison pour laquelle toutes les "tentatives d'effraction" se produisent est qu'il y a un grand nombre d'utilisateurs qui ne font pas des choses comme poser des questions sur U&L;) et ne lisent pas les pages de manuel et n'utilisent que la protection par mot de passe, ce qui est un peu comme laisser votre carte ATM dans une machine quelque part avec un panneau disant: "Devinez loin!".
Cependant, si vous considérez votre clé privée comme votre carte ATM - comme quelque chose que vous sécurisez physiquement (ce qu'elle est essentiellement), alors la cible devient beaucoup plus éthérée. Tout ce que ces robots peuvent faire, c'est prouver que oui, il faudrait vraiment des milliers de machines des milliers d'années à travailler ensemble pour forcer brutalement une clé de 2048 bits.
Si vous en avez marre de lire les rapports de tentatives d'effraction, changez de port. J'ai vu des gens ici poo-poo ceci comme "sécurité par obscurité", cependant, un sshd qui est correctement sécurisé sur le port 22 ne sera pas moins sécurisé sur le port 57, mais il ne sera pas dérangé au hasard. Bien sûr, tous vos ennemis drones pourraient simplement balayer le port entier de l'IP - mais vous savez quoi? Ils ne le font pas. Je suppose que c'est parce que ce qu'ils recherchent, c'est quelqu'un qui gère un système qui n'a même pas regardé
/etc/ssh/sshd_config
, beaucoup moins éduqué lui-même et réglé.la source