Open jinhucheung opened 8 years ago
当网络上一个连线要求进入我们主机获取资源时,这个数据包进入主机整个流程是怎样的?
网络数据包传输是双向的,当数据包进入主机时会被一层层防护筛选,最后才能获取到主机中的资源,下图是数据包进入主机的流程
netfilter
与TCP wrappers
iptables
这个组件提供,对TCP/IP包表头信息进行过滤,主要对象是MAC/IP/ICMP/TCP/UDP数据包/etc/hosts.allow
与hosts.deny
中设置/etc/shadow
/etc/login.defs
中设置密码须变更的时间主机保护有以下几个方向:
iptables
/tcp wrappers
强化网络防火墙logwatch
)后面部分也会谈到软件更新/减少网络服务(限制端口)等操作,有关SElinux部分请看Linux 学习之程序管理与SELinux
通常我们都是通过线上自动升级机制的yum/apt/you/urpmi
来更新软件的,它们基于自家的包管理器(如rpm/dpkg)
如果我们以tarball方式安装的软件,要进行升级,就只能自己到相关官网上下载更新的tarball,再次编译安装了
yum
基于RPM软件包管理,yum
会连线yum服务器上下载RPM软件清单(记录了各软件的相关信息与依赖关系),通过RPM软件界清单,直接下载我们需要的软件以及前驱软件
yum更新软件流程如下图
/etc/yum.rrepos.d/*.repo
)判断yum服务器IP地址
yum clean
手动删除yum除了可以安装升级软件外,其还提供了软件搜索以及软件群组等功能
yum指令的用法如下
yum [options] [相关参数]
install
安装指定的软件update
升级软件,后接软件名时,表指升级该软件,否则是全系统升级remove
移出软件list
列出所有可获得以及已安装的软件search
在RPM清单中搜索软件(即yum服务器上搜索) 本机搜索用rpm -qa | grep "keyword"
info
显示软件详细信息clean
清除/var/cache/yum
中的安装包grouplist
列出可使用的软件组groupinfo
显示软件组的详细信息groupinstall
安装软件组groupremove
移出软件组首先我们要知道什么样的网站才是镜像网站,比如CentOS的镜像网站列表https://www.centos.org/download/mirrors/
但是我进入这个镜像网站里有好多目录,我该怎么做,比如下面这个北京理工大学的CentOS镜像网站 http://mirror.bit.edu.cn/centos/
我们先找到相对应的系统版本,比如我是CentOS7,进入后发现有好多目录,其实这些目录称为容器,提供某类型软件,比如操作系统软件os
与一般软件updates
这两个容器,其下面有一个repodata
目录,那就是我们软件列表清单相关数据存放处
经过以上操作,我可以找到一个更新CentOS7的系统的容器http://mirror.bit.edu.cn/centos/7/os/x86_64/
/etc/yum.repos.d/*.repo
在/etc/yum.repos.d
目录下新建或修改repo文件,比如我这个CentOS-Bit-Base.repo文件
[bit-base] #容器名 不能同名
name=CentOS-$releasever -Bit-Base # 说明容器
baseurl=http://mirror.bit.edu.cn/centos/7/os/x86_64/ #容器地址
gpgcheck=1 #公匙相关
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enable=1 #启动这个容器
#released updates
[bit-updates]
name=CentOS-$releasever -Bit-Updates
baseurl=http://mirror.bit.edu.cn/centos/7/updates/x86_64/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enable=1
yum repolist all
yum clean all
当你启动一个服务时,这个服务根据TCP/IP相关协议启动一个端口(port)在监听,也就是说端口提供服务 端口有以下特点
/etc/services
可以查看netstat
: 查看本机上面启动的端口
netstat -tulnp
netstat -tun
netstat -tunp
+kill -9 pid
nmap
侦测网络上其他主机启动的端口,通常是同子网内主机的检测(不要去扫其他人主机,会违法的)
nmap [ip|hostname|(network/netIDNum)] -PT
nmap [ip|hostname|(network/netIDNum)] -sP
Index