Problem, possibly bug with AllowUsers & DenyUsers
    Andy Tsouladze 
    andyb1 at andy-t.org
       
    Fri May  9 14:42:23 EST 2008
    
    
  
Hi there,
I have just compiled openssh-5.0 on Solaris 10, and am trying to set up 
a certain pattern of user access control.  Essentially, regular users 
should be able to login from any network, while root should be able to 
login only from a private network 192.168.88.0/22.  Actually, for the 
purpose of sshd_config, this is four networks, but that's another story...
Here is what I tried:
DenyUsers root@!192.168.88.*
Result: root can login from anywhere while I expected it to be allowed 
only from 192.168.88.0/24
So I ran a number of tests to see which will work correctly.
DenyUsers root at 192.168.88.40  # I used this client
Result: GOOD. root access denied from 192.168.88.40, allowed from other 
places.
DenyUsers root at 192.168.88.*
Result: GOOD. root access denied from 192.168.88.0/24, allowed from other
places.
DenyUsers root@!192.168.88.44
Result: BAD. root can login from 192.168.88.40, or anywhere else
So it seems the negation does not work.
Continued tests:
AllowUsers root at 192.168.88.*
Result: GOOD. root can login only from 192.168.88.0/24.
AllowUsers root@!192.168.88.44
Result: BAD. root cannot login from anywhere.  In fact, no one can.
AllowUsers root@!192.168.88.*
Result: BAD. root cannot login from anywhere.  In fact, no one can.
AllowUsers root at 192.168.88.* !root@*
Result: BAD. root can login only from 192.168.88.0/24 but other users 
cannot login at all.
AllowUsers !root@*
Result: BAD. No one can login from anywhere
AllowUsers !root
Result: BAD. No one can login from anywhere
Conclusion:  Negation (!) does not work for either `user' or `address'.
Am I doing something wrong, or is this truly broken?
If more information is needed, I will be happy to provide it.
Regards,
Andy
Dr Andy Tsouladze
Sr Unix SysAdmin/System Architect
United Airlines
    
    
More information about the openssh-unix-dev
mailing list