如何在具有集中服务器的小型企业环境中设置远程login和DNSparsing

亲爱的同行们,

我有一个非常棘手的问题,我仍然在寻找答案。 我们对IT基础设施(新电脑,布线等)进行了维护,但是我们发现软件方面的改进也是需要的。

我有一台小型的中央服务器,它是一台非常公牛的计算机,两块带有主板驱动的RAID1,两块网卡和所有的大(1TB)硬盘,安装了Ubuntu Server 12.04 x64。 该服务器计划用作中央服务器,pipe理名称parsing,IP租赁,代理,远程configuration文件,本地和远程网站,FTP和电子邮件。 总而言之,基本上所有东西都会放在这台机器上。

小型服务对我来说不是一个问题,但是我被DNS和远程configuration文件部分所困扰。 这台电脑运行一个基于Linux的服务器,但是我们的工作站(我们有大约30个)正在使用Windows 7,所以我们也需要SMB\CIFS

我已经find了一种方法来configurationDHCP服务器(为dekstop工作站预configuration的地址,以及在squid中使用throttle ACL),使用Shorewall作为防火墙来caching临时笔记本的子网。 eth0连接到本地networkingeth1连接到Internet的其余部分。 这样做是因为集成卡速度更快,而且我们与世界的连接速度很慢。 客户端需要使用代理服务器(在工作站上configuration)访问互联网。 除了DNS和远程configuration文件,一切正常。

我们有约。 90位需要注册并需要login的用户,如果这些信息在任何地方都可能会影响,他们会被分成5组。 我发现LDAP将是一个简单而方便的东西,但我找不到一个好的文档如何configuration它。 有趣的是,我find了一步一步的指导(每一步都有大量的解释),但不幸的是,它涉及到使用某个预制Python脚本来设置最终在40步中的第38步失败步骤…并使用我的小知识到Python我无法解决这个问题。 本指南是在UbuntuForums的某处,但不幸的是我已经失去了书签。

我已经阅读了其他问题(在这个网站和其他地方),让我们看看是否还有更多我可以提供的信息。

  1. 我们有一个外部注册的域名,我们使用合格的注册服务机构分配,但我们的内部networking将有一些其他域名,我们需要在本地解决。 (例如:我们的外部可用域是something.org,但我们应该有一个主机条目management.in
  2. 互联网从提供商处进入并在eth0卡上进入服务器。 服务器的networking设置为自动从提供商的DHCP服务器获取IP。 eth1卡(我将需要设置IP)将服务器连接到本地交换机,然后在交换机之后使用更多的交换机连接工作站。 我们还有两个无线接入点插入整个分支。 这些交换机是无源交换机,它们没有pipe理网站。 接入点仅通过无线方式分配本地互联网,连接的笔记本电脑将(或将要)设置为从中央服务器租用IP。
  3. 在服务器端,我们必然要开源解决scheme。 我们是一个非赢利组织,由于预算问题,Windows服务器的许可证是不存在的。 工作站已经合法授权Windows 7旗舰版或企业在他们(这有所不同),他们大多是64位。
  4. 我们的内部networking计划在同一个子网中,其中192.168.1.0是服务器的IP地址(外部IP地址可能每半年大概半个月更换一次)。 我们的工作站被命名为WK01 ,然后递增,IP地址从.1.1开始,然后逐渐递增。 我们的客户分成5个组(通常有组名GROUP_AGROUP_B等等),还有一个名为ADMINISTRATION组。

以下服务已经安装,并且主要在服务器上configuration:

  • 使用dhcp3-server
  • Apache Web服务器(用于数据库托pipe和php5解释器的MySQL
  • Postfix的电子邮件发送和接收
  • 鱿鱼是我们的代理服务器
  • Webmin (对于基于浏览器的pipe理,但是我更喜欢命令行)
  • OpenSSH当然是用于远程terminal的。

如果我可以使用bind9作为DNS服务器,并且最有可能用于远程共享的Samba和用于集中login数据库的某种types的ldap ,我将不胜感激。 工作站需要将一些远程文件夹作为networking驱动器(例如: H:\ )从服务器上挂载。 我将需要在这个坐骑上设置每个用户的配额,我再次不确定如何。

重申一下,这些问题是:

  • 我将如何开始为域设置DNSparsing ,最好使用bind9 。 如果我还可以设置,如果客户端试图使用外部可用的域来访问系统,那么它应该是本地parsing(以及局域网IP),以防止无用的数据stream量。
  • 我怎么能合理地pipe理本地工作站及其用户数据库,最好使用LDAP服务?
  • 有没有办法设置远程configuration文件,所以如果客户端John SmithWK02login(假设这是工作站的名称),他的configuration文件将从服务器加载。 然后他修改了一些东西,注销,如果他从WK04 (另一个工作站)login,他将保留他的修改,因为configuration文件被远程保存?

基本上,我已经使用Windows Server 2008 RC2build立了我们需要的环境,但是由于预算(以及一些幸运的好奇而备份的不幸事件),我想将我们的愿望转移到基于Linux的服务器上。

谢谢你的时间和你的回复。

安装samba-doc软件包。 它包括Samba3-By Example文件,其中涵盖了大部分你想要做的事情。 现在你可能想使用Samba3,但Samba4正在迅速发展,应该能够提供AD(Active Directory)服务。 我发现ldapscripts的shell版本比smbldap-tools脚本更容易使用。

bind9将提供您的DNS要求。 开箱即可提供recursion查找。 您将需要为您的内部区域configuration一个区域文件。 使用域名注册商维护您的外部DNS将会更简单。 如果您的域是example.com ,则可以在本地绑定中定义像lan.example.com这样的域。

如果将外部域移动到本地绑定中,请设置拆分区域configuration,并防止对外部用户访问caching和recursion。 这将防止您的服务器被用于放大攻击。

我已经使用了各种LDAPpipe理工具。 如果我没有记错,我发现gosa提供了相当简单的基于Web的界面来pipe理LDAP用户和Samba机器。

简单的答案:

  1. 安装bind9,将其设置为recursion(独立)或转发(依赖Google / ISP /任何)parsing器。 我相信bind9是启用了recursion的,但是手册很容易读取configuration更改。
  2. 购买Windows Server许可证。 如果必须的话,在虚拟机中运行它。
  3. 见2。

我知道你不想去Windows。 如果是这样的话,那么你会最好的跳过Windows的function。