ssh jail?

Jeffrey Ross jeff at bubble.org
Mon Jan 25 20:54:42 UTC 2016


> On 01/25/2016 06:55 AM, Jeffrey Ross wrote:
>> I'm in the process of setting up an SSH jail, for the most part its
>> working as expected with one exception, I want to provide access to
>> /dev/ttyUSB0 through /dev/ttyUSB4 (not 2) via cu.
>>
>> When I attempt to use "cu -lttyUSB0 -s9600" I always get "line in use"
>> even through it is not in use and from another account not restricted to
>> the "jail" I can successfully connect to the ttyUSB0.
>>
>> I've tried creating $chroot/
>>
>> run/
>>      lock/
>>      lockdev/
>>      uucp/
>> var/
>>      run -> symbolic link to $chroot/run
>>      lock -> symbolic link to $chroot/run/lock
>>
>> and then matched the directory permissions so they are the same as the
>> "real" system.
>>
>> ls -l $chroot/dev/ttyUSB?
>>      crwxrwxrwx 1 root dialout 188, 0 Jan 24 14:48 ttyUSB0
>>      crwxrwxrwx 1 root dialout 188, 1 Jan 24 14:49 ttyUSB1
>>      crwxrwxrwx 1 root dialout 188, 3 Jan 24 14:49 ttyUSB3
>>      crwxrwxrwx 1 root dialout 188, 4 Jan 24 14:49 ttyUSB4
>>
>> The dialout group is 18 and the user is in group 18, initially I set the
>> permissions for the ttyUSB? to 660 before changing it to 777 as a last
>> ditch effort.
>>
>> The "real" /dev/ttyUSB? -
>>
>> ls -l /dev/ttyUSB?
>>      crw-rw---- 1 root dialout 188, 0 Jan 24 14:44 /dev/ttyUSB0
>>      crw-rw---- 1 root dialout 188, 1 Jan 23 21:48 /dev/ttyUSB1
>>      crw-rw---- 1 root dialout 188, 3 Jan 24 15:12 /dev/ttyUSB3
>>      crw-rw---- 1 root dialout 188, 4 Jan 23 21:48 /dev/ttyUSB4
>>
>> I'm probably missing something simple and any suggestions would be
>> appreciated.
>
> Uhm, double check the permissions on the $chroot/var/run  and
> $chroot/var/lock directories and make sure that the user you're trying
> to run as has write permissions in those directories. It's been a
> while, but IIRC the only way cu can determine if a device is in use is
> by checking the lock files and if it can't create a lock file, it says
> the device is in use.
>
> Why in the devil would you pull out that ancient program anyway? Man!
> I haven't even LOOKED at cu/uucp in 15 years at least!


Just in case the permissions were wrong I did a chmod -R 777 on the run
directory, no dice, so I did the next best thing, I ran "strace -ff -o
outfile cu -l...." found a few libraries I missed, not sure if that was
part of the issue as that's not where the failure occurred.  I did find
that it forked (?) lockdev which is a program that I had not included 
$chroot, so I brought that program over into $chroot/usr/sbin/lockdev set
the permission appropriately and everything began working.


Why did I choose "cu"  I know uucp is ancient but for a quick and dirty
way to connect to various serial interfaces cu seems to work well, and
although the remainder of the uucp suite comes with cu I did not configure
uucp :)

If you've got a suggestion for another program to use that will allow
quick connectivity to various serial ports I'm all ears.

Thanks!

Jeff





More information about the users mailing list