Config.in 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319
  1. #
  2. # For a description of the syntax of this configuration file,
  3. # see scripts/kbuild/config-language.txt.
  4. #
  5. menu "Login/Password Management Utilities"
  6. config BUSYBOX_FEATURE_SHADOWPASSWDS
  7. bool "Support for shadow passwords"
  8. default y
  9. help
  10. Build support for shadow password in /etc/shadow. This file is only
  11. readable by root and thus the encrypted passwords are no longer
  12. publicly readable.
  13. config BUSYBOX_USE_BB_PWD_GRP
  14. bool "Use internal password and group functions rather than system functions"
  15. default y
  16. help
  17. If you leave this disabled, busybox will use the system's password
  18. and group functions. And if you are using the GNU C library
  19. (glibc), you will then need to install the /etc/nsswitch.conf
  20. configuration file and the required /lib/libnss_* libraries in
  21. order for the password and group functions to work. This generally
  22. makes your embedded system quite a bit larger.
  23. Enabling this option will cause busybox to directly access the
  24. system's /etc/password, /etc/group files (and your system will be
  25. smaller, and I will get fewer emails asking about how glibc NSS
  26. works). When this option is enabled, you will not be able to use
  27. PAM to access remote LDAP password servers and whatnot. And if you
  28. want hostname resolution to work with glibc, you still need the
  29. /lib/libnss_* libraries.
  30. If you need to use glibc's nsswitch.conf mechanism
  31. (e.g. if user/group database is NOT stored in /etc/passwd etc),
  32. you must NOT use this option.
  33. If you enable this option, it will add about 1.5k.
  34. config BUSYBOX_USE_BB_SHADOW
  35. bool "Use internal shadow password functions"
  36. default y
  37. depends on BUSYBOX_USE_BB_PWD_GRP && BUSYBOX_FEATURE_SHADOWPASSWDS
  38. help
  39. If you leave this disabled, busybox will use the system's shadow
  40. password handling functions. And if you are using the GNU C library
  41. (glibc), you will then need to install the /etc/nsswitch.conf
  42. configuration file and the required /lib/libnss_* libraries in
  43. order for the shadow password functions to work. This generally
  44. makes your embedded system quite a bit larger.
  45. Enabling this option will cause busybox to directly access the
  46. system's /etc/shadow file when handling shadow passwords. This
  47. makes your system smaller (and I will get fewer emails asking about
  48. how glibc NSS works). When this option is enabled, you will not be
  49. able to use PAM to access shadow passwords from remote LDAP
  50. password servers and whatnot.
  51. config BUSYBOX_USE_BB_CRYPT
  52. bool "Use internal crypt functions"
  53. default y
  54. help
  55. Busybox has internal DES and MD5 crypt functions.
  56. They produce results which are identical to corresponding
  57. standard C library functions.
  58. If you leave this disabled, busybox will use the system's
  59. crypt functions. Most C libraries use large (~70k)
  60. static buffers there, and also combine them with more general
  61. DES encryption/decryption.
  62. For busybox, having large static buffers is undesirable,
  63. especially on NOMMU machines. Busybox also doesn't need
  64. DES encryption/decryption and can do with smaller code.
  65. If you enable this option, it will add about 4.8k of code
  66. if you are building dynamically linked executable.
  67. In static build, it makes code _smaller_ by about 1.2k,
  68. and likely many kilobytes less of bss.
  69. config BUSYBOX_USE_BB_CRYPT_SHA
  70. bool "Enable SHA256/512 crypt functions"
  71. default n
  72. depends on BUSYBOX_USE_BB_CRYPT
  73. help
  74. Enable this if you have passwords starting with "$5$" or "$6$"
  75. in your /etc/passwd or /etc/shadow files. These passwords
  76. are hashed using SHA256 and SHA512 algorithms. Support for them
  77. was added to glibc in 2008.
  78. With this option off, login will fail password check for any
  79. user which has password encrypted with these algorithms.
  80. config BUSYBOX_ADDGROUP
  81. bool "addgroup"
  82. default y
  83. help
  84. Utility for creating a new group account.
  85. config BUSYBOX_FEATURE_ADDGROUP_LONG_OPTIONS
  86. bool "Enable long options"
  87. default n
  88. depends on BUSYBOX_ADDGROUP && BUSYBOX_LONG_OPTS
  89. help
  90. Support long options for the addgroup applet.
  91. config BUSYBOX_FEATURE_ADDUSER_TO_GROUP
  92. bool "Support for adding users to groups"
  93. default n
  94. depends on BUSYBOX_ADDGROUP
  95. help
  96. If called with two non-option arguments,
  97. addgroup will add an existing user to an
  98. existing group.
  99. config BUSYBOX_DELGROUP
  100. bool "delgroup"
  101. default y
  102. help
  103. Utility for deleting a group account.
  104. config BUSYBOX_FEATURE_DEL_USER_FROM_GROUP
  105. bool "Support for removing users from groups"
  106. default n
  107. depends on BUSYBOX_DELGROUP
  108. help
  109. If called with two non-option arguments, deluser
  110. or delgroup will remove an user from a specified group.
  111. config BUSYBOX_FEATURE_CHECK_NAMES
  112. bool "Enable sanity check on user/group names in adduser and addgroup"
  113. default n
  114. depends on BUSYBOX_ADDUSER || BUSYBOX_ADDGROUP
  115. help
  116. Enable sanity check on user and group names in adduser and addgroup.
  117. To avoid problems, the user or group name should consist only of
  118. letters, digits, underscores, periods, at signs and dashes,
  119. and not start with a dash (as defined by IEEE Std 1003.1-2001).
  120. For compatibility with Samba machine accounts "$" is also supported
  121. at the end of the user or group name.
  122. config BUSYBOX_ADDUSER
  123. bool "adduser"
  124. default y
  125. help
  126. Utility for creating a new user account.
  127. config BUSYBOX_FEATURE_ADDUSER_LONG_OPTIONS
  128. bool "Enable long options"
  129. default n
  130. depends on BUSYBOX_ADDUSER && BUSYBOX_LONG_OPTS
  131. help
  132. Support long options for the adduser applet.
  133. config BUSYBOX_FIRST_SYSTEM_ID
  134. int "First valid system uid or gid for adduser and addgroup"
  135. depends on BUSYBOX_ADDUSER || BUSYBOX_ADDGROUP
  136. range 0 64900
  137. default 100
  138. help
  139. First valid system uid or gid for adduser and addgroup
  140. config BUSYBOX_LAST_SYSTEM_ID
  141. int "Last valid system uid or gid for adduser and addgroup"
  142. depends on BUSYBOX_ADDUSER || BUSYBOX_ADDGROUP
  143. range 0 64900
  144. default 999
  145. help
  146. Last valid system uid or gid for adduser and addgroup
  147. config BUSYBOX_DELUSER
  148. bool "deluser"
  149. default y
  150. help
  151. Utility for deleting a user account.
  152. config BUSYBOX_GETTY
  153. bool "getty"
  154. default y
  155. select BUSYBOX_FEATURE_SYSLOG
  156. help
  157. getty lets you log in on a tty, it is normally invoked by init.
  158. config BUSYBOX_FEATURE_UTMP
  159. bool "Support utmp file"
  160. depends on BUSYBOX_GETTY || BUSYBOX_LOGIN || BUSYBOX_SU || BUSYBOX_WHO
  161. default n
  162. help
  163. The file /var/run/utmp is used to track who is currently logged in.
  164. config BUSYBOX_FEATURE_WTMP
  165. bool "Support wtmp file"
  166. depends on BUSYBOX_GETTY || BUSYBOX_LOGIN || BUSYBOX_SU || BUSYBOX_LAST
  167. default n
  168. select BUSYBOX_FEATURE_UTMP
  169. help
  170. The file /var/run/wtmp is used to track when user's have logged into
  171. and logged out of the system.
  172. config BUSYBOX_LOGIN
  173. bool "login"
  174. default y
  175. select BUSYBOX_FEATURE_SUID
  176. select BUSYBOX_FEATURE_SYSLOG
  177. help
  178. login is used when signing onto a system.
  179. Note that Busybox binary must be setuid root for this applet to
  180. work properly.
  181. config BUSYBOX_PAM
  182. bool "Support for PAM (Pluggable Authentication Modules)"
  183. default n
  184. depends on BUSYBOX_LOGIN
  185. help
  186. Use PAM in login(1) instead of direct access to password database.
  187. config BUSYBOX_LOGIN_SCRIPTS
  188. bool "Support for login scripts"
  189. depends on BUSYBOX_LOGIN
  190. default n
  191. help
  192. Enable this if you want login to execute $LOGIN_PRE_SUID_SCRIPT
  193. just prior to switching from root to logged-in user.
  194. config BUSYBOX_FEATURE_NOLOGIN
  195. bool "Support for /etc/nologin"
  196. default y
  197. depends on BUSYBOX_LOGIN
  198. help
  199. The file /etc/nologin is used by (some versions of) login(1).
  200. If it exists, non-root logins are prohibited.
  201. config BUSYBOX_FEATURE_SECURETTY
  202. bool "Support for /etc/securetty"
  203. default y
  204. depends on BUSYBOX_LOGIN
  205. help
  206. The file /etc/securetty is used by (some versions of) login(1).
  207. The file contains the device names of tty lines (one per line,
  208. without leading /dev/) on which root is allowed to login.
  209. config BUSYBOX_PASSWD
  210. bool "passwd"
  211. default y
  212. select BUSYBOX_FEATURE_SUID
  213. select BUSYBOX_FEATURE_SYSLOG
  214. help
  215. passwd changes passwords for user and group accounts. A normal user
  216. may only change the password for his/her own account, the super user
  217. may change the password for any account. The administrator of a group
  218. may change the password for the group.
  219. Note that Busybox binary must be setuid root for this applet to
  220. work properly.
  221. config BUSYBOX_FEATURE_PASSWD_WEAK_CHECK
  222. bool "Check new passwords for weakness"
  223. default n
  224. depends on BUSYBOX_PASSWD
  225. help
  226. With this option passwd will refuse new passwords which are "weak".
  227. config BUSYBOX_CRYPTPW
  228. bool "cryptpw"
  229. default n
  230. help
  231. Encrypts the given password with the crypt(3) libc function
  232. using the given salt. Debian has this utility under mkpasswd
  233. name. Busybox provides mkpasswd as an alias for cryptpw.
  234. config BUSYBOX_CHPASSWD
  235. bool "chpasswd"
  236. default n
  237. help
  238. Reads a file of user name and password pairs from standard input
  239. and uses this information to update a group of existing users.
  240. config BUSYBOX_SU
  241. bool "su"
  242. default y
  243. select BUSYBOX_FEATURE_SUID
  244. select BUSYBOX_FEATURE_SYSLOG
  245. help
  246. su is used to become another user during a login session.
  247. Invoked without a username, su defaults to becoming the super user.
  248. Note that Busybox binary must be setuid root for this applet to
  249. work properly.
  250. config BUSYBOX_FEATURE_SU_SYSLOG
  251. bool "Enable su to write to syslog"
  252. default y
  253. depends on BUSYBOX_SU
  254. config BUSYBOX_FEATURE_SU_CHECKS_SHELLS
  255. bool "Enable su to check user's shell to be listed in /etc/shells"
  256. depends on BUSYBOX_SU
  257. default y
  258. config BUSYBOX_SULOGIN
  259. bool "sulogin"
  260. default n
  261. select BUSYBOX_FEATURE_SYSLOG
  262. help
  263. sulogin is invoked when the system goes into single user
  264. mode (this is done through an entry in inittab).
  265. config BUSYBOX_VLOCK
  266. bool "vlock"
  267. default n
  268. select BUSYBOX_FEATURE_SUID
  269. help
  270. Build the "vlock" applet which allows you to lock (virtual) terminals.
  271. Note that Busybox binary must be setuid root for this applet to
  272. work properly.
  273. endmenu