[ssh] patcher ou installer .deb de openssh (résolu)

Mise à jour / Création /debug de paquetages
erlen
Hankyu
Messages : 43
Inscription : dim. 04 mars 2012, 11:35

[ssh] patcher ou installer .deb de openssh (résolu)

Message par erlen »

Bonjour,

Pour mon boulot, je dois utiliser kerberos. Le problème, openssh 5.9 n'est pas compatible avec les clé de Kerberos.
La solution la plus rapide que j'ai trouver et j'espère non définitive c'est installer ubuntu sur une machine virtuelle et utiliser son ssh, ça fais cher le ssh !!

Il est donc nécessaire de patcher openssh. Il en existe un développer pour fedora
http://permalink.gmane.org/gmane.linux. ... cvs/732795
Mon problème c'est qu'en partant des sources de openssh 5.9 si j'essaie d'applique ce patch j'ai ce résultat :

Code : Tout sélectionner

erlen@linus:~/Téléchargements/openssh/openssh-5.9p1_2$ patch -p1 --dry-run -i openssh.patch 
patch: **** Only garbage was found in the patch input.
Comme c'est la première fois que j'essaie de faire un patch je m'y prend peut être mal.

Une autre solution consiste à installer la version 5.8 de debian qui a l'avantage d'être patchée.
Auquel cas comment dois-je procéder les forum que j'ai trouver non guère éclairé ma lanterne.

Je viens d'arriver sur Archlinux, je viens d'ubuntu qui après 3 ans a fini par m'agacer, j'aimerais ne pas y retourner pour une vulgaire histoire de clé kerberos et de ssh !
Dernière modification par erlen le lun. 19 mars 2012, 10:43, modifié 1 fois.
viperpaulo
Chu Ko Nu
Messages : 389
Inscription : lun. 06 déc. 2010, 13:58

Re: [ssh] patcher ou installer .deb de openssh

Message par viperpaulo »

Salut,

Pourquoi ne pas downgrader sur la version d'ubuntu ?
http://wiki.archlinux.fr/Downgrade
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17624
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [ssh] patcher ou installer .deb de openssh

Message par benjarobin »

Créer plusieurs sujets identique c'est interdit et tu ne trouveras personne pour te répondre avec ce genre de pratique : http://forums.archlinux.fr/topic10572.html

Sinon pour résoudre ton problème il te suffit de faire ceci :

Code : Tout sélectionner

yaourt -G openssh
Puis tu remplace le contenu du PKGBUILD par ceci

Code : Tout sélectionner

pkgname=openssh
pkgver=5.9p1
pkgrel=5
pkgdesc='Free version of the SSH connectivity tools'
arch=('i686' 'x86_64')
license=('custom:BSD')
url='http://www.openssh.org/portable.html'
backup=('etc/ssh/ssh_config' 'etc/ssh/sshd_config' 'etc/pam.d/sshd' 'etc/conf.d/sshd')
depends=('krb5' 'openssl' 'libedit')
optdepends=('x11-ssh-askpass: input passphrase in X without a terminal')
source=("ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz"
        'sshd.confd'
        'sshd.pam'
        'sshd'
        'https://trac.macports.org/raw-attachment/ticket/27250/0001-GSS-key-exchange-patch.patch')
sha1sums=('ac4e0055421e9543f0af5da607a72cf5922dcc56'
          'ec102deb69cad7d14f406289d2fc11fee6eddbdd'
          '3413909fd45a28701c92e6e5b59c6b65346ddb0f'
          '21fa88de6cc1c7912e71655f50896ba17991a1c2'
          'd17c2221faee513e751eb0b7b62fcdcbcaf8b505')

build() {
	cd "${srcdir}/${pkgname}-${pkgver}"
	patch -p1 <../0001-GSS-key-exchange-patch.patch
	./configure \
		--prefix=/usr \
		--libexecdir=/usr/lib/ssh \
		--sysconfdir=/etc/ssh \
		--with-privsep-user=nobody \
		--with-md5-passwords \
		--with-pam \
		--with-mantype=man \
		--with-xauth=/usr/bin/xauth \
		--with-kerberos5=/usr \
		--with-ssl-engine \
		--with-libedit=/usr/lib \
		--disable-strip # stripping is done by makepkg

	make
}

