Фоновые задания выполняются асинхронно. Это означает, что Вы - примечание, которое в состоянии предсказать порядок выполнения просто по определению. Теоретически, даже с добавлением sleep
можно все еще встретиться с проблемой: ожидание только в течение нескольких секунд не устраняет асинхронную природу bg заданий, единственная вещь, которую Вы на самом деле делаете, просто понижает вероятность такой путаницы.
Оператор Match
может принимать множество аргументов, позволяя очень гибкие правила. В этом случае Вы можете сделать что-то подобное, чтобы добиться желаемого.
Match Group FOOGROUP User !username
ForceCommand /bin/customshell
The !
отрицает аргумент, переданный в критерий User
, поэтому даже если пользователь username
находится в группе FOOGROUP
, то Match
не будет успешным, и username
не будет передан пользовательской оболочке при входе в систему.
Вам нужно использовать несколько предложений в записи файла конфигурации, но очень специфическим образом. В некоторых настройках есть ошибка, которая приводит к тому, что обычно рекомендуемый и самый простой синтаксис («Match Group FOOGROUP User !username») либо приводит к тому, что все остальные в группе не могут сопоставиться, либо позволяют им избежать их chroot-тюрьмы.
В Debian Jessie с использованием OpenSSH_6.0p1 Debian-4, OpenSSL 1.0.2d я получаю результат, что все остальные в группе больше не могут подключиться. Другие сообщают о побегах из тюрьмы. В обоих случаях синтаксис
Match Group FOOGROUP User *,!username
работает без побочных эффектов. Какой-то баг в парсере наверняка.
con la siguiente opción, puedo encarcelar al usuario sftp dentro del directorio especificado y también al usuario especificado capaz de iniciar sesión a través de ssh.
Match Group groupname User *,!username
Gracias.