добавление пользователя

Для добавления пользователя идём в меню Система-Доступ-Пользователи. Нажимаем плюс и добавляем пользователя: image alt text image alt text Далее редактируем пользователя - вводим для него пароль, и другие парамтры, среди них следует обратить внимание на оболочку - по умолчанию выбрана /usr/bin/nologin - в этом случае пользователь не сможет попасть в консоль, для успешного логина по ssh необходимо выбрать другую оболочку, например /bin/sh image alt text image alt text Для возможности логиниться в ssh по ключам необходимо скопировать ваш ключ в поле Авторизованные ключи: image alt text image alt text Также мы можем добавить нашего пользователя в определённую группу: image alt text image alt text image alt text image alt text

Интеграция с freeipa

  1. в System -> Access -> Servers нужно добавить LDAP сервер:
    • descriptive name: freeipa (можно что угодно)
    • hostname or ip address:
    • bind credentials - user dn: uid=admin,cn=users,cn=accounts,dc=rnd,dc=jun,dc=profi
    • bind credentials - password: <пароль>
    • search scope: entire subtree
    • base dn: dc=rnd,dc=jun,dc=profi
    • authentication containers: выбрать всё
    • user naming attibute: uid
    • default groups: admins
    • automatic user creation: yes
  2. далее нужно в System -> Access -> Tester попытаться "зайти" под всеми тремя доменными пользователями. для всех трёх должна отобразиться надпись "User authenticated successfully". эта операция создаст на opnsense этих пользователей, причём у всех них будет группа admins, что позволит им всем заходить в web ui
  3. нужно подредактировать пользователей
    • нужно запретить andrey доступ (он не в группе jun-net). в System -> Access -> Users нажимаем на редактирование пользователя andrey и ставим галочку disabled и убираем группу admins
    • нужно для admin и max добавить Login shell, чтобы работал ssh. для двух этих пользователей в редактировании выбираем /bin/sh в Login shell
  4. стоит ещё отключить эту группу всем новым доменным пользователям. в System -> Access -> Servers редактируем наш freeipa и убираем все группы из Default groups
  5. теперь нужно настроить много чего. всё это происходит в System -> Settings -> Administration
    • вход в webui. внизу в разделе Authentication в Server выбираем И freeipa И Local Database (если забыть отметить Local Database, то можно отрезать ноги, потому что вход под root будет недоступен)
    • sudo. там же выбрать Sudo = Ask password и выбрать для судо группы wheel,admins (по умолчанию только wheel)
    • ssh. поставить галочку Enable Secure Shell, Login Group = wheel, admins, галочка на Permit password login

сертификаты

  1. генерация корневого сертификата CA: openssl req -x509 -newkey rsa:4096 -keyout ca.key -out ca.crt -nodes -subj "/CN=Jun Profi CA"
  2. ключ сервера + запрос на подпись в CA: openssl req -newkey rsa:2048 -keyout srv.key -out srv.csr -nodes -subj "/CN=git.jun.profi"
  3. подписать запрос CA: openssl x509 -req -in srv.csr -CA ca.crt -CAkey ca.key -out srv.crt -extfile <(printf "subjectAltName=DNS:git.jun.profi")