Centos入门-2

1.rsyslog日志: |--日志目的:记录系统运行状况,记录设备的各类信息,正常运维时作为监控使用;出现问题检查日志来查找问题来源
                |-- {1}rsyslog保存位置 :/var/log
                    {2}secure message dmesg boot.log  {四个常用log}
                    {3}service rsyslog status 
                       service rsyslog start|restart|stop 
                      
                       tail -f /var/log/secure {实时监控登陆情况,防止暴力破解}

                |--两大属性:
                             |--facility: kern user mail daemon auth syslog 
                                          lpr authpriv cron news uucp ftp local0~local7 

                             |--priolity: Emergency Alert Critical Error Warning Notice Infomational Debug
       
                |--rsyslog配置文件:
                             |--  /etc/rsyslog.conf
                             
                             |-- 文件格式: falicity.priolity   path
                                  
                                  mail.*    -/var/log/maillog  {异步写入硬盘:启用缓存}
                                  *.info;mail.none;authpriv.none;cron.none  /var/log/message
                                  kern.Error  /var/log/kern-Error

                                  *.*   @192.168.1.1     {UDP}
                                  *.*   @@192.168.1.1    {运维时,把所有日志发送到目的机器,这里是TCP}


2.DNS基础:
           |--域名分解: www.linuxcast.net.{net.这个点一般省略了}  ---> 主机名 域名称 域类型
           |--个人计算机等价于一台DNS客户端,每台计算机基于program{例如chrome},进程或者服务,
                                             调用操作系统底层的功能,{ linux 是 gethostbyname() }
                                             向外界DNS服务器发起查询,对指定域名进行解析,
                                             最终program获得返回的ip.
           |--解析方式:
                         |-- file : ( /etc/hosts /etc/networks)
                         |--dns
                         
                         |-- 指定解析优先级:cd /etc/nsswitch.conf 
                                             hosts: files dns 
  
                        (可以修改/etc/hosts,手工指定域名指向哪里:这是钓鱼网站病毒的常用伎俩)
                                             

           |--DNS解析流程:  |--图示1:          .                  ---> root server 
                                                |
                                        com  cn  org net edu gov   ---> top revel server
                                                      |
                                                    linux.net      ---> user server   {公司自己内部的DNS服务器}
                                                       |
                                                   www mail ftp    ---> user server   {直接可以查主机了}

   
                                         
                             |--图示2:实际中,recursive query{循环查询}结合 lterative query{递归查询} 

                             |--实例追踪: dig +trace www.linuxcast.net
 
           |--资源记录(通过RR的格式)
                   |--格式: NAME CLASS TYPE RDATA
 
                             www     IN  A      192.168.100
                             mail    IN  A      192.168.200
                             server1 IN  CNAME  www
                                     IN  MX 10  mail.linuxcast.net

                   |--TYPE:   A    -->   ipv4地址   
                             AAAA        ipv6地址
                              MX         邮件记录
                             CNAME       别名
                             PTR         指针{逆向解析}
                             SRV         服务资源

       
         
           |--DNS服务器类型:Master{主服务器}                 -->保存该域配置文件ZONE,具有修改,更新的权限.    
                             Slave{负载:从服务器}               无权限修改ZONE,但通过对比serial更新自己的信息.
                             Chaching only server{缓存服务器}    不存在任何ZONE,用于负载均衡和加速访问.


           |--ZONE文件:  --------------------------------------
                          |  STTL 1D                           |
                          |  @ IN SOA @ rname.invalid          |
                          |                   0    ; serial    |
                          |                   1D   ; refresh   |
                          |                   1H   ; retry     |
                          |                   1W   ; expire    |
                          |                   3H)  ; minimum   |
                          |        NS @                        |    需要配置的就是最后两行.
                          |        MX 10 mail.linuxcast.net    |
                          |  www   IN A 192.168.1.100          |  ---> www
                          |  mail  IN A 192.168.1.200          |  ---> mail
                          |                                    |
                          --------------------------------------


           |--高级查询: dig -t mx  gmail.com   {给定一个域,查询该邮件服务器的信息}
                          
                         dig -x www.linuxcast.net  {逆向解析:知ip求域名,这个不一定成功。}
                      
                         dig -t soa linuxcast.net   {就是返回ZONE的3个时间}