package() {
	cd "${srcdir}/${pkgname}-${pkgver}"
	make DESTDIR="${pkgdir}" install

	install -Dm755 ../sshd "${pkgdir}"/etc/rc.d/sshd
	install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/sshd
	install -Dm644 ../sshd.confd "${pkgdir}"/etc/conf.d/sshd
	install -Dm644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENCE"

	rm "${pkgdir}"/usr/share/man/man1/slogin.1
	ln -sf ssh.1.gz "${pkgdir}"/usr/share/man/man1/slogin.1.gz

	# additional contrib scripts that we like
	install -Dm755 contrib/findssl.sh "${pkgdir}"/usr/bin/findssl.sh
	install -Dm755 contrib/ssh-copy-id "${pkgdir}"/usr/bin/ssh-copy-id
	install -Dm644 contrib/ssh-copy-id.1 "${pkgdir}"/usr/share/man/man1/ssh-copy-id.1

	# PAM is a common, standard feature to have
	sed \
		-e '/^#ChallengeResponseAuthentication yes$/c ChallengeResponseAuthentication no' \
		-e '/^#UsePAM no$/c UsePAM yes' \
		-i "${pkgdir}"/etc/ssh/sshd_config
}
Pour finalement le compiler avec la commande suivante : makepkg
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
erlen
Hankyu
Messages : 43
Inscription : dim. 04 mars 2012, 11:35

Re: [ssh] patcher ou installer .deb de openssh

Message par erlen »

Alors je suis désolé d'avoir ouvert deux sujets identiques mais pour moi ça ne l'était pas.
Dans le premier je demandais si quelqu'un avait une solution au problème. Après plusieurs heures de recherche et l'installation de ubuntu pour tester. J'ai penser qu'il valait mieux essayer de patcher ou d'utiliser le .deb.
Or je ne sais pas le faire, d'où l'ouverture d'un post qui à pour but certes d'obtenir une version ssh compatible avec Kerberos mais au moyen de l'application d'un patch ou l'utilisation d'un package debian j'ai trouvé un certain nombre de site parlant de ça mais j'ai jamais compris comment ça fonctionnait.
Le sujet c'est comment patcher et c'est comment utiliser un .deb si c'est possible.
Pourquoi ne pas downgrader sur la version d'ubuntu ?
J'avais cherché à faire ça mais j'ai pas trouvé merci je testerai les différentes versions pour voir si une correspond. En même temps si la version archlinux n'est pas patché ça ne changera rien. C'est pour ça que je voulais peut être utiliser le package débian je sais qu'il est patché.

Sinon benjarobin tu pourrais me donner des détails sur ce que tu proposes ? D'où vient le "script" ? Où l'as tu trouvé ? Que fait il.

Pour en revenir à une autre partie du débat :
Peut on et si oui comment installe-t-on des package debian, quels sont les risques ?
Pourquoi ma tentative de patch a-t-elle échoué ?
Merci
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10711
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [ssh] patcher ou installer .deb de openssh

Message par FoolEcho »

erlen a écrit :Dans le premier je demandais si quelqu'un avait une solution au problème. Après plusieurs heures de recherche et l'installation de ubuntu pour tester. J'ai penser qu'il valait mieux essayer de patcher ou d'utiliser le .deb.
Sauf que benjarobin te propose de patcher l'openssh d'Arch, ce qui revient à résoudre le problème que tu exposes ici, proprement (gestion par pacman, tout ça)... donc pas besoin de l'autre sujet, je pense. :chinois:
erlen a écrit :Sinon benjarobin tu pourrais me donner des détails sur ce que tu proposes ? D'où vient le "script" ? Où l'as tu trouvé ? Que fait il.
Je ne suis pas lui, mais je me permets (il complétera au besoin): :P
Il te propose un PKGBUILD (qui est en fait ce qui permet de construire les paquets sous Arch)... PKGBUILD qui est basé sur celui d'openssh forcément et qui inclue le patch pour ce que tu souhaites faire (et s'il te le propose c'est qu'il a testé... au moins la compilation ;) ). -- pour la petite histoire et pour ma part, vu qu'openssh est compilé avec le support de kerberos -- krb5 -- je pensais naïvement en voyant ton sujet que c'était probablement une régression quelconque, mais ça n'a pas l'air --
Voir le wiki pour les PKGBUILD, AUR et autres makepkg (pense à installer le groupe base-devel si ce n'est déjà fait).
erlen a écrit :Peut on et si oui comment installe-t-on des package debian, quels sont les risques ?
Pour répondre à ta question: on peut, mais pas directement (pacman ne gère pas les .deb). Le risque principal (si on admet que c'est fait correctement :mrgreen: ) est que le paquet ne fonctionne pas, ou mal, au final (raison principale: Arch limite le nombre de patch par rapport à Ubuntu ou Debian, donc certaines bibliothèques peuvent diffèrer).
«The following statement is not true. The previous statement is true.» :nage:
erlen
Hankyu
Messages : 43
Inscription : dim. 04 mars 2012, 11:35

Re: [ssh] patcher ou installer .deb de openssh

Message par erlen »

J'aurais bien aimée savoir d’où venait les modifications de PKGBUILD, mais bon ça fonctionne parfaitement merci.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17624
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [ssh] patcher ou installer .deb de openssh (résolu)

Message par benjarobin »

Je ne suis pas sûre de comprendre ta question :-) J'ai modifié le PKGBUILD pour ajouter le patch rajoutant le support des clé de Kerberos
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Répondre