Created attachment 2104 [details] permitopen_none option diff From debian bug tracker: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=543683 Package: openssh-server Version: 1:5.1p1-7 Severity: wishlist I'm trying to setup a reverse SSH box (i.e. one where people stuck behind NAT can SSH in and initiate a tunnel back to their machine). They use this something like this: ssh login@box -R 2000:localhost:22 I'm trying to lock this down as far as possible - in particular I'd like to disable AllowTcpForwarding, however if I do this it prevents both local _and_ remote tunnels. Leaving AllowTcpForwarding open and setting "PermitOpen 127.0.0.1:65535" gets close - all the reverse tunnels work, but the only local tunnel that will work is "ssh login@box -L xxxx:localhost:65535". I'd like to use "PermitOpen none" (or just blank) however sshd doesn't allow this (just checked the source code). Thanks, Adrian -- Email: adrian@smop.co.uk -*- GPG key available on public key servers Debian GNU/Linux - the maintainable distribution -*- www.debian.org I thought I'd give it a try. I added a new function that populates list of allowed sockets with NULL, and also added the permitopen none option. Any feedback on how to improve the code would be nice :-) //Logan C-x-C-c
Created attachment 2108 [details] permitOpen none with a single socket
Instead of creating a bunch of sockets with hosttoconnect to as NULL, It's simpler to create only one.
Comment on attachment 2108 [details] permitOpen none with a single socket Darren is more familiar with this code than I am. The patch looks sane to me though.
Looks OK, but I think we need to add the equivalent code to channel_print_adm_permitted_opens() so that it'll output "permitopen none" when it sees the NULL in host_to_connect.
Created attachment 2111 [details] permitopen none with sshd -T support
Created attachment 2112 [details] OpenBSD sshd permitopen diff Port of dtucker's patch for openbsd
Created attachment 2116 [details] PermitOpen None diff for native OpenSSH Remove a whitespace in channel_disable_adm_local_opens(void) & add a space before none in printf() to make it more consistent. Any comments ?
Are there other issues that need fixing ?
ping ?
Now that the tree is unlocked, any chance this could make it to OpenSSH 6.1 ? Patching each machine is a pain...
thanks for the patch (and patience). this has been committed and will be in the 6.1 release.
Awesome :-) Thanks for finding time to looking at it !
Close all resolved bugs after 7.3p1 release