3.BIND服务器基础:|--历史:berkerly internet name Domain ,属于DNS服务软件.
                  |--支持linux unix mac windows (主流基本上都支持)
                  |--BIND服务名称为 named
                  |--默认不安装,安装命令: yum install -y bind bind-chroot bind-utils  
                                                                {这里额外安装了 bind-chroot bind-utils}

                  |--DNS默认使用port: 53 {domian}       953 {rndc},{这是远程登录}

  BIND配置:  |--bind-chroot 是一种安全机制,创建"伪根",保护/安全性.  
              |--如果没有安装 bind-chroot,bind默认的两大配置文件在这里:
                                                 bind主配置文件        :  /etc/named.conf
                                                 ZONE文件{配置master}  :  /var/named/
                 如果启用bind-chroot:
                                                 bind主配置文件: /var/named/chroot/etc/named.cnf
                                                 zone          :  /var/named/chroot/var/named/

              |--配置2个基本配置文件:

                  {鉴于bind配置文件和ZONE书写很复杂,采取复制模板修改的方式创建并配置这两个文件}
                  {bind服务很特别,即使安装好这个软件,这两个配置文件还是需要自己动手创建}
                  {所有软件或服务都有一个帮助文档:/usr/share/doc/bind-9.8.2/   -->复制这里的sample文件夹的内容.}
         
                  |-- cp -rv /usr/share/doc/bind-9.8.2/sample/etc/* /var/named/chroot/etc/*
                      cp -rv /usr/share/doc/bind-9.8.2/sample/var/* /var/named/chroot/var/*
 
                      对于/var/named/chroot/etc/named.conf,它最小配置为3行:

                                     options{
                                             dirtory               "/var/named";                  //这是工作目录
                                             listen-on port 53     {127.0.0.1};
                                             listen-on v6 port 53  {...};
                                  };

                 
                  
              |--配置域主服务器:{1}在 /var/named/chroot/etc/named.conf 添加该域的定义:

                                         zone "linuxcast.net"{
                                             type master;
                                             file "linuxcast.net.zone";
                                       };                             
           

                                 {2}在 /var/named/chroot/var/named/ 中创建该域的ZONE文件,编辑ZONE,添加信息.
                                       {鉴于zone文件很复杂,所以也是复制模板来修改即可}
                                          cd /var/named/chroot/var/named/
                                          cp named.localhost linuxcast.net.zone
                                       {再追加想添加的资源记录:}
                                                IN MX 10    mail.linuxcast.net.   //这里.不能丢,且邮件服务必须放在第一行
                                                                                  
                                          www   IN A    192.168.1.111
                                          mail  IN A    192.168.1.222

                                       {好习惯:每次配置好之后,ls -l 确保文件的UGO中的"O"均有r的权限,没有应该去修改O}
                                          
      
                                 {3}service named start|reload

                                 {5}使用 host dig 测试域信息是否正常。
                                      {1}-- setenforce 0  {防止selinux阻止}
                                      {2}-- cd /etc/resolv.conf  修改 nameserver 127.0.0.1   {就是把本机作为dns服务器}
                                      {3}-- host dig  {调用存在于BIND的ZONE文件里面保存的资源信息.}

                                      {4}named-checkconf    named-checkzone  排查named.conf和zone文件的语法错误.    


4.BIND从服务器配置:
                    |--目的:第一是负载均衡,第二是备份:当master出故障,让slave代替工作.
                
                    |--配置: |--同样安装好BIND服务,但是只需要创建主配置文件/var/named/chroot/etc/named.conf

                              |--在master的/etc/named/chroot/etc/named.conf去掉listen port 
                                          {默认只监控"环回接口":lo,即本机},让它可以监控所有网卡接口.

                              |--在slave的/etc/named/chroot/etc/named.conf里面加新的zone定义:{就是添加域信息}
                                         zone "linuxcast.net"{
                                               type slave;
                                               masters { 192.168.1.10; };  //指定master的ip {slave需要在master抓zone}     
                                               file "slaves/linuxcast.net.zone";                                        
                                        }; 


                              |--service reload|start 即可.

                   |--注意:
                           |--配置完成,需要手工在/etc/named/chroot/var/named/slaves 看linuxcast.net.zone存在吗?
                                         {成功抓取到zone才算配置成功了}

                           |--在DNS服务启动时,是以named的用户身份运行,所以slaves文件夹的读写权限属于named,
                              注意查看并修改slaves的用户和附属组都是named.    {否则slaves文件内容写不进去}
 
                           |--有时候排错次序: iptables -L {查看防火墙}     setenforce 0  {关闭selinux}   




  BIND缓存服务器配置:

                    |--目的:加速"内网客户端"对外网DNS解析的速度,是设置在内网出口的一台服务器,供局域网客户端使用.
                             当然,也可以仅仅当做一台代理服务器使用.

                    |--配置:待了解

                    |--还可以为缓存服务器加一个forwarders  {上游DNS服务器}

                       用途:企业不仅要能访问缓存服务器本身的缓存DNS解析信息,还需要访问其他互联网上的信息.
                       配置:在master的named.conf的options加一行:  forwarders { 196.168.1.666; };

 
                    |--如果仅作代理服务器的功能{自身不提供DNS}  
                             在master的named.conf的options再加一行: forward only;



5.FTP共享服务:
               |--基于TCP的文件传输,所以很可靠; 服务器占用21{receive and sent command}20{data}号端口

               |--FTP两种模式:  active: 标准模式,服务器主动发起连接 {所以服务器总是 20号端口 sent和receive  data}
                                 pasive: 由于防火墙禁止外网进入内网,所以这里是client发起数据连接,
                                         服务器告诉会client一个自己的随机的端口

               |--vsftpd服务:

                        |--linux的一款非常安全的ftp服务软件

                        |--安装:yum install -y vsftp      {配置提供ftp的服务器}

                        |--配置文件:  /etc/vsftpd/vsftpd.conf     //主配置文件  //这个文件系统已经配置,所以无需用户配置

                                       /etc/vsftpd/ftpusers        //黑名单
                                       /etc/vsftpd/user_list       //控制用户是黑还是白名单
                                       /var/ftp                    //默认的ftp共享目录,也是匿名用户的家目录.     
                                       /var/ftp/xferlog            //vsftpd的服务日志



                    |--ftp用户登陆: 
                                     |--  yum install -y lftp   //安装登陆工具    {配置需要登录ftp服务器的客户机}

                                     系统用户{正常用户} : lftp -u haoge 192.168.0.200   {默认进入用户的家目录}
                                     匿名{anonymous}   :   lftp 192.168.0.100  

                                                           {linux默认匿名登陆,在配置文件里面可以修改}
                                                           {默认的家目录是/var/ftp/}
                                                           {这个用户是系统在安装ftp服务就默认创建一个ftp用户,
                                                            在/etc/passwd 里面可以查到 :cat /etc/passwd | grep ftp 
                                                            }

                                     虚拟{ftp-only}    :    {登录用户很多时,专门用来登陆ftp而创建的用户}


                     |--正常用户下载和上传:

                                     get aaa  {用户在哪个目录登陆ftp,文件就下载在哪个目录,一般选用户的家目录}

                                               {比如我们切换到centoslive的用户身份,在家目录下面创建aaa,

                                                然后切换到root用户的X目录,然后 lftp -u centoslive 127.0.0.1,
                                                                         登录到centoslive的家目录,ls -l查看所有文件
                                                get aaa,
                                                eixt退出后,
                                               在root当时登陆ftp的X目录已经有了aaa   
                                               }

                                     put bbb {我们在root用户的家目录创建一个bbb,
                                              然后登陆到centoslive的家目录,lftp -u centoslive 127.0.0.1,  ls看下文件
                                              put bbb,
                                              退出exit,
                                              切换到centoslive,发现在其家目录里面已经有了bbb
                                             }

                                     /* 前提:下载要求某用户必须对这个文件夹有r权限,上传要求用户必须对这个文件夹有w */

                            

                     |--匿名用户上传和修改:
                             {默认匿名用户只有r,如果希望某个文件区域,任何用户都可以创建文件和上传文件}
                           
                               |--修改/etc/vsftpd/vsftpd.conf:  

                                                  anonymous_enable =YES             //开启匿名用户 {系统默认}
                                                  anon_upload_enable = YES          //打开匿名用户上传功能
                                                  anon_mkdir_write_enable = YES     //打开匿名用户创建文件夹功能.

                                  然后重启vsftpd: /etc/init.d/vsftpd restart  

                               |--赋予匿名对某文件夹的的w权限:

                                                 cd /var/ftp   {这里默认有一个pub}
                                                 ls -l         {发现pub的GO权限只有rx}
                                                 chmod 777 pub 

                                    ***--但是基于安全考虑,禁止匿名用户的家目录权限设置为777,
                                         最多只能设置它的子目录{/var/ftp/下面的目录}为777

                      
                     |--DropBox机制:

                            {我们这里,本机既是ftp服务器,也是ftp客户机}
                            {一个部门想让员工把工作报告全部上传到一个文件夹,但是所有人只有添加文件夹但是没有浏览权限,}
                            
                            cd /var/ftp
                            mkdir dropbox         {服务器的管理用户假设以root创建这个文件夹},{也可以用linuxcast用户创建}
                            ls -l
                            chmod 2733 dropbox
                            ls -l                 {这里一大部分是配置这个ftp服务器的}
                            
                            su - centoslive 
                            cd                 {切换至centoslive家目录}
                            touch aaa
                            lftp 127.0.0.1     {想象这是,相当于,客户机远程登录到/var/var}
                            ls -l              {应该会有pub 和 dropbox两个目录}
                            put aaa 
                            ls drop            {发现这里是有文件的,但是继续 cd drop   cat aaa 却显示没权限,打不开}
                            exit 
                         
                            su - root          
                            cd /var/ftp/
                            ls                 {会有pub 和 dropbox}
                            cat drop/box        {因为此文件当时在服务器上是root创建的,所以回到服务器,只有root能打开它}
          
                            
                            
                         

