Linux 用户管理

创建5个root权限的用户和10个普通权限的用户

以下是一个简单的shell脚本,用于创建5个root权限的用户和10个普通权限的用户。这个脚本需要以root用户身份运行,因为只有root用户才能创建新的用户。

#!/bin/bash

# Create 5 root users
for i in {1..5}
do
    username="rootuser$i"
    # Create the user with useradd command
    useradd $username
    # Set the user's password to 'password'
    echo "password" | passwd --stdin $username
    # Add the user to the 'root' group
    usermod -aG root $username
done

# Create 10 normal users
for i in {1..10}
do
    username="normaluser$i"
    # Create the user with useradd command
    useradd $username
    # Set the user's password to 'password'
    echo "password" | passwd --stdin $username
done

这个脚本使用了useradd命令来创建新的用户,passwd命令来设置用户的密码,以及usermod命令来将用户添加到root组。

请注意,这个脚本将所有新用户的密码都设置为'password'。在实际使用中,你应该为每个用户设置一个安全的密码。

此外,将用户添加到root组会赋予他们root权限,这可能会带来安全风险。在实际使用中,你应该谨慎地管理用户权限。

在运行这个脚本之前,你需要确保你的系统中已经安装了useraddpasswdusermod命令。这些命令通常在大多数Linux发行版中都已经预装。

案例2

创建5个root权限的用户和10个普通权限的用户,密码采用 用户名+10位包含字母数字特殊符号的随机值
以下是一个shell脚本,用于创建5个root权限的用户和10个普通权限的用户。每个用户的密码将设置为用户名后跟10位包含字母、数字和特殊符号的随机值。这个脚本需要以root用户身份运行,因为只有root用户才能创建新的用户。

#!/bin/bash

# Function to generate a random password
generate_password() {
    local user=$1
    local pass=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9@#$%^&*()' | fold -w 10 | head -n 1)
    echo "$user$pass"
}

# Create 5 root users
for i in {1..5}
do
    username="rootuser$i"
    password=$(generate_password $username)
    # Create the user with useradd command
    useradd $username
    # Set the user's password
    echo "$username:$password" | chpasswd
    # Add the user to the 'root' group
    usermod -aG root $username
    echo "Username: $username, Password: $password"
done

# Create 10 normal users
for i in {1..10}
do
    username="normaluser$i"
    password=$(generate_password $username)
    # Create the user with useradd command
    useradd $username
    # Set the user's password
    echo "$username:$password" | chpasswd
    echo "Username: $username, Password: $password"
done

这个脚本使用了useradd命令来创建新的用户,chpasswd命令来设置用户的密码,以及usermod命令来将用户添加到root组。

generate_password函数使用/dev/urandom来生成随机值,然后使用tr命令来选择字母、数字和特殊符号,使用fold命令来限制密码长度为10位,最后使用head命令来选择第一行(也就是第一个密码)。

请注意,将用户添加到root组会赋予他们root权限,这可能会带来安全风险。在实际使用中,你应该谨慎地管理用户权限。

在运行这个脚本之前,你需要确保你的系统中已经安装了useraddchpasswdusermod命令。这些命令通常在大多数Linux发行版中都已经预装。

案例3

创建5个root权限的用户和10个普通权限的用户,密码采用 用户名+10位包含字母数字特殊符号的随机值,并把创建的这些用户和密码写入到excel或者csv或者txt文件中去
以下是一个shell脚本,用于创建5个root权限的用户和10个普通权限的用户。每个用户的密码将设置为用户名后跟10位包含字母、数字和特殊符号的随机值。这个脚本需要以root用户身份运行,因为只有root用户才能创建新的用户。创建的用户和密码将被写入到一个CSV文件中。

#!/bin/bash

# Function to generate a random password
generate_password() {
    local user=$1
    local pass=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9@#$%^&*()' | fold -w 10 | head -n 1)
    echo "$user$pass"
}

# Create a CSV file and write the header
echo "Username,Password,Type" > users.csv

# Create 5 root users
for i in {1..5}
do
    username="rootuser$i"
    password=$(generate_password $username)
    # Create the user with useradd command
    useradd $username
    # Set the user's password
    echo "$username:$password" | chpasswd
    # Add the user to the 'root' group
    usermod -aG root $username
    # Write the user info to the CSV file
    echo "$username,$password,root" >> users.csv
done

# Create 10 normal users
for i in {1..10}
do
    username="normaluser$i"
    password=$(generate_password $username)
    # Create the user with useradd command
    useradd $username
    # Set the user's password
    echo "$username:$password" | chpasswd
    # Write the user info to the CSV file
    echo "$username,$password,normal" >> users.csv
done

这个脚本使用了useradd命令来创建新的用户,chpasswd命令来设置用户的密码,以及usermod命令来将用户添加到root组。

generate_password函数使用/dev/urandom来生成随机值,然后使用tr命令来选择字母、数字和特殊符号,使用fold命令来限制密码长度为10位,最后使用head命令来选择第一行(也就是第一个密码)。

请注意,将用户添加到root组会赋予他们root权限,这可能会带来安全风险。在实际使用中,你应该谨慎地管理用户权限。

在运行这个脚本之前,你需要确保你的系统中已经安装了useraddchpasswdusermod命令。这些命令通常在大多数Linux发行版中都已经预装。

案例4-del

如果你想删除刚刚创建的用户,你可以使用userdel命令。以下是一个shell脚本,用于删除刚刚创建的5个root权限的用户和10个普通权限的用户:

#!/bin/bash

# Delete 5 root users
for i in {1..5}
do
    username="rootuser$i"
    # Delete the user with userdel command
    userdel -r $username
done

# Delete 10 normal users
for i in {1..10}
do
    username="normaluser$i"
    # Delete the user with userdel command
    userdel -r $username
done

这个脚本使用了userdel命令来删除用户。-r选项用于删除用户的主目录以及该目录下的所有文件。

在运行这个脚本之前,你需要确保你的系统中已经安装了userdel命令。这个命令通常在大多数Linux发行版中都已经预装。

请注意,这个脚本需要以root用户身份运行,因为只有root用户才能删除用户。

posted @ 2023-11-07 14:52  三里清风18  阅读(21)  评论(0)    收藏  举报