linux-selinux安全防护,加密解密

Linux安全保护模型?

1  自主访问控制DAC   (rwx    facl)

所有者对自己的资源负责

dr-xr-xr-x. 29 root root 4096 5月   5 14:05 /

2  MAC,强制访问控制

管理员对所有的资源负责

TCSEC标准定义的 MLS 多级安全

SELinux   *

[[email protected] ~]# sestatus

SELinux status:                 disabled

[[email protected] ~]#

[[email protected] ~]# cat /etc/sysconfig/selinux

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - SELinux is fully disabled.

SELINUX=enforcing

# SELINUXTYPE= type of policy in use. Possible values are:

# targeted - Only targeted network daemons are protected.

# strict - Full SELinux protection.

SELINUXTYPE=targeted

[[email protected] ~]#  reboot

[[email protected] ~]# sestatus              selinux查询

SELinux status:                 enabled

Current mode:                   enforcing

.. ..

Policy from config file:        targeted

方法一,修改kernel启动参数

添加 selinux=0 以禁用

添加 selinux=1 以启用

方法二,修改文件/etc/selinux/config

设置 SELINUX=disabled 以禁用

设置 SELINUX=permissive 宽松/允许模式

设置 SELINUX=enforcing 强制模式

[[email protected] ~]# getenforce

Enforcing

[[email protected] ~]# setenforce  0

[[email protected] ~]# getenforce

Permissive

[[email protected] ~]# setenforce  1

[[email protected] ~]# getenforce

Enforcing

[[email protected] ~]#

++++++++++++++++++++++++++++++++++++++++++++

查看文件上下文:

[[email protected] ~]# ll -Z /etc/passwd

-rw-r--r--. root root system_u:object_r:etc_t:s0       /etc/passwd

[[email protected] ~]# ll -dZ  /etc

drwxr-xr-x. root root system_u:object_r:etc_t:s0       /etc

查看httpd服务上下文

ps aux -Z  |   grep httpd

unconfined_u:system_r:httpd_t:s0 apache   3975  0.0  0.0 186060  2524 ?        S    10:42   0:00 /usr/sbin/httpd

unconfined_u:system_r:httpd_t:s0 apache   3976  0.0  0.0 186060  2508 ?        S    10:42   0:00 /usr/sbin/httpd

[[email protected] ~]# id -Z

查看文家夹上下文

ll -dZ /var/www/html/

system_u:object_r:httpd_sys_content_t:s0

用户       :  角色    :访问类型                   :选项...

一般操作规律

移动的文件,原有的上下文属性不变

复制的文件,自动继承目标位置的上下文

修改安全上下问 chcon

-t,指定访问类型

-R,递归修改

[[email protected] ~]# ll  -Z /var/www/html/two.html

-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 /var/www/html/two.html

[[email protected] ~]#

[[email protected] ~]#

[[email protected] ~]# ll  -Z /var/www/html/one.html

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/one.html

[[email protected] ~]# chcon  -t  httpd_sys_content_t /var/www/html/two.html

[[email protected] ~]# ll  -Z /var/www/html/two.html

-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/two.html

[[email protected] ~]#

chcon  -R   -t  httpd_sys_content_t   /var/www/html

使用 restorecon 工具

恢复为所在位置的默认上下文属性

-R,递归修改

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

SELinux布尔值

getsebool  -a

getsebool  -a | grep ftp

[[email protected] ~]#

setsebool -P allow_ftpd_anon_write=1

setsebool -P allow_ftpd_full_access  on

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

安装排错工具

yum -y  install  setroubleshoot-server  setroubleshoot-plugins  setroubleshoot-doc setroubleshoot

reboot

tail  -f /var/log/messages  (按提示操作)

May  7 11:53:04 room5pc00 setroubleshoot: SELinux is preventing /usr/sbin/vsftpd from write access on the directory stuput. For complete SELinux messages. run sealert -l ac0211d2-a4fc-4051-8157-a9ca0f771570

按提示执行run以后的指令   #sealert -l ac0211d2-a4fc-4051-8157-a9ca0f771570

#sealert   -b  调出图形查错菜单

++++++++++++++++++++++++++++++++++++

为什么要给数据加密?

加密、解密

算法?

单向加密(不可逆)MD5  SHA

源数据不发生改变 加密的结果不变

生成固定长度(比如128位)的摘要文本

使用md5sum校验工具

生成MD5校验值

与软件官方提供的校验值比对

710  head -1 /etc/passwd > a.txt

711  cat a.txt

712  md5sum a.txt

713  cp a.txt  b.txt

714  md5sum b.txt

715  vim b.txt

716  md5sum b.txt

717  vim b.txt

718  md5sum b.txt

++++++++++++++++++++++++++++++++++++

对称加密(加密和解密使用相同的密码)  DES   AES

++++++++++++++++++++++++++++++++++++

GnuPG,GNU Privacy Guard 最流行的数据加密、数字签名工具软件

[[email protected] ~]# which  gpg

/usr/bin/gpg

[[email protected] ~]# rpm -qf /usr/bin/gpg

gnupg2-2.0.14-8.el6.x86_64

[[email protected] ~]#

gpg支持的算法:

公钥:RSA, ELG, DSA

对称加密:3DES, CAST5, BLOWFISH, AES, AES256, .. ..

散列:MD5, SHA1, .. .., SHA256, SHA512

ssh  -X   [email protected]

echo  aaaaa  >  /tmp/usera.txt

cd  /tmp/

gpg   -c   usera.txt   (提示输入加密的密码)

ls  usera.txt.gpg

rm  -rf  usera.txt

ssh  -X   [email protected]

cd  /tmp

gpg   -d  usera.txt.gpg   >   userb.txt   (提示输入解密的密码)

cat   userb.txt

aaaaa

++++++++++++++++++++++++++++++++++++

非对称加密(公钥加密  私钥解密)          RSA    DSA

1 usera 用户生成自己的秘钥对(公钥 /私钥)gpg  --gen-key

2 usera用户导出自己的公钥

gpg  -a  --export    >  /tmp/UserB.pub

3   userb用户导入公钥

gpg  --import  /tmp/UserB.pub

4   userb用户使用导入的公钥加密数据

echo  abcdedf  > /tmp/test.txt

cd  /tmp

gpg  -e  -r  panglj  test.txt

ls  test.txt.*

5  userb用户使用自己的私钥解密

gpg  -d  /tmp/test.txt.gpg  >  usera2.txt

userb:

gpg  --gen-key

[[email protected] ~]$ gpg  --gen-key

gpg (GnuPG) 2.0.14; Copyright (C) 2009 Free Software Foundation, Inc.

This is free software: you are free to change and redistribute it.

There is NO WARRANTY, to the extent permitted by law.

请选择您要使用的密钥种类:

(1) RSA and RSA (default)

(2) DSA and Elgamal

(3) DSA (仅用于签名)

(4) RSA (仅用于签名)

您的选择?

RSA 密钥长度应在 1024 位与 4096 位之间。

您想要用多大的密钥尺寸?(2048)1024

您所要求的密钥尺寸是 1024 位

请设定这把密钥的有效期限。

0 = 密钥永不过期

<n>  = 密钥在 n 天后过期

<n>w = 密钥在 n 周后过期

<n>m = 密钥在 n 月后过期

<n>y = 密钥在 n 年后过期

密钥的有效期限是?(0)

密钥永远不会过期

以上正确吗?(y/n)y

You need a user ID to identify your key; the software constructs the user ID

from the Real Name, Comment and Email Address in this form:

"Heinrich Heine (Der Dichter) <[email protected]>"

真实姓名:plj

姓名至少要有五个字符长

真实姓名:panglj

电子邮件地址:[email protected]

注释:teacher

您选定了这个用户标识:

“panglj (teacher) <[email protected]>”

更改姓名(N)、注释(C)、电子邮件地址(E)或确定(O)/退出(Q) O

ls ~/.gnupg/

时间: 2024-10-05 21:03:48

linux-selinux安全防护,加密解密的相关文章

马哥linux学习笔记:加密,解密基础

在计算机网络建设的初期,由于能使用到计算机的人少之又少,并没有考虑到有数据加密需求,随着社会的发展,互联网已俨然成为我们生活中不可或缺的一部分,人们不管是交流,购物,还是工作都已经离不开互联网.在电脑,手机,各种电子设备构建的互联网中,数据的安全问题已经成为人们很是关注一个重要环节. 现在,我们就来了解一下linux下是如何实现数据加密及解密的. 对于确保数据的安全性,我们要达成的目标有三个: 保密性,完整性,可用性. 现今蛇龙混杂的互联网,总是有很多拥有强烈好奇心的不安分的人想尽办法要获知其他

Linux运维之加密/解密原理、自建CA及搭建基于https的Apache

