第2课:操作系统网络配置
——DevOps基础培训
1. DNS配置
1.1 什么是DNS?
- 域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
- 例如:微软公司的Web服务器的IP地址是207.46.230.229,其对应的域名是www.microsoft.com,不管用户在浏览器中输入的是207.46.230.229还是www.microsoft.com,都可以访问其Web网站。
1.2 修改DNS服务器
- 通过SSH远程登录服务器,通过修改制定配置文件来修改DNS服务器。
- "Authorized users only. All activity may be monitored and reported."解决办法:link
- 命令:vi /etc/resolv.conf(注:/etc目录存放操作系统各种配置文件)
- 使用命令dig查看是否更改成功(注:dig(域信息搜索器)命令是一个用于询问 DNS 域名服务器的灵活的工具。它执行 DNS 搜索,显示从受请求的域名服务器返回的答复。)
SERVER行显示服务器地址已成功更改。
2. 路由配置
2.1 什么是路由
路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程。【百度百科】【link】
2.2 查看路由配置
- 命令:route
其中输出项详解【link】
3. SELinux
3.1 什么是SELinux
安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。
SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。
在这种访问控制体系的限制下进程只能访问那些在他的任务中所需要文件。
SELinux策略是白名单原则,所以你需要非常清楚你的各项操作都需要哪些访问权限。如果嫌麻烦就需要关闭SELinux。
3.2 关闭SELinux
- 命令:vi /etc/selinux/config,将SELinux行改为disabled
- 重启系统:reboot
- 检查是否关闭:sestatus
4. iptables
4.1 什么是iptables
- iptables其实不是真正的防火墙,我们可以把它理解成一个客户端代理,用户通过iptables这个代理,将用户的安全设定执行到对应的”安全框架”中,这个”安全框架”才是真正的防火墙,这个框架的名字叫netfilter。iptables其实是一个命令行工具,位于用户空间,我们用这个工具操作真正的框架。
- 防火墙在做数据包过滤决定时,有一套遵循和组成的规则,这些规则存储在专用的数据包过滤表中,而这些表集成在 Linux 内核中。在数据包过滤表中,规则被分组放在我们所谓的链(chain)中。而netfilter/iptables IP 数据包过滤系统是一款功能强大的工具,可用于添加、编辑和移除规则。
它可以配置有状态的防火墙。
4.2 启用一条开放80端口的iptables策略并将其持久化
- 查看端口:iptables -vnL
- 添加端口80:
iptables -I INPUT 1 -i eth0 -p tcp --dport 80 -m state --sta>te NEW,ESTABLISHED -j ACCEPT
- 再次查看端口发现已经成功添加
- 使端口持久化(重启仍然生效):
service iptables save
重启防火墙:
service iptables restart
5. firewalld
5.1 什么是firewalld
- firewalld和iptables都是防火墙
- 相较于iptables防火墙而言,firewalld支持动态更新技术并加入了区域(zone)的概念。简单来说,区域就是firewalld预先准备了几套防火墙策略集合(策略模板),用户可以根据生产场景的不同而选择合适的策略集合,从而实现防火墙策略之间的快速切换。
5.2 启动一条开放80端口并限制IP为自己本机公网IP访问的策略
- 启动firewalld防火墙并查看状态:
systemctl start firewalld
systemctl status firewalld
- 开启80端口,出现success即成功:
firewall-cmd --zone=public --add-port=80/tcp --permanent - 重启防火墙:
systemctl restart firewalld.service - 然后更改public.xml文件于/etc/firewalld/zones/为:
- 重启防火墙,查看是否限制成功
由最后一行可见,限制成功
6. nmap
6.1 什么是nmap?
- NMAP(Network Mapper)是一款开放源代码的网络探测和安全审核的工具。
- 它的设计目标是快速地扫描大型网络,当然用它扫描单个主机也没有问题.Nmap以新颖的方式使用原始IP报文来发现网络上有一些主机,那些主机提供什么服务(应用程序名和版本),那些服务运行在什么操作系统(包括版本信息),它们使用什么类型的报文过滤器/防火墙,以及一堆其他功能。
- 虽然Nmap通常用于安全审核,许多系统管理员和网络管理员也用它来做一些日常的工作,选择查看整个网络的信息,管理服务升级计划,以及监视主机和服务的运行。
6.2 安装nmap
使用yum工具:yum install nmap
6.3 使用nmap对自己云主机进行扫描
命令:nmap [公网ip]