Ubuntu Server 创建普通用户只能访问自己的home文件夹

Posted simmy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu Server 创建普通用户只能访问自己的home文件夹相关的知识,希望对你有一定的参考价值。

因为安全的原因,云端服务器需要允许不同用户访问,但是不允许这些用户看到系统文件夹,而且限定只能看到管理员开放的资源。查询后发现jailkit这个开源包可以实现,测试成功,具体步骤如下。

目前最新版是2.23,网址:​​https://olivier.sessink.nl/jailkit/​

下载安装最新版

wget https://olivier.sessink.nl/jailkit/jailkit-2.23.tar.gz

tar -zxvf jailkit-2.23.tar.gz

cd jailkit-2.23/


需要安装一些相关包,不然安装会报错

sudo apt-get install build-essential autoconf automake1.11 libtool flex bison debhelper binutils-gold python

安装

sudo ./configure

sudo make

sudo make install


配置

sudo mkdir /home/jail

sudo chown root:root /home/jail



sudo jk_init -v /home/jail basicshell

sudo jk_init -v /home/jail netutils

sudo jk_init -v /home/jail ssh

sudo jk_init -v /home/jail jk_lsh


创建用户

sudo useradd -d /home/testuser -m testuser -s /bin/bash

sudo passwd testuser


sudo jk_jailuser -m -j /home/jail testuser


查看用户具体如下

cat /etc/passwd

testuser:x:1001:1001::/home/jail/./home/testuser:/usr/sbin/jk_chrootsh


jail起用户

sudo jk_cp -v -f /home/jail /bin/bash

注意查看路径如下

cat /home/jail/etc/passwd

testuser:x:1001:1001::/home/testuser:/usr/sbin/jk_lsh


需要修改成如下

testuser:x:1001:1001::/home/testuser:/bin/bash


尝试连接,查看根目录下的虚拟环境

ssh testuser@127.0.0.1

testuser@127.0.0.1s password:

I have no name!@ip-172-30-2-207:/$ ls /

bin  dev  etc  home  lib  run  usr


如果无法连接可以查看日志

cat /var/log/auth.log

以上是关于Ubuntu Server 创建普通用户只能访问自己的home文件夹的主要内容,如果未能解决你的问题,请参考以下文章

无法使用普通 Ubuntu Linux 用户访问 Django 中的 PostgreSQL 数据库

ubuntu安装远程桌面

ubuntu下 redis6.0安装 配置远程访问 注册服务 开机自启的流程记录

sqlserver 如何创建用户,只能访问bb数据库(读、写),用啥样的数据库的服务器角色和 数据库角色?

linux用户和用户组管理

SQL server设置用户只能访问特定数据库访问特定表或视图