Compilare ssh staticamente

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
ficundiana
Linux 0.x
Linux 0.x
Messaggi: 15
Iscritto il: sab 18 set 2010, 18:03
Slackware: 13.1
Kernel: 2.6.33-zen
Desktop: KDE

Compilare ssh staticamente

Messaggio da ficundiana »

Salve a tutti,

vorrei riuscire a raggiungere il mio pc da remoto utilizzando una shell sicura e forwardando determinate porte. Ho disabilitato l'autenticazione con password e lasciato solo quella con chiave privata che porto sempre con me su una chiave USB. Non sapendo in linea di principio il parco sw presente su un'eventuale macchina remota, l'idea sarebbe quella di avere nella chiave USB i programmi necessari per effettuare la connessione. Per quanto riguarda Win portable-Putty e portable-winscp risolvono bene il mio problema; il problema rimane con linux: ssh è (giustamente) un eseguibile dinamico e se mi limito a copiarlo nella chiave esso potrebbe trovare su un pc remoto librerie non compatibili con le mie e, dunque, non funzionare.
Ho provato ad utilizzare ELF statifier per rendere statico il programma, ma purtroppo statifier non è compatibile con la randomizzazione dello stack (attivata, da quanto ho capito, sulla maggior parte dei sistemi linux, e disattivabile solo da root). Un'altrenativa ad ELF Statifier che ho provato e funziona è Ermine, ma quest'ultimo è un sw proprietario e gli eseguibili prodotti funzionano solo per un determinato periodo.

Una soluzione potrebbe essere un programma con le stesse funzioni di Ermine ma sbloccato: ne conoscete qualcuno?
Un qualunque programma in grado di aprire una shell sicura e sia indipendente dalle librerie risolverebbe comunque il problema.

Avatar utente
shark1500
Linux 3.x
Linux 3.x
Messaggi: 785
Iscritto il: gio 3 apr 2008, 14:33
Slackware: current
Kernel: 2.6.27.7-smp
Desktop: kde
Località: Modna

Re: Compilare ssh staticamente

Messaggio da shark1500 »

Non sono sicuro di quello che dico, ma putty non c'era anche per linux? (ovviamente non lo usa mai nessuno perche` c'e` ssh, pero` secondo me il client esiste)

Avatar utente
masalapianta
Iper Master
Iper Master
Messaggi: 2775
Iscritto il: lun 25 lug 2005, 0:00
Nome Cognome: famoso porco
Kernel: uname -r
Desktop: awesome
Distribuzione: Debian
Località: Roma
Contatta:

Re: Compilare ssh staticamente

Messaggio da masalapianta »

"LDFLAGS=-static ./configure" non funziona?

Avatar utente
ponce
Iper Master
Iper Master
Messaggi: 3123
Iscritto il: mer 5 mar 2008, 16:45
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 7.0.12
Desktop: lxde
Località: Pisa
Contatta:

Re: Compilare ssh staticamente

Messaggio da ponce »

per linux, a differenza di windows, non avrai bisogno di portarti dietro il client ssh: lo troverai installato su qualunque distribuzione ti troverai ad usare.
nel caso non fosse installato probabilmente ti conviene non usare nemmeno il sistema operativo sottostante (non ci sara' niente) ed avviare/lavorare con una live (porteus, slax, knoppix o quella che preferisci).

ficundiana
Linux 0.x
Linux 0.x
Messaggi: 15
Iscritto il: sab 18 set 2010, 18:03
Slackware: 13.1
Kernel: 2.6.33-zen
Desktop: KDE

Re: Compilare ssh staticamente

Messaggio da ficundiana »

grazie per le risposte.

@ponce: sicuramente è vero che è raro non trovare ssh in un pc con linux sopra; tuttavia distro come ubuntu di default installano veramente "l'essenziale" (secondo l'accezione ubuntista del termine) e, se non mi sbaglio, ssh non c'è. In ogni caso avere con se la chiave privata ed un pc connesso ad internet con linux mi garantisce di potermi connettere al mio computer nel 99.9% dei casi; il mio più che altro è un'esperimento: avere un eseguibile indipendente che mi permetta una connessione senza riavviare il pc e senza avere i privilegi di amministratore.

@masalapianta: ssh viene compilato staticamente ma l'secuzione si blocca stampando: "ssh: ../sysdeps/unix/sysv/linux/getpagesize.c:32: __getpagesize: Assertion `_rtld_global_ro._dl_pagesize != 0' failed.
Aborted". googleando ho scoperto che è un'errore che si presenta quando si cerca di compilare staticamente alcuni programmi. Sto cercando una soluzione...

@shark1500: putty c'è anche per linux ma richiede libgtk, libX11, etc... se provo a passare la flag -static in fase di compilazione quest'ultima si blocca in quanto sulla mia slack sono assenti le lib richieste in versione .a

P.S.: Ermine riesce a far funzionare anche putty portandosi appresso tutte le lib GTK (alla fine ho un'eseguibile da 7.7MB, ma funziona... per 30gg)

Avatar utente
ponce
Iper Master
Iper Master
Messaggi: 3123
Iscritto il: mer 5 mar 2008, 16:45
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 7.0.12
Desktop: lxde
Località: Pisa
Contatta:

Re: Compilare ssh staticamente

Messaggio da ponce »

ficundiana ha scritto:@ponce: sicuramente è vero che è raro non trovare ssh in un pc con linux sopra; tuttavia distro come ubuntu di default installano veramente "l'essenziale" (secondo l'accezione ubuntista del termine) e, se non mi sbaglio, ssh non c'è.
non per fare il piticchioso ( :) ) ma non c'e' openssh-server, openssh-client invece c'e'. ;)
il mio più che altro è un'esperimento: avere un eseguibile indipendente che mi permetta una connessione senza riavviare il pc e senza avere i privilegi di amministratore.
amministrando ambienti multiutente posso pensare che, a seconda di dove sei, le pennine/home/tmp potrai anche trovarli montati con l'opzione noexec, come ho fatto io in situazioni dove non era permesso far girare altri binari oltre a quelli installati (senno' la prima cosa che gli utenti si porterebbero dietro sarebbe il client bittorrent :lol: ), quindi il binario statico probabilmente non risolvera' sempre.

Rispondi