6.NFS协议-nfs共享服务:
              |--特点:{1}.仅适用于类unix之间的文件共享,且仅适用于局域网,广域网还是需要用http|ftp
                       {2}.和ftp|http最本质的区别:无需下载就直接可以浏览和修改文件.{只要权限足够}
                       {3}.NFS服务把服务器端的文件共享出来,客户机只需要挂载就可以如同使用本机文件一样方便.
                       {4}.三个主流版本:NFSv2  NFSv3 NFSv4      //centos6|redhat6 默认支持三个版本的客户端连接
                           NFS v2 v3 支持UDP或者TCP作为底层协议,v4默认TCP,
              
            |-----用法:
             
              |--{v2,v3需要启动rpc, v4默认开机自启动且防火墙友好,所以必须每次我们要确保rpc启动} 
                  service  rpcbind start|restart 

                  chkconfig rpcbind on         //这是让rpc开机自启动

              |--{我们需要自己启动NFS服务}
                  service nfs strat
     
                  chkconfig nfs on           //这是让nfs开机自启动

              |--默认NFS服务需要占用5个端口:4{挂载使用端口}+rpc服务端口

                    |--配置4个端口为固定: cd /etc/sysconfig/nfs 
                                           MOUNT_PORT = ""
                                           STATDPORT  = ""
                                           LOCKD_TCPPORT = ""
                                           LOCKD_UDPPORT = ""

                    |--还需要配置防火墙:让以上 4个端口 + NFS协议的2049端口 + RPC的111端口 可以通过防火墙的安全机制。


              |--NFS服务的共享配置文件: 
                    |--   cd /etc/exports

                    |--配置共享:  {一行代表一个共享}
                        共享目录 允许的客户机ip或域名(选项)      
                                                 //选项如果没写,默认加上:ro,sync,wdelay,root_squash{关闭root使用共享}
                        /linuxcast-nfs  192.168.0.100(ro, async)
                        /linuxcast-nfs  10.1.1.1(rw, sync)
                        /linuxcast-nfs  *.linuxcast.net 

                       |--NFS共享选项:  rw ,async {异步写入硬盘,支持缓存}, no_wdelay {关闭写延迟},no_root_squash
          
                    |--配置好共享后,重启nfs:
                       service start|exportfs -r 
 
                       exportfs -v     //查看当前共享列表:

              |--客户机访问共享文件:   {客户机登录前,看看服务器的配置 iptables getenforce 保证防火墙和selinux不会拦截}
                       |--   mount  -t  nfs  nfs服务器ip  共享路径  {就是exports里面写的共享目录} /mnt {挂载点}
                                         {在服务器机器上 ifconfig eth0 即可} 

                             //挂载也可以接参数:-o ro   -o rw  -o vers==4{以NFSv4方式挂载} 
        
                       |--开机自动挂载:如: cd /etc/fstab  往里面配置:
                                             192.168.1.100:/linuxcast-nfs  /mnt nfs defaults 0 0 

              
    

