2013-01-22 14:50:07 +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='newuidmap.1'>
|
2020-01-12 18:54:04 +05:30
|
|
|
<refentryinfo>
|
|
|
|
<author>
|
|
|
|
<firstname>Eric</firstname>
|
|
|
|
<surname>Biederman</surname>
|
|
|
|
<contrib>Creation, 2013</contrib>
|
|
|
|
</author>
|
|
|
|
</refentryinfo>
|
2013-01-22 14:50:07 +05:30
|
|
|
<refmeta>
|
|
|
|
<refentrytitle>newuidmap</refentrytitle>
|
|
|
|
<manvolnum>1</manvolnum>
|
|
|
|
<refmiscinfo class="sectdesc">User Commands</refmiscinfo>
|
|
|
|
<refmiscinfo class="source">shadow-utils</refmiscinfo>
|
|
|
|
<refmiscinfo class="version">&SHADOW_UTILS_VERSION;</refmiscinfo>
|
|
|
|
</refmeta>
|
|
|
|
<refnamediv id='name'>
|
|
|
|
<refname>newuidmap</refname>
|
|
|
|
<refpurpose>set the uid mapping of a user namespace</refpurpose>
|
|
|
|
</refnamediv>
|
|
|
|
|
|
|
|
<refsynopsisdiv id='synopsis'>
|
|
|
|
<cmdsynopsis>
|
|
|
|
<command>newuidmap</command>
|
|
|
|
<arg choice='plain'>
|
|
|
|
<replaceable>pid</replaceable>
|
|
|
|
</arg>
|
|
|
|
<arg choice='plain'>
|
|
|
|
<replaceable>uid</replaceable>
|
|
|
|
</arg>
|
|
|
|
<arg choice='plain'>
|
|
|
|
<replaceable>loweruid</replaceable>
|
|
|
|
</arg>
|
|
|
|
<arg choice='plain'>
|
|
|
|
<replaceable>count</replaceable>
|
|
|
|
</arg>
|
|
|
|
<arg choice='opt'>
|
|
|
|
<arg choice='plain'>
|
|
|
|
<replaceable>uid</replaceable>
|
|
|
|
</arg>
|
|
|
|
<arg choice='plain'>
|
|
|
|
<replaceable>loweruid</replaceable>
|
|
|
|
</arg>
|
|
|
|
<arg choice='plain'>
|
|
|
|
<replaceable>count</replaceable>
|
|
|
|
</arg>
|
|
|
|
<arg choice='opt'>
|
|
|
|
<replaceable>...</replaceable>
|
|
|
|
</arg>
|
|
|
|
</arg>
|
|
|
|
</cmdsynopsis>
|
|
|
|
</refsynopsisdiv>
|
|
|
|
|
|
|
|
<refsect1 id='description'>
|
|
|
|
<title>DESCRIPTION</title>
|
|
|
|
<para>
|
2016-07-02 20:09:18 +05:30
|
|
|
The <command>newuidmap</command> sets <filename>/proc/[pid]/uid_map</filename> based on its
|
2021-05-24 15:44:43 +05:30
|
|
|
command line arguments and the uids allowed. The subid delegation can come either from files
|
|
|
|
(<filename>/etc/subuid</filename>) or from the configured NSS subid module. Only one of them
|
|
|
|
can be chosen at a time. So, for example, if the subid source is configured as NSS and
|
|
|
|
<command>useradd</command> is executed, then the command will fail and the entry will not be
|
|
|
|
created in <filename>/etc/subuid</filename>.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
2014-06-10 04:07:16 +05:30
|
|
|
Note that the root user is not exempted from the requirement for a valid
|
|
|
|
<filename>/etc/subuid</filename> entry.
|
2013-01-22 14:50:07 +05:30
|
|
|
</para>
|
|
|
|
|
2013-08-13 22:58:07 +05:30
|
|
|
<para>
|
|
|
|
After the pid argument, <command>newuidmap</command> expects sets of 3 integers:
|
|
|
|
<variablelist>
|
|
|
|
<varlistentry>
|
|
|
|
<term>uid</term>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
2016-07-02 20:09:18 +05:30
|
|
|
Beginning of the range of UIDs inside the user namespace.
|
2013-08-13 22:58:07 +05:30
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
|
|
<term>loweruid</term>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
2016-07-02 20:09:18 +05:30
|
|
|
Beginning of the range of UIDs outside the user namespace.
|
2013-08-13 22:58:07 +05:30
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
|
|
<term>count</term>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
Length of the ranges (both inside and outside the user namespace).
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
|
|
</para>
|
2013-08-13 23:08:41 +05:30
|
|
|
|
|
|
|
<para>
|
|
|
|
<command>newuidmap</command> verifies that the caller is the owner
|
|
|
|
of the process indicated by <option>pid</option> and that for each
|
|
|
|
of the above sets, each of the UIDs in the range [loweruid,
|
2020-09-26 17:31:01 +05:30
|
|
|
loweruid+count) is allowed to the caller according to
|
2013-08-13 23:08:41 +05:30
|
|
|
<filename>/etc/subuid</filename> before setting
|
|
|
|
<filename>/proc/[pid]/uid_map</filename>.
|
|
|
|
</para>
|
2013-08-23 00:08:59 +05:30
|
|
|
<para>
|
|
|
|
Note that newuidmap may be used only once for a given process.
|
|
|
|
</para>
|
2013-01-22 14:50:07 +05:30
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1 id='options'>
|
|
|
|
<title>OPTIONS</title>
|
|
|
|
<para>
|
|
|
|
There currently are no options to the <command>newuidmap</command> command.
|
|
|
|
</para>
|
|
|
|
<variablelist remap='IP'>
|
|
|
|
</variablelist>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1 id='files'>
|
|
|
|
<title>FILES</title>
|
|
|
|
<variablelist>
|
|
|
|
<varlistentry>
|
|
|
|
<term><filename>/etc/subuid</filename></term>
|
|
|
|
<listitem>
|
2016-07-02 20:09:18 +05:30
|
|
|
<para>List of user's subordinate user IDs.</para>
|
2013-01-22 14:50:07 +05:30
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
|
|
<term><filename>/proc/[pid]/uid_map</filename></term>
|
|
|
|
<listitem>
|
|
|
|
<para>Mapping of uids from one between user namespaces.</para>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1 id='see_also'>
|
|
|
|
<title>SEE ALSO</title>
|
|
|
|
<para>
|
|
|
|
<citerefentry>
|
|
|
|
<refentrytitle>login.defs</refentrytitle><manvolnum>5</manvolnum>
|
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
2013-08-11 19:18:57 +05:30
|
|
|
<refentrytitle>newusers</refentrytitle><manvolnum>8</manvolnum>
|
2013-01-22 14:50:07 +05:30
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
2013-08-11 19:18:57 +05:30
|
|
|
<refentrytitle>subuid</refentrytitle><manvolnum>5</manvolnum>
|
2013-01-22 14:50:07 +05:30
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
2013-08-11 19:18:57 +05:30
|
|
|
<refentrytitle>useradd</refentrytitle><manvolnum>8</manvolnum>
|
2013-01-22 14:50:07 +05:30
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
2013-08-11 19:18:57 +05:30
|
|
|
<refentrytitle>usermod</refentrytitle><manvolnum>8</manvolnum>
|
2013-01-22 14:50:07 +05:30
|
|
|
</citerefentry>,
|
|
|
|
<citerefentry>
|
2013-08-11 19:18:57 +05:30
|
|
|
<refentrytitle>userdel</refentrytitle><manvolnum>8</manvolnum>
|
2013-01-22 14:50:07 +05:30
|
|
|
</citerefentry>.
|
|
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
</refentry>
|