2013-01-22 14:42:23 +05:30
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!--
|
|
|
|
Copyright (c) 2013 Eric W. Biederman
|
|
|
|
All rights reserved.
|
|
|
|
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
|
|
modification, are permitted provided that the following conditions
|
|
|
|
are met:
|
|
|
|
1. Redistributions of source code must retain the above copyright
|
|
|
|
notice, this list of conditions and the following disclaimer.
|
|
|
|
2. Redistributions in binary form must reproduce the above copyright
|
|
|
|
notice, this list of conditions and the following disclaimer in the
|
|
|
|
documentation and/or other materials provided with the distribution.
|
|
|
|
3. The name of the copyright holders or contributors may not be used to
|
|
|
|
endorse or promote products derived from this software without
|
|
|
|
specific prior written permission.
|
|
|
|
|
|
|
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
|
|
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
|
|
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
|
|
|
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
|
|
HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
|
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
|
|
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
|
|
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
|
|
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
|
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
|
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
-->
|
|
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.5//EN"
|
|
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
|
|
<!-- SHADOW-CONFIG-HERE -->
|
|
|
|
]>
|
|
|
|
<refentry id='subuid.5'>
|
2020-01-12 18:54:04 +05:30
|
|
|
<refentryinfo>
|
|
|
|
<author>
|
|
|
|
<firstname>Eric</firstname>
|
|
|
|
<surname>Biederman</surname>
|
|
|
|
<contrib>Creation, 2013</contrib>
|
|
|
|
</author>
|
2021-06-11 18:55:42 +05:30
|
|
|
<author>
|
|
|
|
<firstname>Iker</firstname>
|
|
|
|
<surname>Pedrosa</surname>
|
|
|
|
<contrib>Developer, 2021</contrib>
|
|
|
|
</author>
|
2020-01-12 18:54:04 +05:30
|
|
|
</refentryinfo>
|
2013-01-22 14:42:23 +05:30
|
|
|
<refmeta>
|
|
|
|
<refentrytitle>subuid</refentrytitle>
|
|
|
|
<manvolnum>5</manvolnum>
|
2021-10-16 02:58:12 +05:30
|
|
|
<refmiscinfo class="sectdesc">File Formats and Configuration Files</refmiscinfo>
|
2013-01-22 14:42:23 +05:30
|
|
|
<refmiscinfo class="source">shadow-utils</refmiscinfo>
|
|
|
|
<refmiscinfo class="version">&SHADOW_UTILS_VERSION;</refmiscinfo>
|
|
|
|
</refmeta>
|
|
|
|
<refnamediv id='name'>
|
|
|
|
<refname>subuid</refname>
|
2021-06-11 18:55:42 +05:30
|
|
|
<refpurpose>the configuration for subordinate user ids</refpurpose>
|
2013-01-22 14:42:23 +05:30
|
|
|
</refnamediv>
|
|
|
|
|
|
|
|
<refsect1 id='description'>
|
|
|
|
<title>DESCRIPTION</title>
|
2021-06-11 18:55:42 +05:30
|
|
|
<para>
|
|
|
|
Subuid authorizes a user id to map ranges of user ids from its namespace
|
|
|
|
into child namespaces.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
The delegation of the subordinate uids can be configured via the
|
|
|
|
<replaceable>subid</replaceable> field in
|
|
|
|
<filename>/etc/nsswitch.conf</filename> file. Only one value can be set
|
|
|
|
as the delegation source. Setting this field to
|
|
|
|
<replaceable>files</replaceable> configures the delegation of uids to
|
|
|
|
<filename>/etc/subuid</filename>. Setting any other value treats
|
|
|
|
the delegation as a plugin following with a name of the form
|
|
|
|
<replaceable>libsubid_$value.so</replaceable>. If the value or plugin is
|
|
|
|
missing, then the subordinate uid delegation falls back to
|
|
|
|
<replaceable>files</replaceable>.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
Note, that <command>useradd</command> will only create entries in
|
|
|
|
<filename>/etc/subuid</filename> if subid delegation is managed via subid
|
|
|
|
files.
|
|
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1 id='local-subordinate-delegation'>
|
|
|
|
<title>LOCAL SUBORDINATE DELEGATION</title>
|
2013-01-22 14:42:23 +05:30
|
|
|
<para>
|
|
|
|
Each line in <filename>/etc/subuid</filename> contains
|
2013-08-07 01:41:41 +05:30
|
|
|
a user name and a range of subordinate user ids that user
|
2013-01-22 14:42:23 +05:30
|
|
|
is allowed to use.
|
|
|
|
|
|
|
|
This is specified with three fields delimited by colons
|
|
|
|
(<quote>:</quote>).
|
|
|
|
These fields are:
|
|
|
|
</para>
|
|
|
|
<itemizedlist mark='bullet'>
|
|
|
|
<listitem>
|
2014-09-06 02:51:03 +05:30
|
|
|
<para>login name or UID</para>
|
2013-01-22 14:42:23 +05:30
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>numerical subordinate user ID</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>numerical subordinate user ID count</para>
|
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
|
|
<para>
|
2013-08-07 01:55:08 +05:30
|
|
|
This file specifies the user IDs that ordinary users can use, with
|
|
|
|
the <command>newuidmap</command> command, to configure uid mapping
|
|
|
|
in a user namespace.
|
2013-01-22 14:42:23 +05:30
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
2013-08-07 01:41:41 +05:30
|
|
|
Multiple ranges may be specified per user.
|
2013-01-22 14:42:23 +05:30
|
|
|
</para>
|
|
|
|
|
2014-09-06 04:04:40 +05:30
|
|
|
<para>
|
|
|
|
When large number of entries (10000-100000 or more) are defined in
|
|
|
|
<filename>/etc/subuid</filename>, parsing performance penalty will
|
|
|
|
become noticeable. In this case it is recommended to use UIDs
|
|
|
|
instead of login names. Benchmarks have shown speed-ups up to 20x.
|
|
|
|
</para>
|
|
|
|
|
2013-01-22 14:42:23 +05:30
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1 id='files'>
|
|
|
|
<title>FILES</title>
|
|
|
|
<variablelist>
|
|
|
|
<varlistentry>
|
|
|
|
<term><filename>/etc/subuid</filename></term>
|
|
|
|
<listitem>
|
|
|
|
<para>Per user subordinate user IDs.</para>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
|
|
<term><filename>/etc/subuid-</filename></term>
|
|
|
|
<listitem>
|
|
|
|
<para>Backup file for /etc/subuid.</para>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1 id='see_also'>
|
|
|
|
<title>SEE ALSO</title>
|
|
|
|
<para>
|
|
|
|
<citerefentry>
|
2013-08-11 19:35:26 +05:30
|
|
|
<refentrytitle>login.defs</refentrytitle><manvolnum>5</manvolnum>
|
2013-01-22 14:42:23 +05:30
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
2013-08-11 19:35:26 +05:30
|
|
|
<refentrytitle>newgidmap</refentrytitle><manvolnum>1</manvolnum>
|
2013-01-22 14:42:23 +05:30
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
|
|
|
<refentrytitle>newuidmap</refentrytitle><manvolnum>1</manvolnum>
|
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
2013-08-11 19:35:26 +05:30
|
|
|
<refentrytitle>newusers</refentrytitle><manvolnum>1</manvolnum>
|
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
|
|
|
<refentrytitle>subgid</refentrytitle><manvolnum>5</manvolnum>
|
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
|
|
|
<refentrytitle>useradd</refentrytitle><manvolnum>8</manvolnum>
|
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
|
|
|
<refentrytitle>userdel</refentrytitle><manvolnum>8</manvolnum>
|
2013-01-22 14:42:23 +05:30
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
|
|
|
<refentrytitle>usermod</refentrytitle><manvolnum>8</manvolnum>
|
|
|
|
</citerefentry>,
|
2013-08-11 19:35:26 +05:30
|
|
|
<citerefentry>
|
|
|
|
<refentrytitle>user_namespaces</refentrytitle><manvolnum>7</manvolnum>
|
|
|
|
</citerefentry>.
|
2013-01-22 14:42:23 +05:30
|
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
</refentry>
|