7.SMB协议-samba共享服务:
              |--SMB协议介绍:  

                        |--SMB原本是windows的文件传输协议,samba是SMB的开源实现.
                        |--文件共享,{以及:打印机共享,加入一个windows域环境,通过windows域环境认证.}
                        |--SMB又称为CIFS,可以实现在linux下搭建一个windows的共享服务

              |--samba: {主要服务:sambad}

                             |--smaba服务分两种:
                                                   |-- 独立服务器:

                                                   |-- 加入windows域环境:

                             |--samba的安全模式:user-level : user,  {domian ,ads,server}
                                                 share-level: share 

  

                 *配置*:|--服务器端:yum install -y samba
                                    
                                           |--主配置文件: /etc/samba/smb.conf 
                                              默认分为三部分:[global] [homes] [printers] //全局,家目录,打印机

                                           |-- samba的global配置格式:

                                                         |--配置workgroup: 
                                                            workgroup = LINUXCSAT
                                                            server string = linux samba server  //这是服务器信息,不重要
                                                                                                
                                                         |--配置安全模式:            //定义了密码加密的方式
                                                                     security = user  //默认是user  
                       
                                           |-- homes配置信息安装时系统已经配好,printers目前暂且不用管它.



                             |--共享linux用户的家目录:{linux的用户+smb密码}

                                        |--需要给通过smb协议的用户创建密码{用户名就是linux用户名}
                                                                     smbppasswd -a centoslive

                                        |--配置格式:见文件,系统已配置好,无需修改.

                                        |-- service smb start 
                                                              
                                        |--在客户端:访问一下测试. //默认进入了centoslive的家目录
                                 


                             |--创建独立共享: {不是某用户的家目录,而是我在服务器端自定义的一个文件夹}  
                                                                            
                                  |-- cd /etc/samba/smb.conf  依照文件例子自己创建一个:

                                       [linuxcast-smb]          //这里的名称很重要,和客户机地址栏需要输入的组名字一样.
                                       conment =                //改共享组的注释
                                       path    = /linuxcast-smb   //共享文件的路径,可任意修改.
                                       valid user = linuxcast     //声明有权限访问共享文件夹的用户,
                                                                    如果是组,可以写成 +group_name
                                       public     = no           //不登陆也能看见共享文件,就是YES.
                                       browsable = yes           //和 punblic=yes 结合一起实现不登陆也能看见共享
                                       writable  = yes           //可写权限.

                                       /* 一定注意这些参数彼此间不要起冲突,而且拼写注意不要错了*/
                                       /* 还有两个常用参数: printable=no  createmask=0765  */
                                
                                  |--   cd /
                                        mkdir linuxcast-smb
                                        cd linuxcast-smb
                                        mkdir pub
                                        chmod 777 pub          //尽量不要给一个共享的根目录一个777权限,
                                                                 不如给子目录极大权限,用户就可以对共享子目录有所有权限
                                        

                                     /*从这里我也看出来了,Linux用户对某些服务产生的文件的权限限制,
                                       一部分来自创建该文件的服务的主配置文件,一部分来自这个文件本身UGO对用户的限制*/
                        
                                  |-- 记住了一定要: service samba restart      //重启服务
                                      然后分别去linux,windows客户机测试下

  

                              |--创建匿名共享  {就是不需要用户名和密码}
                            
                                  |-- 修改[global] security = share
                             
                                  |--  cd /etc/samba/smb.conf  依照文件例子自己创建一个:

                                       [linuxcast-smb]          //这里的名称很重要,和客户机地址栏需要输入的组名字一样.
                                       comment =                //该共享组的注释
                                       path    = /linuxcast-smb   //共享文件的路径,可任意修改.
                                       read only = yes            //当前是只读,当然可以修改成读写.
                                       guest only = yes           //只允许匿名登录,不允许用户加密码登录
                                       

                                       /* 一定注意这些参数彼此间不要起冲突,而且拼写注意不要错了*/
                                
                                  |--   cd /
                                        mkdir linuxcast-smb
                                        cd linuxcast-smb
                                        mkdir pub
                                        chmod 777 pub 

                                  |-- 记住了一定要: service samba restart      //重启服务
                                      然后分别去linux,windows客户机测试下

                                      /*不过还是要查看pub的权限会不会对用户有限制,根据实际情况去修改*/


                              |--其他辅助命令:

                                  |-- testparm     //测试samba配置文件语法是否有错误

                                  |-- smbclient -L  192.168.1.100               //查看该服务器都有哪些共享
                                      smbclient -L  192.168.1.100 -U linuxcast  //看看用户能够访问哪些共享                      
             


                                                                       
                   |--客户端:  
                               |-- windows:
                                    
                                        /* 这里的linuxcast-smb是共享组的组名称,可不是共享目录名*/

                                        在文件管理器地址栏键入   \\192.168.1.100\linuxcast-smb     
                                   
                               |-- 类unix和linux:
                                         |--图形界面:smb://192.168.1.100/linuxcast-smb
                                         |--在CLI   : smbclient //192.168.1.100/linuxcast-smb -U centoslive

                                                //smbclient命令需要单独安装, yum list | grep samba
                                                       会发现有一个smb-client,yum安装即可.

                                         |--还可以使用mount挂载使用:

                                     mount -t cifs //192.168.1.100/linuxcast-smb /mnt username=centoslive passwd='haoge'





8.WEB--Apache:

              |--apache基础: |--web服务与http协议:

                                   |--web基本架构:
                                      client{browser} 《--->  web服务器{apache nginx} <-- app服务器 <-- database{MySQL}
                               
                                   |--http协议:
                                         |--基本方法:post get delete head{网页头信息}
                                         |--常见状态码:
                                             200      /* 正常                                   */
                                             301      /* 永久移动,一般用户域名重定向           */
                                             304      /* 未修改,一般用于缓存                   */
                                             401      /* 禁止访问,为授权                       */
                                             403      /* 禁止访问,但是已经通过授权,但没有权限 */
                                             404      /* 未找到资源                             */
                                             500      /* 服务器内部出错                         */

                              |--apache特点:
                                            *动态的,预创建的进程   //运转高效
                                            *动态模块加载           //维护升级网站功能时可以不用关闭apache
                                            *虚拟主机               //效率高,经济
                                            *SSL主机                //可加密某些网站的apache,安全
             


                              |--基础配置:
                                     |--安装和启动:
                                                  yum install -y httpd      {centos6默认集成了apache2.2}
                                                  service httpd start
 
                                                 /* apache是web服务器,默认占用80{http}和443{https}端口 */
                                     
                                     |--配置文件:
                                           
                                           |--主配置文件: /etc/httpd/conf/httpd.conf

                                               *基本配置选项*:
                                                     KeepAlive off
                                                     MaxKeepAliveRequest 100
                                                     KeepAliveTimeout 15
                                                     Listen 80                                              //可能需修改
                                                     LoderMoudle auth_bash_module module/mod_auth_basic.so
                                                     User apache
                                                     Group apache
                                                     ServerAdmin wedadmin@linucast.net                      //可能需修改
                                                     ServerName www.linuxcast.net                           //网站名字
                                                     DocumentRoot /var/www/html
                                                     <Directory "/var/www/html">
                                                     </Directory>             
                                                     DirectoryIndex index.html index.html.var                                                                                       

                                           |--模块配置文件:/etc/httpd/conf.d/

                                           |--日志文件:/var/log/httpd/                  /*网站统计信息和错误信息*/

                                     
                                     |--配置文件语法检查:
                                                       service httpd configtest
                                                       apachectl configtest
                                                       httpd -t
                        

 
              |--http认证:
                      |--特点:这是apache层面上的用户限制登录,与网页无关,而且安全性很低。
              
                      |--配置:

                             |--添加用户及密码:
                                  htpasswd -cm /etc/httpd/.htpasswd centoslive    //密码保存路径就这么写,约定俗成的.
                                  htpasswd -m  /etc/httpd/.htpasswd linuxcast     //这里-m不是-cm,是因为密码文件已存在.
 
                             |--确定哪个目录需要认证,修改这个目录配置即可
                                  vim  /etc/httpd/conf/httpd.conf 
                                  <Directory "/var/www/html/linuxcast-test">
                                   AuthName "LinuxCast Auth"
                                   AuthType Basic
                                   AuthUserFile /etc/httpd/.htpasswd
                                   Require valid-user
                                  </Directory>
                                  

              |--虚拟主机:

                      |--介绍:  
                             *概念:一台物理主机给多个网站提供web服务
                             *优点:节省服务器成本,大大提高服务器资源利用率
                             *分类:基于ip  :可用于SSL加密的,要求高安全性的网站,而且ip也要付费 
                                                {一般需要用到SSL,主机都是用单独的物理机了}

                                    基于域名:成本低,但不能进行SSL加密.
                    
                      |--基于域名的虚拟主机配置:
                            vim /etc/httpd/conf/httpd.conf
                             
                            NameVirtualHost *:80
                            <VirtualHost *:80>                             //www2同理这样配置  
                               ServerName  www1.linuxcast.net              //相关参数怎么写,文件的注释模仿着写即可
                               ServerAdmin webadmin@linuxcast.net
                               DocumentRoot  /var/www/html/linuxcast-1                           
                            </VirtualHost>

                            cd /var/www/
                            ls
                            mkdir linuxcast-1
                            mkdir linuxcast-2 
                            chown apache linuxcast-*                     //保证apache对每个网站的根目录都有读写权限. 
                            ls -l 
                            vim linuxcast-1/index.html
                            vim linuxcast-2/index.html 
                       
                           service httpd restart



9.mail :

       |--优点:用于商业上的通信服务{邮件可作为司法证据},工作效率也高{总不能上班的时候打开QQ一边聊天一边办公吧!}

       |--基本组件:
               |--四大程序:
 
                  *客户端:|--MUA                 //可以理解为邮件客户端,还有基于web的客户端{网页登陆}
                                                     通过SMTP协议,向服务器的MTA发送邮件.
                  *服务器端:

                           |--MTA                 //这是对SMTP的实现程序,比如:Postfix、Sendmial 

                           |--MDA                 //实现邮件的保存程序,把邮件保存在 /var/spool/mail/username.
                                                    常用的:procmail ,单独分离这个程序的目的:对邮件进行加密和垃圾筛选。

                           |--MRA                 //实现IMAP和POP3协议,与客户端交互,把邮件发送给MUA
                                                    常用的:Dovecot,而且支持加密{加密:某些网站网址为https}
               
               |--协议:
 
                  |--SMTP                // 这是MUA向服务器端发送邮件的协议.

                  |--IMAP                // 这是MUA从服务器端的MRA上接收邮件的协议.
                                            IMAP协议能实现客户端与服务器操作同步,所以更多使用. 
                  |--POP3                // 这是MUA从服务器端的MRA上接收邮件的协议.

                 /* 
                    所以在配置服务器时,需要配置SMTP服务器和IMAP服务器{或者POP3服务器}两台服务器
                    不同的域,不同服务器之间传输邮件也是通过SMTP协议{MTA}.
                 */


               |--DNS在邮件服务的作用:

                          |--邮件地址的写法:

                                  |-- haoge@mail.linuxcast.net       //这里主机名很明显
                                  |-- haoge@linuxcast.net            //这是是域名,所以还需要在DNS的MX记录里查主机名并
                                                                       进一步得到ip

                          |--正是因为邮件地址大多是采取域名指定,所以需要DNS解析


/*待学习*/ 
          |--Postfix服务器配置:
          |--IMAP服务器配置:

        


10.linux服务基础:
      
       |--服务含义:
                 {1}系统若干个程序的组合,然后实现某些基本功能,用服务去管理系统,实现各类功能。
                 {2}服务的分类:本机服务和网络服务(运维人员主要需要配置的)
                 {3}

       |--linux服务管理体系的设计架构:{继承了system V 和 xinetd}
               
              |-- system V :
 
                         |--定义了runlevel,而每个runlevel对应了该级别默认启动和不启动的服务    ----++
                         |--规定了系统第一个pid 1,即init进程。                                      |
                         |--规定了system V script控制每一个服务启动,关闭,重启,有一个固定格式.  <<---+
                            用户可以自定义脚本来控制服务状态.
                              * script保存在 /etc/rc.d/init.d/
                              * 调用该脚本: service 服务名 start|restart|stop|status

                         |--规定了runlevel的配置文件:
                              * /etc/rc.d/ 
                              * cd /etc/rc.d/rc5.d会发现:文件都是链接文件,文件名格式都是: S|K [01-99] 目标script的名字

                              {? 难道我们修改文件名去控制服务是否启动吗?肯定不是,有shell的.}

                              * chkconfig --list      //列出所有的服务.
                                chkconfig tftp on|off
                                              
              |-- xinetd   :
 
                         |-- 我们在 chkconfig --list 可能也发现了某些服务被单独列了出来,
                             这就是linux的另外一套服务管理体系.
                         |-- 其实linux把服务分成常用和不常用两类:
                                 * system V 默认把所有核心服务都开机启动,他们常驻系统
                                 * 但是某些很不常用的服务只是当需要的时候才会去启动,他们使用xnetd 管理
                         |-- xinetd 本身是作为一个常驻系统服务存在于 system V 的管理列表里的.
                     
                         |-- yum install xinetd 
                             service xinetd start 

                             *常用管理服务:talnet lftp rsync

                             * xinet的配置文件: /etc/xinetd.conf
                             * xinetd所控制的服务配置文件:/etc/xinetd.d/下与其同名的文件里

转载于:https://www.cnblogs.com/LS1314/p/8604096.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值