apparmor.d/apparmor.d/abstractions/mapping/sshd

54 lines
1.4 KiB
Text

# apparmor.d - Full set of apparmor profiles
# Copyright (C) 2025 Alexandre Pujol <alexandre@pujol.io>
# SPDX-License-Identifier: GPL-2.0-only
# Minimal set of rules for sshd based hat mapping. Similar to sshd-session
abi <abi/4.0>,
include <abstractions/authentication>
include <abstractions/bus-system>
include <abstractions/consoles>
include <abstractions/nameservice-strict>
include <abstractions/wutmp>
capability audit_write,
capability chown,
capability dac_read_search,
capability kill,
capability setgid,
capability setuid,
capability sys_resource,
# sshd doesn't require net_admin. libpam-systemd tries to
# use it if available to set the send/receive buffers size,
# but will fall back to a non-privileged version if it fails.
deny capability net_admin,
network inet6 stream,
network netlink raw,
signal receive set=exists peer=@{p_systemd_journald},
signal receive set=hup peer=@{p_systemd},
unix bind type=stream addr=@@{udbus}/bus/sshd/system,
dbus send bus=system path=/org/freedesktop/login1
interface=org.freedesktop.login1.Manager
member={CreateSession,ReleaseSession,CreateSessionWithPIDFD}
peer=(name=org.freedesktop.login1, label="@{p_systemd_logind}"),
/etc/motd r,
/etc/locale.conf r,
@{run}/motd.dynamic rw,
@{run}/motd.dynamic.new rw,
@{PROC}/1/limits r,
/dev/ptmx rw,
/dev/pts/@{int} k,
include if exists <abstractions/mapping/sshd.d>
# vim:syntax=apparmor