[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ssh -N en alleen maar ssh -N toestaan (succes)



On Mon, Mar 27, 2023 at 12:07:38AM +0200, Paul van der Vlis wrote:
> Op 26-03-2023 om 23:51 schreef Paul van der Vlis:
> > Hoi Geert en anderen,
> > 
> > Op 26-03-2023 om 12:50 schreef Geert Stappers:
> > > Hoi,
> > > 
> > > Uit `man 1 ssh`
> > > 
> > >    -N  Do not execute a remote command.
> > >        This is useful for just forward ports.
> > > 
> > > 
> > > Nu is `ssh -N` een client kant ding.
> > > 
> > > Hoe aan server kant borgen dat alleen maar port forwarding gebeurd?
> > > 
> > > 
> > > 
> > > Ik had gedacht om het dicht te timmeren door aan authorized_keys
> > > op de server wat toe te voegen aan de regel met de pubkey voor
> > > het account dat de `ssh -N` moet gaan doen.
> > > 
> > > Er is "no-port-forwarding"
> > > https://www.ssh.com/academy/ssh/authorized-keys-openssh#no-port-forwarding
> > > maar niet iets als "only-port-forwarding"
> > >    https://www.ssh.com/academy/ssh/authorized-keys-openssh
> > > 
> > > Wat zien jullie zoal aan mogelijkheden om aan server kant
> > > er voor te zorgen dat SSH client alleen maar een verbinding
> > > voor de portforward maakt, dat shell access niet kan?
> > 
> > Wat ik doe aan de server-kant is /usr/sbin/nologin als shell gebruiken.
> 
> Oh, en ik zie dat ik ook dit nog doe in sshd_config:
> -----
> UsePAM no
> Match User een,twee
>   AllowTcpForwarding remote
>   AllowStreamLocalForwarding no
>   X11Forwarding no
>   PermitTTY no
>   PermitEmptyPasswords yes
>   PasswordAuthentication yes
> -----
> 
> Kritiek is welkom ;-)
 
Stukje zelfkritiek:
> > > er voor te zorgen dat SSH client alleen maar een verbinding
> > > voor de portforward maakt, dat shell access niet kan?
had
> > > er voor te zorgen dat SSH client alleen maar een verbinding
> > > voor de portforward maakt.
zullen zijn.
Dat aandacht op "alleen maar een verbinding voor portforward" blijft.


Oorspronkelijke vraag heb ik kunnen oplossen door


   command="echo Don\'t do that"

voor de pubkey in ~/.ssh/authorized_keys te zetten. Dat is aan server
kant.

Als ik `ssh -N -R 2222:127.0.0.1:22 server` doe, krijg ik de gewenste
portforward. Als ik iets zonder `-N` doe, komt er "Don't do that" terug.


> Ik heb trouwens nog een kleine extra beveiliging in de firewall, mensen
> moeten zich eerst ergens aanmelden, dan pas krijgt hun IP toegang.

Met behulp van   from="hun IP"   voor de pubkey in authorized_keys?



Groeten
Geert Stappers
-- 
Silence is hard to parse


Reply to: