ubuntu16.04搭建个人简易DLP
前言
最近一朋友让我帮忙搭建一台服务器,用做公司的服务器,但是该服务器需要满足一些安全要求,于是乎就有了下面的解决过程_
需求
- 期望普通用户和管理员都能ssh登陆服务器,但禁止scp或者其他方式下载文件,允许管理员上传文件;
- 本地操作时,普通用户usb口无效,但管理员有效
- 期望用ubuntu搭建(偏向ubuntu server)
方案1
因为我也没接触过这些,所以只好尝试着解决。首先想到的是这样的需求应该是非常普遍的,因此市场上肯定有现成的解决方案,自己从0造轮子不是我的风格,因为任何轮子需要考虑的太多,经过市场检验的,绝对比我刚造出的好_。经过搜索,我发现行业里关于这个的专业术语叫 DLP (Data Loss Prevention),国内做的比较好的有 中软、北信源、鼎普、亿赛通、明朝万达。开源免费的也有,不知道使用麻不麻烦 比如,OpenDLP MyDLP,这些都是ubuntu支持的。最终我建议他直接选一家国内的方案,虽然花点钱,但毕竟是公司使用啊,安全性(真的吗?我自己不太信,哈哈)和容易程度都应该是较为出色的。但建议被拒绝了,理由是公司很小,不想花这钱,而且他的需求很简单,不用DLP那么复杂。哎,我只好接着找解决方案
方案2
还是自己造轮子吧!哈哈。但我造之前是有考虑他的需求的,因为他的需求确实比较简单,需求1就是期望所有人能够正常访问服务器的资料,但是不希望访问的人能够拷走资料,针对这个的解决方法我打算用远程桌面和通过防火墙禁掉除远程桌面外的其他端口。首先,图形化操作对于用户来说更加简单,入门门槛低;其次,远程桌面就满足了防止用户拷贝,ssh登陆还能在终端里拷贝显示的内容呢,远程桌面的话,除非用户截屏;最后,禁掉端口也就防止了用户通过其他程序下载数据_ 需求2就是禁掉usb,但允许管理员通过usb更新服务器数据,这个的话,管理员默认创建的用户就不是sudoer,所以本身就不允许操作usb,因此也解决了。下面就开始搭建、验证(搭建过程还是遇到一些坎的)
搭建步骤
- 下载ubuntu16.04,用startup disk creator制作启动盘;
- 将u盘插入要搭建的服务器上,从u盘启动;
- 安装的时候选择lvm+加密方式(这是我额外赠送的安全防护,即使硬盘被偷了,别人也无法打开数据,当然,这样的弊端就是服务器每次启动都需要先输入磁盘解密密码);
- 安装远程桌面,在这步我花了不少时间,以前ubuntu14和15的时候用过远程桌面,原以为很快就搞定,结果发现装完后,客户端登陆就是个灰色界面,没有任何可操作的地方。后来在网上找到了解决方法(默认的unity支持不够好,之前我就是在server上装的unity),步骤如下:
#安装远程桌面服务端
sudo apt-get install xrdp
#更新源
sudo apt-get update
#安装mate桌面
sudo apt-get install mate-core mate-desktop-environment mate-notification-daemon
#将远程桌面的默认桌面设置为mate
sudo sed -i.bak '/fi/a #xrdp multiple users configuration \n mate-session \n' /etc/xrdp/startwm.sh
这样之后,客户端就可以登陆了。windows下直接在运行(win+r调出)中输入mstsc,然后输入服务器ip就可以了;
5. 屏蔽其他端口,之前也没怎么用户防火墙操作,网上查看了下iptables的基本使用及结合网上的解决方案,最后还真实现了,将下面的内容放入rc.local,这样系统起来就会执行,执行后,网络除了远程端口外,就全封掉了,不管进入还是出去
iptables -F
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 3389 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 3389 -m state --state NEW -j ACCEPT
经过以上步骤及测试,满足需求
完!
2016年8月
ubuntu16.04搭建个人简易DLP的更多相关文章
- Ubuntu16.04搭建OpenVPN
Ubuntu16.04搭建OpenVPN 2018年12月27日 15:50:59 VinQin 阅读数:21042 简介 如果在一个非信任网络下比如旅社或者咖啡店的WiFi网络下,想要通过你的智 ...
- Ubuntu16.04搭建LAMP开发环境
Ubuntu16.04搭建LAMP开发环境 虚拟机上安装好Ubuntu16.04后,是一台空白的Ubuntu.我的目的是搭建LAMP环境,顺便搭一个Python Django环境. 基本设置 1.配置 ...
- Harbor 企业级私有仓库 Ubuntu16.04 搭建及使用
一.Harbor简介 1.1.什么是Harbor 几个VMware中国的人搞了一个容器镜像仓库.Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 1.2.Harbor架 ...
- ubuntu16.04搭建ftp服务器
因为习惯了vs进行开发,所以对于Linux的代码编辑开发都在vs里面进行,通常我们都是ssh远程登录到Linux,使用ftp或者sftp共享Linux目录里面的文件方便对文件的共享,这里介绍一下在ub ...
- 【.NetCore学习】ubuntu16.04 搭建.net core mvc api 运行环境
查看linux内核版本 uname -a 打印结果 python@ubuntu:~$ uname -a Linux ubuntu 4.4.0-31-generic #50-Ubuntu SMP Wed ...
- TestLink+Jenkins在Ubuntu16.04搭建集成测试环境
序章 序1:TestLink和TestLink-API-Python-client 目前TestLink的最新版本是1.9.19 TestLink-API-Python-client支持的TestLi ...
- ubuntu16.04搭建vulhub环境
简介 Vulhub官方中文教程https://github.com/vulhub/vulhub/blob/master/README.zh-cn.md 环境:ubuntu16.04.5 python3 ...
- Ubuntu16.04搭建各种开发环境的IDE: QT5 , CodeBlocks ,eclipse-cdt, PyCharm
搭建Ubuntu下C/C++以及Python的集成开发环境,采用双系统(Win7+Ubuntu)的Ubuntu16.04-LTS系统, 关于双系统的搭建可以参考下面博客(图文十分详细):https:/ ...
- ubuntu16.04搭建jdk1.8运行环境
搭建环境:Ubuntu 16.04 ×64 JDK :jdk-8u171-linux-x64.tar.gz 首先下载linux对应的安装包下载地址:http://www.oracle.com/tech ...
随机推荐
- python 基础篇 16 递归和二分数查找与编码补充回顾
编码回顾补充: 回顾编码问题: 编码相当于密码本,关系到二进制与看懂的文字的的对应关系. 最早期的密码本: ascii码:只包含英文字母,数字,特殊字符. ...
- 定时爬虫抓当日免费应用:Scrapy + Tkinter + LaunchControl
花了个周末学了下Scrapy,正好一直想买mindnode,于是顺手做了个爬虫,抓取爱范儿每天的限免应用信息. Thinking 大概思路就是使用LaunchControl每天定时(比如早上9点50, ...
- 【CodeForces】9B-Running Student
目录 Question Description Input Output Solution 解法1 Question Description 小明在公交车始发站上车,他应该在哪个站点下车才能最快到达学 ...
- Python 学习笔记之 Numpy 库——文件操作
1. 读写 txt 文件 a = list(range(0, 100)) a = np.array(a) # a.dtype = np.int64 np.savetxt("filename. ...
- java设计模式之模版方法模式以及在java中作用
模板方法模式是类的行为模式.准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑.不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有 ...
- Linux nohup 后台运行命令
有一些爬虫的程序需要在后台运行,所以简单总结了一下nohup 的一些用法 基本命令:nohup command $; 运行之后出现nohup: ignoring input and appendin ...
- 安装并配置maven
1下载Maven 2添加仓库(仓库就是maven项目统一存放依赖的地方 根据groupId ArtifactId Version来组成项目依赖路径) conf——settings.xml------- ...
- VS2015中常用快捷键的修改推荐
首先,在VS2015中修改快捷键的步骤如下: 工具--选项--环境--键盘. 如图: 然后就是修改快捷键:(以下是个人的使用习惯,仅供参考) 1.编辑.设置选定内容的格式.设置为ctrl+E,Ctrl ...
- 通过SharpZipLib来压缩解压文件
在项目开发中,一些比较常用的功能就是压缩解压文件了,其实类似的方法有许多 ,现将通过第三方类库SharpZipLib来压缩解压文件的方法介绍如下,主要目的是方便以后自己阅读,当然可以帮到有需要的朋友更 ...
- Bootstrap中的Affix插件
我们为什么要用bootstrap?因为懒!哦....不,是因为方便,呃...意思差不多. 今天来说说Affix这个插件,它可以使导航栏固定,免去了自己手写的麻烦,用着非常方便,废话不多说,下面是用法. ...