mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-07-22 02:35:25 +00:00
![Thomas Haller](/assets/img/avatar_default.png)
This makes NetworkManager independent of <polkit/polkit.h> development headers and libpolkit-gobject-1.so library. Instead communicate directly with polkit using its DBUS interface. PolicyKit support is now always compiled in. You can control polkit authorization with the configuration option [main] auth-polkit=yes|no If the configure option is omitted, a build time default value is used. This default value can be set with the configure option --enable-polkit. This commit adds a new class NMAuthManager that reimplements the relevant DBUS client parts. It takes source code from the polkit library. https://bugzilla.gnome.org/show_bug.cgi?id=734146 Signed-off-by: Thomas Haller <thaller@redhat.com>
520 lines
21 KiB
XML
520 lines
21 KiB
XML
<?xml version='1.0'?> <!--*-nxml-*-->
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
|
|
|
<!--
|
|
Copyright (C) 2010 - 2013 Red Hat, Inc.
|
|
-->
|
|
|
|
<refentry id="NetworkManager.conf">
|
|
<refentryinfo>
|
|
<title>NetworkManager.conf</title>
|
|
<author>NetworkManager developers</author>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>NetworkManager.conf</refentrytitle>
|
|
<manvolnum>5</manvolnum>
|
|
<refmiscinfo class="source">NetworkManager</refmiscinfo>
|
|
<refmiscinfo class="manual">Configuration</refmiscinfo>
|
|
<refmiscinfo class="version">0.9.10</refmiscinfo>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>NetworkManager.conf</refname>
|
|
<refpurpose>NetworkManager configuration file</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<para><filename>/etc/NetworkManager/NetworkManager.conf</filename>,
|
|
<filename>/etc/NetworkManager/conf.d/<replaceable>name</replaceable>.conf</filename>
|
|
</para>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
<para>This is a configuration file for NetworkManager. It is used
|
|
to set up various aspects of NetworkManager's behavior. The
|
|
location of the file may be changed through use of the
|
|
<option>--config</option> argument for NetworkManager.
|
|
</para>
|
|
<para>If a default <literal>NetworkManager.conf</literal> is
|
|
provided by your distribution's packages, you should not modify
|
|
it, since your changes may get overwritten by package
|
|
updates. Instead, you can add additional <literal>.conf</literal>
|
|
files to the <literal>conf.d</literal> directory. These will be read in order,
|
|
with later files overriding earlier ones.
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>File Format</title>
|
|
<para>
|
|
The configuration file format is so-called key file (sort of
|
|
ini-style format). It consists of sections (groups) of
|
|
key-value pairs. Lines beginning with a '#' and blank lines are
|
|
considered comments. Sections are started by a header line
|
|
containing the section enclosed in '[' and ']', and ended
|
|
implicitly by the start of the next section or the end of the
|
|
file. Each key-value pair must be contained in a section.
|
|
</para>
|
|
<para>
|
|
For keys that take a list of devices as their value, you can
|
|
specify devices by their MAC addresses or interface names, or
|
|
"*" to specify all devices.
|
|
</para>
|
|
<para>
|
|
Minimal system settings configuration file looks like this:
|
|
<programlisting>
|
|
[main]
|
|
plugins=keyfile
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
As an extension to the normal keyfile format, you can also
|
|
append a value to a previously-set list-valued key by doing:
|
|
<programlisting>
|
|
plugins+=another-plugin
|
|
</programlisting>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>main</literal> section</title>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>plugins</varname></term>
|
|
<listitem>
|
|
<para>
|
|
Lists system settings plugin names separated by ','. These
|
|
plugins are used to read and write system-wide
|
|
connections. When multiple plugins are specified, the
|
|
connections are read from all listed plugins. When writing
|
|
connections, the plugins will be asked to save the
|
|
connection in the order listed here; if the first plugin
|
|
cannot write out that connection type (or can't write out
|
|
any connections) the next plugin is tried, etc. If none of
|
|
the plugins can save the connection, an error is returned
|
|
to the user.
|
|
</para>
|
|
<para>
|
|
If NetworkManager defines a distro-specific
|
|
network-configuration plugin for your system, then that
|
|
will normally be listed here. (See below for the available
|
|
plugins.) Note that the <literal>keyfile</literal> plugin
|
|
is always appended to the end of this list (if it doesn't
|
|
already appear earlier in the list), so if there is no
|
|
distro-specific plugin for your system then you can leave
|
|
this key unset and NetworkManager will fall back to using
|
|
<literal>keyfile</literal>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>monitor-connection-files</varname></term>
|
|
<listitem><para>Whether the configured settings plugin(s)
|
|
should set up file monitors and immediately pick up changes
|
|
made to connection files while NetworkManager is running. This
|
|
is disabled by default; NetworkManager will only read
|
|
the connection files at startup, and when explicitly requested
|
|
via the ReloadConnections D-Bus call. If this key is set to
|
|
'<literal>true</literal>', then NetworkManager will reload
|
|
connection files any time they changed.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>auth-polkit</varname></term>
|
|
<listitem><para>Whether the system uses PolicyKit for authorization.
|
|
If <literal>false</literal>, all requests will be allowed. If
|
|
<literal>true</literal>, non-root requests are authorized using PolicyKit.
|
|
The default value is <literal>@NM_CONFIG_DEFAULT_AUTH_POLKIT_TEXT@</literal>.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>dhcp</varname></term>
|
|
<listitem><para>This key sets up what DHCP client
|
|
NetworkManager will use. Presently
|
|
<literal>dhclient</literal> and <literal>dhcpcd</literal>
|
|
are supported. The client configured here should be
|
|
available on your system too. If this key is missing,
|
|
available DHCP clients are looked for in this order:
|
|
dhclient, dhcpcd.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>no-auto-default</varname></term>
|
|
<listitem><para>Comma-separated list of devices for which
|
|
NetworkManager shouldn't create default wired connection
|
|
(Auto eth0). By default, NetworkManager creates a temporary
|
|
wired connection for any Ethernet device that is managed and
|
|
doesn't have a connection configured. List a device in this
|
|
option to inhibit creating the default connection for the
|
|
device. May have the special value <literal>*</literal> to
|
|
apply to all devices.</para>
|
|
<para>When the default wired connection is deleted or saved
|
|
to a new persistent connection by a plugin, the device is
|
|
added to a list in the file
|
|
<filename>/var/run/NetworkManager/no-auto-default.state</filename>
|
|
to prevent creating the default connection for that device
|
|
again.</para>
|
|
<para>
|
|
<programlisting>
|
|
no-auto-default=00:22:68:5c:5d:c4,00:1e:65:ff:aa:ee
|
|
no-auto-default=eth0,eth1
|
|
no-auto-default=*
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ignore-carrier</varname></term>
|
|
<listitem>
|
|
<para>
|
|
Comma-separated list of devices for which NetworkManager
|
|
will (partially) ignore the carrier state. Normally, for
|
|
device types that support carrier-detect, such as Ethernet
|
|
and InfiniBand, NetworkManager will only allow a
|
|
connection to be activated on the device if carrier is
|
|
present (ie, a cable is plugged in), and it will
|
|
deactivate the device if carrier drops for more than a few
|
|
seconds.
|
|
</para>
|
|
<para>
|
|
Listing a device here will allow activating connections on
|
|
that device even when it does not have carrier, provided
|
|
that the connection uses only statically-configured IP
|
|
addresses. Additionally, it will allow any active
|
|
connection (whether static or dynamic) to remain active on
|
|
the device when carrier is lost.
|
|
</para>
|
|
<para>
|
|
May have the special value <literal>*</literal> to apply
|
|
to all devices.
|
|
</para>
|
|
<para>
|
|
Note that the "carrier" property of NMDevices and device D-Bus
|
|
interfaces will still reflect the actual device state; it's just
|
|
that NetworkManager will not make use of that information.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>dns</varname></term>
|
|
<listitem><para>Set the DNS (<filename>resolv.conf</filename>) processing mode.</para>
|
|
<para><literal>default</literal>: The default if the key is
|
|
not specified. NetworkManager will update
|
|
<filename>resolv.conf</filename> to reflect the nameservers
|
|
provided by currently active connections.</para>
|
|
<para><literal>dnsmasq</literal>: NetworkManager will run
|
|
dnsmasq as a local caching nameserver, using a "split DNS"
|
|
configuration if you are connected to a VPN, and then update
|
|
<filename>resolv.conf</filename> to point to the local
|
|
nameserver.</para>
|
|
<para><literal>unbound</literal>: NetworkManager will talk
|
|
to unbound and dnssec-triggerd, providing a "split DNS"
|
|
configuration with DNSSEC support. The /etc/resolv.conf
|
|
will be managed by dnssec-trigger daemon.</para>
|
|
<para><literal>none</literal>: NetworkManager will not
|
|
modify resolv.conf.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>debug</varname></term>
|
|
<listitem><para>Comma separated list of options to aid
|
|
debugging. This value will be combined with the environment
|
|
variable <literal>NM_DEBUG</literal>. Currently the following
|
|
values are supported:</para>
|
|
<para>
|
|
<literal>RLIMIT_CORE</literal>: set ulimit -c unlimited
|
|
to write out core dumps.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>keyfile</literal> section</title>
|
|
<para>This section contains keyfile-plugin-specific options, and
|
|
is normally only used when you are not using any other
|
|
distro-specific plugin.</para>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>hostname</varname></term>
|
|
<listitem><para>Set a persistent hostname.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>unmanaged-devices</varname></term>
|
|
<listitem><para>Set devices that should be ignored by
|
|
NetworkManager when using the <literal>keyfile</literal>
|
|
plugin. Devices are specified in the following
|
|
format:</para>
|
|
<para><literal>mac:<hwaddr></literal> or
|
|
<literal>interface-name:<ifname></literal>. Here
|
|
<literal>hwaddr</literal> is the MAC address of the device
|
|
to be ignored, in hex-digits-and-colons notation.
|
|
<literal>ifname</literal> is the interface name of the
|
|
ignored device.</para>
|
|
<para>Multiple entries are separated with semicolons. No
|
|
spaces are allowed in the value.</para>
|
|
<para>
|
|
Example:
|
|
<programlisting>
|
|
unmanaged-devices=interface-name:em4
|
|
unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4;interface-name:eth2
|
|
</programlisting>
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>ifupdown</literal> section</title>
|
|
<para>This section contains ifupdown-specific options and thus only
|
|
has effect when using the <literal>ifupdown</literal> plugin.</para>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>managed</varname></term>
|
|
<listitem><para>If set to <literal>true</literal>, then
|
|
interfaces listed in
|
|
<filename>/etc/network/interfaces</filename> are managed by
|
|
NetworkManager. If set to <literal>false</literal>, then
|
|
any interface listed in
|
|
<filename>/etc/network/interfaces</filename> will be ignored
|
|
by NetworkManager. Remember that NetworkManager controls the
|
|
default route, so because the interface is ignored,
|
|
NetworkManager may assign the default route to some other
|
|
interface.</para>
|
|
<para>
|
|
The default value is <literal>false</literal>.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>logging</literal> section</title>
|
|
<para>This section controls NetworkManager's logging. Any
|
|
settings here are overridden by the <option>--log-level</option>
|
|
and <option>--log-domains</option> command-line options.</para>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>level</varname></term>
|
|
<listitem><para>The default logging verbosity level.
|
|
One of <literal>ERR</literal>,
|
|
<literal>WARN</literal>, <literal>INFO</literal>,
|
|
<literal>DEBUG</literal>. The ERR level logs only critical
|
|
errors. WARN logs warnings that may reflect operation.
|
|
INFO logs various informational messages that are useful for
|
|
tracking state and operations. DEBUG enables verbose
|
|
logging for debugging purposes. Subsequent levels also log
|
|
all messages from earlier levels; thus setting the log level
|
|
to INFO also logs error and warning messages.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>domains</varname></term>
|
|
<listitem><para>The following log domains are available:
|
|
PLATFORM, RFKILL, ETHER, WIFI, BT, MB, DHCP4, DHCP6, PPP,
|
|
WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT,
|
|
AGENTS, SETTINGS, SUSPEND, CORE, DEVICE, OLPC, WIMAX,
|
|
INFINIBAND, FIREWALL, ADSL, BOND, VLAN, BRIDGE, DBUS_PROPS,
|
|
TEAM, CONCHECK, DCB, DISPATCH.</para>
|
|
<para>In addition, these special domains can be used: NONE,
|
|
ALL, DEFAULT, DHCP, IP.</para>
|
|
<para>You can specify per-domain log level overrides by
|
|
adding a colon and a log level to any domain. E.g.,
|
|
"<literal>WIFI:DEBUG</literal>".</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<para>Domain descriptions:
|
|
<simplelist type="horiz" columns="1">
|
|
<member>PLATFORM : OS (platform) operations</member>
|
|
<member>RFKILL : RFKill subsystem operations</member>
|
|
<member>ETHER : Ethernet device operations</member>
|
|
<member>WIFI : Wi-Fi device operations</member>
|
|
<member>BT : Bluetooth operations</member>
|
|
<member>MB : Mobile broadband operations</member>
|
|
<member>DHCP4 : DHCP for IPv4</member>
|
|
<member>DHCP6 : DHCP for IPv6</member>
|
|
<member>PPP : Point-to-point protocol operations</member>
|
|
<member>WIFI_SCAN : Wi-Fi scanning operations</member>
|
|
<member>IP4 : IPv4-related operations</member>
|
|
<member>IP6 : IPv6-related operations</member>
|
|
<member>AUTOIP4 : AutoIP (avahi) operations</member>
|
|
<member>DNS : Domain Name System related operations</member>
|
|
<member>VPN : Virtual Private Network connections and operations</member>
|
|
<member>SHARING : Connection sharing</member>
|
|
<member>SUPPLICANT : WPA supplicant related operations</member>
|
|
<member>AGENTS : Secret agents operations and communication</member>
|
|
<member>SETTINGS : Settings/config service operations</member>
|
|
<member>SUSPEND : Suspend/resume</member>
|
|
<member>CORE : Core daemon and policy operations</member>
|
|
<member>DEVICE : Activation and general interface operations</member>
|
|
<member>OLPC : OLPC Mesh device operations</member>
|
|
<member>WIMAX : WiMAX device operations</member>
|
|
<member>INFINIBAND : InfiniBand device operations</member>
|
|
<member>FIREWALL : FirewallD related operations</member>
|
|
<member>ADSL : ADSL device operations</member>
|
|
<member>BOND : Bonding operations</member>
|
|
<member>VLAN : VLAN operations</member>
|
|
<member>BRIDGE : Bridging operations</member>
|
|
<member>DBUS_PROPS : D-Bus property changes</member>
|
|
<member>TEAM : Teaming operations</member>
|
|
<member>CONCHECK : Connectivity check</member>
|
|
<member>DCB : Data Center Bridging (DCB) operations</member>
|
|
<member>DISPATCH : Dispatcher scripts</member>
|
|
<member> </member>
|
|
<member>NONE : when given by itself logging is disabled</member>
|
|
<member>ALL : all log domains</member>
|
|
<member>DEFAULT : default log domains</member>
|
|
<member>DHCP : shortcut for "DHCP4,DHCP6"</member>
|
|
<member>IP : shortcut for "IP4,IP6"</member>
|
|
<member> </member>
|
|
<member>HW : deprecated alias for "PLATFORM"</member>
|
|
</simplelist>
|
|
</para>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title><literal>connectivity</literal> section</title>
|
|
<para>This section controls NetworkManager's optional connectivity
|
|
checking functionality. This allows NetworkManager to detect
|
|
whether or not the system can actually access the internet or
|
|
whether it is behind a captive portal.</para>
|
|
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>uri</varname></term>
|
|
<listitem><para>The URI of a web page to periodically
|
|
request when connectivity is being checked. This page
|
|
should return the header "X-NetworkManager-Status" with a
|
|
value of "online". Alternatively, it's body content should
|
|
be set to "NetworkManager is online". The body content
|
|
check can be controlled by the <literal>response</literal>
|
|
option. If this option is blank or missing, connectivity
|
|
checking is disabled.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>interval</varname></term>
|
|
<listitem><para>Specified in seconds; controls how often
|
|
connectivity is checked when a network connection exists. If
|
|
set to 0 connectivity checking is disabled. If missing, the
|
|
default is 300 seconds.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>response</varname></term>
|
|
<listitem><para>If set controls what body content
|
|
NetworkManager checks for when requesting the URI for
|
|
connectivity checking. If missing, defaults to
|
|
"NetworkManager is online" </para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Plugins</title>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><varname>keyfile</varname></term>
|
|
<listitem>
|
|
<para>
|
|
The <literal>keyfile</literal> plugin is the generic
|
|
plugin that supports all the connection types and
|
|
capabilities that NetworkManager has. It writes files out
|
|
in an .ini-style format in
|
|
/etc/NetworkManager/system-connections.
|
|
</para>
|
|
<para>
|
|
The stored connection file may contain passwords and
|
|
private keys, so it will be made readable only to root,
|
|
and the plugin will ignore files that are readable or
|
|
writeable by any user or group other than root.
|
|
</para>
|
|
<para>
|
|
This plugin is always active, and will automatically be
|
|
used to store any connections that aren't supported by any
|
|
other active plugin.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><varname>ifcfg-rh</varname></term>
|
|
<listitem>
|
|
<para>
|
|
This plugin is used on the Fedora and Red Hat Enterprise
|
|
Linux distributions to read and write configuration from
|
|
the standard
|
|
<filename>/etc/sysconfig/network-scripts/ifcfg-*</filename>
|
|
files. It currently supports reading Ethernet, Wi-Fi,
|
|
InfiniBand, VLAN, Bond, Bridge, and Team connections.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ifcfg-suse</varname></term>
|
|
<listitem>
|
|
<para>
|
|
This plugin is only provided for simple backward
|
|
compatibility with SUSE and OpenSUSE configuration. Most
|
|
setups should be using the <literal>keyfile</literal>
|
|
plugin instead. The <literal>ifcfg-suse</literal> plugin
|
|
supports reading Ethernet and Wi-Fi connections, but does
|
|
not support saving any connection types.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><varname>ifupdown</varname></term>
|
|
<listitem>
|
|
<para>
|
|
This plugin is used on the Debian and Ubuntu
|
|
distributions, and reads Ethernet and Wi-Fi connections
|
|
from <filename>/etc/network/interfaces</filename>.
|
|
</para>
|
|
<para>
|
|
This plugin is read-only; any connections (of any type)
|
|
added from within NetworkManager when you are using this
|
|
plugin will be saved using the <literal>keyfile</literal>
|
|
plugin instead.
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>See Also</title>
|
|
<para>
|
|
<citerefentry><refentrytitle>NetworkManager</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nmcli</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nmcli-examples</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nm-online</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nm-settings</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nm-applet</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>nm-connection-editor</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
|
</para>
|
|
</refsect1>
|
|
</refentry>
|