初学Linux——week4

目录:
  https(mod_ssl)   邮件(postfix)   parted(GPT分区)  虚拟内存(SWAP)  链路聚合(teamdctl)   防火墙端口转发(port)  查看占用空间(du)  软硬连接(ln快捷方式) 打包(zip)  源码包编译安装  RAID磁盘阵列(day18)  进程管理(ps……)  运行模式(mul ,  gra)

重点掌握: DNS服务  PXE网络装机

命令:
  1. mkswap 、 swapon   虚拟内存 
  
  2. parted 、 mktable 、 mkpart 、 unit 创建GPT分区

  3. nmcli ………………  链路聚合

  4. zip  [-r]  [包].zip  [被打包的文件或目录]…………
     unzip  [包].zip  -d  [解压路径]

  5. createrepo  [存储RPM包的目录]   ----> 建立yum仓库

  6. make 、 make install  、 ./configure   编译安装

  7. wc  -l --->  统计文本行数

  8. ps 、 pstree 、 top 、 pgrep 、 who 、 jobs 、 bg 、 fg 、 kill 进程管理

  9. journalctl 、 tailf 日志


常见协议

协议含义端口
http超文本传输协议80
https安全的超文本传输协议443
ftp文件传输协议21
tftp简单的文件传输协议69
dns域名解析协议53
smtp发邮件协议25
pop3收邮件协议110
snmp网络管理协议161
telnet远程管理协议23

目录结构

/boot存放系统引导必需的文件,包括内核、启动配置
/bin、/sbin存放各种命令程序
/dev存放硬盘、键盘、鼠标、光驱等各种设备文件
/etc存放Linux系统及各种程序的配置文件
/root、/home/用户名 分别是管理员root、普通用户的默认家目录
/var存放日志文件、邮箱目录等经常变化的文件
/proc存放内存中的映射数据,不占用磁盘
/tmp存放系统运行过程中使用的一些临时文件

https 安全web 构建

1.装包 mod_ssl

2.部署 网站证书、根证书 :/etc/pki/tls/certs/
    私钥 : /etc/pki/tls/private/

3.修改配置文件  /etc/httpd/conf.d/ssl.conf 59-60、100、107、122行

4.重启httpd服务


邮件服务

1.装包 postfix

2.配置 /etc/postfix/main.cf

3.起服务 systemctl restart postfix

  发邮件  echo '[邮件内容]' | mail -s '[邮件标题]' -r  [发件人] [收件人]

  收邮件  main -u [用户]


分区

1.LVM逻辑卷 ---> week2

2.MBR 3+n个分区 ---> fdisk ---> day12

3.GPT n个分区 ---> parted
  mktable gpt  指定分区类型  
  mkpart  创建分区
  unit GB  用GB做单位


虚拟内存

  一般文件类型格式化、使用方法为:
     mkfs.[文件类型]  [分区]
     mount ---> 挂载使用
     df  -h ---> 查看挂载信息
     开机自动挂载: [存储路径]   [挂载点]   [文件类型]  defaults  0  0

  虚拟内存:
     mkswap  [分区]
     swapon  [存储路径] ---> 启用
     swapon -s  ---> 查看启用情况
     开机自动挂载: [存储路径]  swap  swap  defaults  0  0


链路聚合
  1. 创建一个作为聚合点的虚拟网卡 :  最后配置那里可以参考 man teamd.conf
    nmcli  connection  add  type team  con-name  team0  ifname team0  autoconnect  yes  config '{"runner": {"name": "activebackup"}}'
  
  2. 加入成员
    nmcli  connection  add type  team-slave con-name team0-1 ifname eth1 master team0 

  3. 配置IP
    nmcli connection modify team0  ipv4.method manual ipv4.addresses 192.168.1.1/24  connection.autoconnect yes

  4. 激活,每个网卡都要激活
    nmcli connection up team0
    nmcli connection up team0-1

    teamdctl team0 state  #专业查看team0的命令


