云计算 python 基础服务 文件共享 dac的原理

永久关闭selinux

[root@localhost cc]# vim /etc/selinux/config

#     enforcing 严格模式  进程的规则和安全上下文及文件访问权限不匹配就会拒绝

#     permissive 宽容模式   进程的规则和安全上下文及文件访问权限不匹配也可以访问   但是会记录警告日志

#     disabled 关闭沙盒

SELINUX=enforcing

重启系统才能生效   reboot

setenfore  0   ---  宽容模式

#     targeted 是对绝大多数的网络程序进行访问控制

#     minimum    对指定的程序进行访问控制    一般不用

#     mls    对所有的程序进行控制    除非安全级别非常高   才会用最后一个

SELINUXTYPE=targeted

[root@localhost cc]# ls -Zd /var/ftp

drwxr-xr-x. root root system_u:object_r:public_content_t:s0 /var/ftp

第一个部分   用户u   system_u(受到沙盒的管制 )和unconfined_u(不受沙盒的管制)

第二个部分    角色r    object_r

第三个部分   类型t     安全上下文     samba_share_t

                                                       public_content_rw_t

[root@localhost ~]# ls -Zd /home/cc

drwx------. cc cc unconfined_u:object_r:user_home_dir_t:s0 /home/cc

[root@localhost ~]# chcon -R -u system_u -t public_content_rw_t /home/cc

[root@localhost ~]# ls -Zd /home/cc

drwx------. cc cc system_u:object_r:public_content_t:s0 /home/cc

修改布尔值(规则)

查看沙盒控制服务的布尔值

[root@localhost ~]# getsebool -a | grep ftp

ftpd_anon_write --> off

ftpd_connect_all_unreserved --> off

ftpd_connect_db --> off

ftpd_full_access --> off

ftpd_use_cifs --> off

ftpd_use_fusefs --> off

ftpd_use_nfs --> off

ftpd_use_passive_mode --> off

httpd_can_connect_ftp --> off

httpd_enable_ftp_server --> off

tftp_anon_write --> off

tftp_home_dir --> off

[root@localhost ~]# setsebool -P ftpd_anon_write 1

client

ftp> put anaconda-ks.cfg

local: anaconda-ks.cfg remote: anaconda-ks.cfg

227 Entering Passive Mode (192,168,2,10,114,195).

150 Ok to send data.

226 Transfer complete.

1760 bytes sent in 0.0805 secs (21.86 Kbytes/sec)

昨天    selinux    开启沙盒  开启防火墙

手动放行ftp

firewall-cmd

chcon -R   -u  。。  -t    安全上下文   目录名         临时

规则:setsebool   client上传

恢复文件默认的安全上下文

[root@localhost ~]# restorecon -i /home/cc

[root@localhost ~]# ls -Zd /home/cc

drwx------. cc cc system_u:object_r:user_home_dir_t:s0 /home/cc

设置永久    设置默认的安全上下文

[root@localhost cc]# semanage fcontext -a -t public_content_rw_t '/home/cc/(/.*)?'    #目录以下的

[root@localhost cc]# semanage fcontext -a -t public_content_rw_t '/home/cc'   #当前目录

[root@localhost ~]# restorecon -i /home/cc

[root@localhost cc]# semanage fcontext -l | grep /home/cc

samba

chcon   -R   -t  samba_share_t    共享目录

布尔值  规则

setsebool   -P      samba_export_all_ro on

setsebool   -P     samba_export_all_rw  on

setsebool -P samba_enable_home_dirs on

虚拟用户访问      虚拟用户---基于本地用户---在基于本地用户的家目录下

本地用户用户是可以登录系统的    

虚拟用户---ftp---不能登录系统的

创建虚拟用户

[root@localhost ~]# cd /etc/vsftpd/

[root@localhost vsftpd]# ls

ftpusers  user_list  vsftpd.conf  vsftpd_conf_migrate.sh

[root@localhost vsftpd]# vim users.list

aaa

123

bbb

456

ccc

789

转换成二进制文件     db

[root@localhost vsftpd]# db_load -T -t hash -f users.list users.db

创建本地用户   虚拟用户要基于本地用户

[root@localhost vsftpd]# useradd -d /qq -s /sbin/nologin  qq

[root@localhost vsftpd]# chown qq:qq /qq

[root@localhost vsftpd]# chmod 755 /qq

#编写pam认证的文件  用户能够认证登录

[root@localhost vsftpd]# cd /etc/pam.d/

[root@localhost pam.d]# vim user.vu

#!PAM-1.0

auth required pam_userdb.so db=/etc/vsftpd/users  #登录模块

account required pam_userdb.so db=/etc/vsftpd/users #登录测试的模块

[root@localhost pam.d]# vim /etc/vsftpd/vsftpd.conf

local_enable=YES

anon_upload_enable=YES  #允许用户能够上传

pam_service_name=user.v u   #pam文件

userlist_enable=YES

tcp_wrappers=YES

guest_enable=YES   #开启虚拟用户访问

guest_username=qq   #依赖的本地用户

allow_writeable_chroot=YES     #虚拟用户有可写的权限

[root@localhost pam.d]# systemctl restart vsftpd

client验证

[root@localhost ~]# ftp 192.168.2.10

Connected to 192.168.2.10 (192.168.2.10).

220 (vsFTPd 3.0.2)

Name (192.168.2.10:root): aaa

331 Please specify the password.

Password:123

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

server:

[root@localhost pam.d]# cd /qq

[root@localhost qq]# touch rrr

client

ftp> ls

ftp> get rrr

local: rrr remote: rrr

如果直接把服务端的沙盒关闭   就可以可以上传

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据库从删库到跑路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值