用useradd创建一个普通用户user1(注意指定主目录,登陆shell等信息),切换到该用户,用umask或umask -s查阅默认权限,指明该默认值对3种用户分别减去了哪种权限
时间: 2023-05-04 11:00:41 浏览: 144
这句话的意思是:使用useradd创建一个普通用户user1(注意指定主目录,登陆shell等信息),切换到该用户,用umask或umask -s查阅默认权限,指明该默认值为3种用户分别减去了哪种权限。
相关问题
vsftp 想让用户访问/home/work 并且创建文件权限为work,work用户不能ssh登陆,
好的,您可以按照以下步骤配置vsftpd,使FTP用户可以访问/home/work目录,并且在该目录下创建的文件的权限为"work",同时禁止work用户通过SSH登录系统:
1. 创建work用户,用于访问/home/work目录,并将其加入work用户组:
```
sudo useradd -m -d /home/work -s /bin/false -G work work
```
这个命令将创建一个名为"work"的用户,将其主目录设置为/home/work,将其shell设置为/bin/false(这将禁止用户登录系统),并将其加入work用户组。
2. 创建/home/work目录,并将其权限设置为777:
```
sudo mkdir /home/work
sudo chmod 777 /home/work
```
3. 编辑/etc/vsftpd.conf配置文件,添加以下参数:
```
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=002
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
allow_writeable_chroot=YES
user_sub_token=$USER
local_root=/home/$USER/work
```
其中,local_umask参数将设置文件和目录的默认权限为775,chroot_local_user参数将限制用户在其家目录以外的访问,local_root参数将设置FTP用户的根目录为/home/$USER/work,其中"$USER"将被替换为FTP用户名。
4. 重启vsftpd服务:
```
sudo systemctl restart vsftpd
```
现在,FTP用户可以使用work用户名和密码登录FTP服务器,并且其根目录将是/home/work目录。FTP用户可以在该目录下创建文件和目录,并且这些文件和目录的权限将为"work"。另外,work用户将无法通过SSH登录系统,因为其shell已被设置为/bin/false。
在linux系统中搭建一个FTP服务器,要求: 口能够建立不同用户,权限不同 口能够远程访问
在Linux系统中,我们可以使用vsftpd来搭建FTP服务器。下面是详细步骤:
1. 安装vsftpd软件包
在终端输入以下命令安装vsftpd:
```
sudo apt-get install vsftpd
```
2. 配置vsftpd
找到vsftpd的配置文件并进行修改,以下是修改的几个常用配置项:
- anonymous_enable:开启/禁用匿名用户登录,默认为YES。
- local_enable:开启/禁用本地用户登录,默认为YES。
- write_enable:开启/禁用上传文件权限,默认为YES。
- chroot_local_user:将用户锁定在其家目录中,默认为NO。开启此项后,用户将无法访问家目录外的文件。
在终端输入以下命令打开vsftpd配置文件:
```
sudo nano /etc/vsftpd.conf
```
修改以上配置项后,保存并退出。
3. 创建FTP用户
使用以下命令创建FTP用户:
```
sudo useradd -m -s /bin/bash ftpuser
```
其中,ftpuser是创建的用户名。接着,使用以下命令为该用户设置密码:
```
sudo passwd ftpuser
```
4. 配置FTP用户权限
在vsftpd配置文件中设置权限,以下是一些常用的权限设置:
- local_umask:设置上传文件的umask值,默认为022,即上传文件权限为644。
- file_open_mode:设置上传文件的默认权限,默认为0666,即上传文件权限为666。
- local_root:设置用户的根目录。
在终端输入以下命令打开vsftpd配置文件:
```
sudo nano /etc/vsftpd.conf
```
修改以上配置项后,保存并退出。
5. 重启vsftpd服务
在终端输入以下命令重启vsftpd服务:
```
sudo systemctl restart vsftpd
```
6. 允许FTP服务器远程访问
如果FTP服务器在本地,可以跳过这一步。如果FTP服务器在远程主机上,需要在防火墙中开放FTP端口(默认为21),以允许远程用户访问FTP服务器。
在终端输入以下命令开放FTP端口:
```
sudo ufw allow ftp
```
以上就是在Linux系统中搭建FTP服务器的详细步骤,按照以上步骤操作即可成功搭建FTP服务器并允许远程访问。