VSFTPD, Виртуальный (Гость) Пользователи с в имени пользователя

Я усилил различные ответы здесь для предложения то, что я думаю, хороший сценарий для создания учетных записей пользователей. По общему признанию это не разработано для выполнения команды за один раз от ssh; это - moreso, разработанный, чтобы быть скриптом, запущенным при компиляции основанного на пакете изображения OS X (как создано Casper Imaging или InstaDMG).

#!/bin/bash
# This script creates a user account under Mac OS X
# (tested with 10.5 and 10.6; likely works with 10.4 but not earlier)
# Written by Clinton Blackmore, based on work at
# http://serverfault.com/questions/20702

# === Typically, this is all you need to edit ===

USERNAME=joeadmin
FULLNAME="Joe Admin"
PASSWORD="hard_to_hack"

# A list of (secondary) groups the user should belong to
# This makes the difference between admin and non-admin users.
# Leave only one uncommented
#SECONDARY_GROUPS=""  # for a non-admin user
SECONDARY_GROUPS="admin _lpadmin _appserveradm _appserverusr" # for an admin user

# ====

if [[ $UID -ne 0 ]]; then echo "Please run $0 as root." && exit 1; fi

# Find out the next available user ID
MAXID=$(dscl . -list /Users UniqueID | awk '{print $2}' | sort -ug | tail -1)
USERID=$((MAXID+1))

# Create the user account
dscl . -create /Users/$USERNAME
dscl . -create /Users/$USERNAME UserShell /bin/bash
dscl . -create /Users/$USERNAME RealName "$FULLNAME"
dscl . -create /Users/$USERNAME UniqueID "$USERID"
dscl . -create /Users/$USERNAME PrimaryGroupID 20
dscl . -create /Users/$USERNAME NFSHomeDirectory /Users/$USERNAME

dscl . -passwd /Users/$USERNAME $PASSWORD


# Add use to any specified groups
for GROUP in $SECONDARY_GROUPS ; do
    dseditgroup -o edit -t user -a $USERNAME $GROUP
done

# Create the home directory
createhomedir -c > /dev/null

echo "Created user #$USERID: $USERNAME ($FULLNAME)"

Сценарий действительно позволяет Вам указать, который группируется, пользователь должен принадлежать. Кажется мне, что это могло бы отличаться в зависимости от версии OS X, который Вы выполняете. Я получаю различные результаты, когда я работаю id как администратор на OS X 10.6, чем я делаю при выполнении как администратор на OS X 10.5.

1
задан 20 April 2011 в 19:14
2 ответа

Необходимо попытаться использовать SQL или бэкенд RADIUS для подлинных логинов, и имена пользователей должны быть сохранены как электронные письма в sql дб. Это работает, я протестировал его.

0
ответ дан 4 December 2019 в 10:27

Файловые системы Linux могут вполне счастливо справиться от имени каталога так проблема, которую Вы видите, скорее всего, с vsftpd. Вы попытались использовать user.domain.tld в земельном участке user@domain.tld?

0
ответ дан 4 December 2019 в 10:27

Теги

Похожие вопросы