防火墙: week 3
   public  trusted  block  drop
   firewall-cmd --set-default-zone=[]
   firewall-cmd --get-default-zone
   firewall-cmd --zone=[] --add-service=  加服务
   firewall-cmd --zone=public --add-forward-port=port=[客户请求访问的端口号]:proto=tcp:toport=[转变后的端口号]     端口转发
   firewall-cmd --permanent    对防火墙进行永久配置


统计文件占用空间: du  -sh  (常用)
   du  -s   统计每个参数占用的空间
   du  -h   提供一个易读的单位


软硬连接的区别 (day16)   
  创建软连接  ln -s [原文件]  [快捷]
  创建硬链接  ln  [原文件]  [快捷]


zip打包

  zip  [-r]  [包].zip  [被打包的文件或目录]…………
  unzip  [包].zip  -d  [解压路径]

 对比:
  tar -[]cf [包]  [被打包的文件或目录]…………
  tar -xf [包]  -C  [解压路径]


源码编译安装:

  0. 装包  gcc make
  1. 解包  解开tar包
  2. 配置  ./configure
  3. 编译  make
  4. 安装  make install


DNS服务器

  1.搭建DNS:
      装包: bind bind-chroot
      配置: 主配置文件/etc/named.conf
            地址库文件 /var/named/*
      起服务: named

  2.多区域DNS, 主配置文件中写多个zone, 每个对应创建一个地址库文件

  3.特殊解析:
      轮询 : 地址库文件中同样的域名写多次,但是每次解析的IP不一样,第一次有客户段请求解析的时候,DNS会返回第一个IP,第二个来的时候会返回第二个,以此类推。
      泛域名 : 用通配符*代表地址位
      别名 : CNAME 

  4.子域授权:
    在两个服务器上搭建DNS,其中一个是父域,一个是子域,父域中把子域的信息录入

  5.递归解析:
    默认开启

  6.每个Linux 都有个文件/etc/hosts 这文件也可以解析DNS,他解析优先级高于DNS

  7.分离解析 让不同用户解析的结果也不一样

  8.缓存服务器

DNS服务器的配置文件,总和:

如果是缓存DNS服务器,只有一个主配置文件,没有地址库文件:

options {
  directory       "/var/named";
  forwarders {  [缓存服务器查找的DNS服务器,一般是网络中的DNS服务器];  };
};

完整的正常DNS服务器:

/etc/named.conf 主配置文件:

options {
  directory "/var/named";  #指定地址库文件存放位置
  recursion no;      #禁用递归解析,不写的话默认开启
};

acl "[acl名]" { [A的IP1];  [网段 如 192.168.110.0/24];  …………};     #类似变量
view  "[名字1]"  {						#用于分离解析
  match-clients {  [上面定义过的acl表];  };
  zone  "[域名1]"  IN  {
    type  [master/slaver];
    file  "[为A解析的库文件名]";
  };
  zone  "[域名2]"  IN  {
    type  [master/slaver];
    file  "[为A解析的库文件名]";
  };
};

view  "[名字2]"  {
  match-clients {  [B的IP1]; …………  };
  zone  "[域名1]"  IN  {
    type  [master/slaver];
    file  "[为B解析的库文件名]";
  };
  zone  "[域名2]"  IN  {
    type  [master/slaver];
    file  "[为B解析的库文件名]";
  };
};

view  "[名字3]"  {
  match-clients {  [any代表所有];  };
  zone  "[域名1]"  IN  {				#两个zone代表多区域DNS
    type  [master/slaver];
    file  "[为其他解析的库文件名]";
  };
  zone  "[域名2]"  IN  {
    type  [master/slaver];
    file  "[为其他解析的库文件名]";
  };
};

/var/named/*.zone 相关地址库文件

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
yzy.com.        NS      serverA
cool.yzy.com.   NS      serverB		#子域授权和下面一起
serverA         A       [A服务器的IP]
serverB         A       [B服务器的IP]        # 子域服务器的IP,用于递归查找
www             A       [web服务器的IP]
www		  A	   [web服务器的IP2]     #轮询
ftp             A       [ftp服务器的IP]
abc		  CNAME   www			#别名
*        A    [通用情况下的IP]		#泛域名

进程管理(day18)

  pstree -a 显示完整的命令行
  pstree -p 列出对应PID编号
  ps aux 列出正在运行的所有进程,显示的和下面的命令不一样
  ps -elf 列出正在运行的所有进程
  top  一直查看进程
  pgrep  -l:输出进程名,而不仅仅是 PID
         -U:检索指定用户的进程
         -t:检索指定终端的进程
         -x:精确匹配完整的进程名
  who 查看登录用户信息(还有w、users也可以查看用户登录情况,不过不常用)
   命令后面加上 & 执行,表示放入后台执行
   执行命令中  ctrl + z 表示命令停止并且放入后台
  jobs 查看后台进行信息
  bg [编号]  将后台某编号的进程,继续运行  
  fg [编号]  将后台某编号的进程,恢复到前台运行
  kill  PID 杀死进程  加上-9表示强制杀死 
  killall  表杀死相关的所有进程
  killall -9 -u [用户]  强制踢出一个用户


日志管理

    /var/log/messages  记录内核消息、各种服务的公共消息
    /var/log/dmesg     记录系统启动过程的各种消息
    /var/log/cron      记录与cron计划任务相关的消息
    /var/log/maillog   记录邮件收发相关的消息
    /var/log/secure    记录与访问限制相关的安全消息

    tailf  实时跟踪日志信息 (day18)
    分为0-7 一共8个级别 ,3级为错误,3级以上需要重视

    journalctl  |  grep   [关键词]
    journalctl  -u  [服务名]
    journalctl  -n  [信息数]
    journalctl --since="yyyy-mm-dd HH:MM:SS" --until="yyyy-mm-dd HH:MM:SS"


运行模式
    graphical.target :图形模式
    multi-user.target:字符模式
   
    当前切换 systemctl isolate  ……
    永久切换 systemctl set-default  ……


PXE 装机 :
  dhcp--->tftp--->安装清单--->菜单目录--->rpm包共享--->自动应答

1.DHCP 配置
   装包:dhcp

   配置:/etc/dhcp/dhcpd.conf

subnet  [网段].0  netmask  255.255.255.0 {  #分配的网段
   range [IP-起点]  [IP-终点];      #分配IP地址范围
   option domain-name-servers [DNS服务器IP];  #分配的DNS服务器
   option routers [网关IP];            #分配的网关地址
   default-lease-time 600;
   max-lease-time 7200;
}

2.搭建tftp
   装包:tftp-server

   起服务: tftp

   部署 pxelinux.0 文件 :
  yum  provides  */pxelinux.0   #查询仓库中哪个包产生改文件
  yum  -y install syslinux 
  rpm -ql syslinux | grep pxelinux.0   #查询安装清单
  cp /usr/share/syslinux/pxelinux.0    /var/lib/tftpboot/    #将文件拷贝到tftp下

   部署菜单文件 : /var/lib/tftpboot/pxelinux.cfg/default 

   部署菜单文件中需要的模块
     图形的模块 vesamenu.c32
     背景图片 splash.png
     启动内核 initrd.img
     驱动程序 vmlinuz

   修改菜单文件: (day19)

3.搭建web或者ftp共享

4.自动问答
   装包:system-config-kickstart

   修改本地yum源:把标识修改为[development]

   运行:system-config-kickstart

   利用web或者ftp共享应答文件
   
   修改菜单文件指定应答文件

菜单文件核心模块:

  label linux
    menu label Install RHEL7    #菜单选项显示内容
    menu default                #读秒结束默认选择
    kernel vmlinuz              #加载内核
    append initrd=initrd.img  ks=http://192.168.4.7/ks.cfg  #加载驱动,指定问答文件

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值