Я настраиваю оболочки тюрьмы с помощью марионетки, чтобы поддерживать копии необходимых библиотек в тюрьмах.
Используя следующий код марионетки, я могу успешно скопировать файлы:
file { "/home/${username}/lib/x86_64-linux-gnu/libdl.so.2":
ensure => present,
source => "/lib/x86_64-linux-gnu/libdl.so.2",
mode => '0700',
links => 'manage',
owner => $username,
group => $username,
require => File["/home/${username}/lib/x86_64-linux-gnu/"]
}
Тем не менее, похоже, что права доступа к исходному файлу меняются на $ username: $ username, а также права доступа к конечному файлу.
Файл /lib/x86_64-linux-gnu/libdl.so.2 имеет следующие разрешения:
-rwx------ 1 $username $username ld-2.19.so
Заключенные в тюрьму пользователи, очевидно, могут войти в систему с этой настройкой, но для всех остальных, которые будут использовать / bin / bash в реальной папке / lib, это нарушает вход в систему.
Вы должны процитировать:
owner => '$ username',