ubuntu16.04搭建我的简易DLP

前言

  最近一朋友让我帮忙搭建一台服务器,用作公司的服务器,可是该服务器须要知足一些安全要求,因而乎就有了下面的解决过程^_^ubuntu

需求

  1. 指望普通用户和管理员都能ssh登录服务器,但禁止scp或者其余方式下载文件,容许管理员上传文件;
  2. 本地操做时,普通用户usb口无效,但管理员有效
  3. 指望用ubuntu搭建(偏向ubuntu server)

方案1

  由于我也没接触过这些,因此只好尝试着解决。首先想到的是这样的需求应该是很是广泛的,所以市场上确定有现成的解决方案,本身从0造轮子不是个人风格,由于任何轮子须要考虑的太多,通过市场检验的,绝对比我刚造出的好^_^。通过搜索,我发现行业里关于这个的专业术语叫 DLP (Data Loss Prevention),国内作的比较好的有 中软、北信源、鼎普、亿赛通、明朝万达。开源免费的也有,不知道使用麻不麻烦 好比,OpenDLP MyDLP,这些都是ubuntu支持的。最终我建议他直接选一家国内的方案,虽然花点钱,但毕竟是公司使用啊,安全性(真的吗?我本身不太信,哈哈)和容易程度都应该是较为出色的。但建议被拒绝了,理由是公司很小,不想花这钱,并且他的需求很简单,不用DLP那么复杂。哎,我只好接着找解决方案windows

方案2

  仍是本身造轮子吧!哈哈。但我造以前是有考虑他的需求的,由于他的需求确实比较简单,需求1就是指望全部人可以正常访问服务器的资料,可是不但愿访问的人可以拷走资料,针对这个的解决方法我打算用远程桌面和经过防火墙禁掉除远程桌面外的其余端口。首先,图形化操做对于用户来讲更加简单,入门门槛低;其次,远程桌面就知足了防止用户拷贝,ssh登录还能在终端里拷贝显示的内容呢,远程桌面的话,除非用户截屏;最后,禁掉端口也就防止了用户经过其余程序下载数据^_^ 需求2就是禁掉usb,但容许管理员经过usb更新服务器数据,这个的话,管理员默认建立的用户就不是sudoer,因此自己就不容许操做usb,所以也解决了。下面就开始搭建、验证(搭建过程仍是遇到一些坎的)安全

搭建步骤

  1. 下载ubuntu16.04,用startup disk creator制做启动盘;
  2. 将u盘插入要搭建的服务器上,从u盘启动;
  3. 安装的时候选择lvm+加密方式(这是我额外赠送的安全防御,即便硬盘被偷了,别人也没法打开数据,固然,这样的弊端就是服务器每次启动都须要先输入磁盘解密密码);
  4. 安装远程桌面,在这步我花了很多时间,之前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就能够了;服务器

  1. 屏蔽其余端口,以前也没怎么用户防火墙操做,网上查看了下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月session

相关文章
相关标签/搜索