1OBMC_IMAGE_EXTRA_INSTALL:append:ibm-ac-server = " mboxd max31785-msl phosphor-msl-verify liberation-fonts uart-render-controller first-boot-set-hostname"
2OBMC_IMAGE_EXTRA_INSTALL:append:p10bmc = " mboxd"
3
4IMAGE_FEATURES:append = " obmc-dbus-monitor"
5
6# remove so things fit in available flash space
7IMAGE_FEATURES:remove:witherspoon = "obmc-user-mgmt-ldap"
8IMAGE_FEATURES:remove:witherspoon = "obmc-telemetry"
9
10# Remove unused rsyslog service in P10BMC
11IMAGE_FEATURES:remove:p10bmc = "obmc-remote-logging-mgmt"
12
13# Generic IPMI FRU vpd collection not needed on p10bmc
14IMAGE_FEATURES:remove:p10bmc = "obmc-fru-ipmi"
15
16# Optionally configure IBM service accounts
17#
18# To configure your distro, add the following line to its config:
19#     DISTRO_FEATURES += "ibm-service-account-policy"
20#
21# The service account policy is as follows:
22#   root - The root account remains present.  It is needed for internal
23#     accounting purposes and for debugging service access.
24#   admin - Provides administrative control over the BMC.  The role is
25#     SystemAdministrator.  Admin users have access to interfaces including:
26#     Redfish, REST APIs, Web.  No access to the BMC via: the BMC's physical
27#     console, SSH to the BMC's command line.
28#     IPMI access is not granted by default, but admins can authorize
29#     themselves and enable the IPMI service.
30#     The admin has access to the host console: ssh -p2200 admin@${bmc}.
31#     The admin account does not have a home directory.
32#   service - Provides IBM service and support representatives (SSRs, formerly
33#     known as customer engineers or CEs) access to the BMC.  The role is
34#     OemIBMServiceAgent.  The service user has full admin access, plus access
35#     to BMC interfaces intended only to service the BMC and host, including
36#     SSH access to the BMC's command line.
37#     The service account is not authorized to IPMI because of the inherent
38#     security weakness in the IPMI spec and also because the IPMI
39#     implementation was not enhanced to use the ACF support.
40#     The service account does not have a home directory.  The home directory is
41#     set to / (the root directory) to allow dropbear ssh connections.
42
43# Override defaults from meta-phosphor/conf/distro/include/phosphor-defaults.inc
44
45#IBM_EXTRA_USERS_PARAMS += " \
46#  usermod -p ${DEFAULT_OPENBMC_PASSWORD} root; \
47#  "
48
49# Add group "wheel" (before adding the "service" account).
50IBM_EXTRA_USERS_PARAMS += " \
51  groupadd wheel; \
52  "
53
54# Add the "admin" account.
55IBM_EXTRA_USERS_PARAMS += " \
56  useradd -M -d / --groups priv-admin,redfish,web -s /sbin/nologin admin; \
57  usermod -p ${DEFAULT_OPENBMC_PASSWORD} admin; \
58  "
59
60# Add the "service" account.
61IBM_EXTRA_USERS_PARAMS += " \
62  useradd -M -d / --groups priv-admin,redfish,web,wheel service; \
63  usermod -p ${DEFAULT_OPENBMC_PASSWORD} service; \
64  "
65
66# This is recipe specific to ensure it takes effect.
67EXTRA_USERS_PARAMS:pn-obmc-phosphor-image += "${@bb.utils.contains('DISTRO_FEATURES', 'ibm-service-account-policy', "${IBM_EXTRA_USERS_PARAMS}", '', d)}"
68
69# The service account needs sudo.
70IMAGE_INSTALL:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'ibm-service-account-policy', 'sudo', '', d)}"
71