上几次博文我们具体讨论了Apache(httpd)的基础知识: HTTP协议基础(参见博文:http://sweetpotato.blog.51cto.com/533893/1656137) Apache2.2的基本配置(参见博文:http://sweetpotato.blog.51cto.com/533893/1657668) Apache2.2的虚拟主机(参见博文:http://sweetpotato.blog.51cto.com/533893/1660229) 本次博文我们具体讨论下加密/

Linux学习笔记一 加密解密介绍,以及运用Openssl创建私有CA

互联网高速发展的今天,确保通信数据能够在互联网上安全可靠的传输是极为重要的.为此,各种安全算法,协议纷纷诞生.Openssl只是其中之一,Openssl为网络通信提供安全及数据完整性的一种安全协议,包括了主要的密码算法.常用的密钥和证书封装管理功能(CA)以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用 美国NIST给出了数据安全可靠传输的明确标准: 保密性: 数据保密性 隐私性 完整性: 可用性: 加密:使用加密算法对明文加工处理,转换成不可识别的代码信息,确保信息安全. 解密:运用

security 02: 加密与解密 、 扫描与抓包 、 总结和答疑 、 SELinux安全防护

day01一.selinux安全防护二.数据 加密 解密三.抓包与扫描++++++++++++++++++++++++++++++一.selinux安全防护1.1 selinux 介绍1.2 linux安全保护模型?1.3 查看当前系统selinux的状态[[email protected] ~]# sestatus 1.4 selinux配置文件[[email protected] ~]# cat /etc/selinux/config 1.5 查看安全上下文查看进程 ps aux -Zps

linux下加密解密之OpenSSL

一.为什么要加密 在网络这个大森林里面,所有的数据传输都是不安全的,在数据传输中必须要给数据加密,以防止被别人劫持盗取 二.数据在网络中怎么传输 数据从发送出去到目的地都经过了哪些步骤? 1.ISO国际标准组织定义了数据在网络传输中的七层模型:数据从 应用层--会话层--表达层--传输层--网络层--数据链路层--物理层 逐层封装传输,数据到达最底层后传送出去,到达目标主机后在从底层往上层传输并逐层解压封装. 2.在TCP/IP定义的四层模型里,数据传输也是一样的道理,应用层--传输层--网络层

Linux之加密解密基础技术

下文主要介绍了什么是加密解密:为何要用到加密解密技术:加密解密技术能够为我们带来什么样的好处:常见的几种加密解密技术介绍以及Linux中的openssl. 一.什么是加密,解密 加密技术是一种常用的安全保密手段,利用各种技术手段把重要的数据进行加密传送:再用对应的技术手段进行解封,该过程的逆过程就称为解密.这里用一个不太恰当的例子说一下:也就好比你去办一张银行卡,需要你设置一个密码,就可以理解成在为这张银行卡做一个加密的操作:用银行卡到提款机取钱需要你输入密码,这就是一个解密的操作. 二.为什么

linux关于加密解密技术基础、KPI及创建私有CA

linux加密和解密技术基础.KPI及创建私有CA 一.加密方式分为:1.对称加密:加密和解密使用同一个密钥:      对称加密:采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,在对称加密算法中常用的算法有:DES. 3DES.TDEA.AES.    Blowfish.Twofish          IDE.ARC6.CAST5等.    特性:      1.加密.解密使用同一个密钥:      2.强原始数据分割成固定大小的块,逐个进行加密

linux下的加密解密学习

linux下的加密解密学习 加密/解密:        加密协议:加密解密使用同一秘钥:3des,aes        公钥加密:公钥私钥对        数字签名,密钥交换                RSA,DSA数据签名算法(DSS数据签名标准) 单向加密:            md5,sha1,sha256,sh512(MD5输出128bit,SHA1输出160bit,SHA256输出256bit) 密钥交换:            DH:Deffie-Hellman 具体过程参照下

linux CA 加密解密技术

一.基础知识 对称加密: 加密和解密方使用同一个密钥,用来解决数据机密性,但是密钥通过何种方式传递给对方不容易实现: 公钥加密: 密钥是成对出现的,分别为Secret key(密钥)和Public key(公钥)公钥加密必须使用与其相对应的 私钥进行解密并且公钥是从私钥中提取出来的,有私钥可以知道公钥是什么,但是知道公钥是不能知 道私钥的,公钥是公开的,而私钥是不公开的,但是公钥加密比对称加密慢3个数量级(1000倍), 加密速度相当的慢,所以单独用此加密方式也比较困难:公钥加密功能: 单向加密

linux中加密解密以及Opensll建立CA

现在如今个人以及公司对自己的数据以及隐私越来越关注,之前美国斯诺登事件的爆出,又将通讯安全话题引发激烈的讨论.下面我们就来说下linux中的加密解密,以及通讯过程中如何确保通讯的安全. 常见的加密方法有三种:对称加密.单向加密.非对称加密,下面简单说下这三种加密方式. 对称加密:加密和解密使用同一个密钥:依赖于算法和密钥:安全性依赖于密钥,而非算法常见算法有DES:Data Encryption Standard, 56bits.3DES.AES: Advanced Encrpytion Sta