httpd实现http简单功能
admin
2023-03-03 09:42:18
0
  1. httpd实现用户访问控制:
    (1)定义安全域
    基于单个用户进行控制:
    
        Options None
        AllowOverride None
        AuthType Basic
        AuthName "String"
        AuthUserFile "/etc/httpd/conf/.httpdpasswd"
        AuthGroupFile "/etc/httpd/conf/.grp"
    
       Require ip 172.20
       Require user ops1
    
    

    基于用户组进行控制:

    
    Options None
    AllowOverride None
    AuthType Basic
    AuthName "String"
    AuthUserFile "/etc/httpd/conf/.httpdpasswd"
    AuthGroupFile "/etc/httpd/conf/.grp"
    
       Require ip 172.20
       Require  group ops
    
     

(2)提供账号和密码存储(文本文件)
使用专用命令完成此类文件的创建及用户管理

htpasswd  [options]   /PATH/TO/HTTPD_PASSWD_FILE  username 
    -c:自动创建此处指定的文件,因此,仅应该在此文件不存在时使用;
    -m:md5格式加密
    -s: sha格式加密
    -D:删除指定用户
    -b:批模式添加用户 
[root@localhost conf]# htpasswd -bc  /etc/httpd/conf/.httppasswd ops1 123456
Adding password for user ops1
[root@localhost conf]# vim /etc/httpd/conf/.grp
ops:ops1 ops2

(3)重启测试:
[root@localhost conf.d]# systemctl restart httpd
httpd实现http简单功能
2.虚拟主机的配置
(1)基于IP地址的虚拟主机

[root@localhost /]# mkdir /data/html/{a,b} -pv
mkdir: created directory ‘/data/html’
mkdir: created directory ‘/data/html/a’
mkdir: created directory ‘/data/html/b’
[root@localhost /]# vim /data/html/a/index.html

hello a

[root@localhost /]# vim /data/html/b/index.html

hello b

[root@localhost conf.d]# vim vhost_ip.conf ServerName www.a.com DocumentRoot "/data/html/a/" Options None AllowOverride None Require all granted ServerName www.b.com DocumentRoot "/data/html/b/" Options None AllowOverride None Require all granted

(2)基于端口的虚拟主机:

[root@localhost conf.d]# vim vhost_ip.conf 
Listen 8080

    ServerName www.a.com
    DocumentRoot "/data/html/a/"
    
        Options None
        AllowOverride None
        Require all granted
    


    ServerName www.b.com
    DocumentRoot "/data/html/b/"
    
        Options None
        AllowOverride None
        Require all granted
    

(3)基于FQDN的虚拟主机:

[root@localhost conf.d]# vim vhost_ip.conf 

    ServerName www.a.com
    DocumentRoot "/data/html/a/"
    
        Options None
        AllowOverride None
        Require all granted
    


    ServerName www.b.com
    DocumentRoot "/data/html/b/"
    
        Options None
        AllowOverride None
        Require all granted
    

注意:如果是httpd-2.2,则使用基于FQDN的虚拟主机时,需要事先使用如下指令:NameVirtualHost IP:PORT

3.实现https
[root@localhost conf.d]# yum install -y mod_ssl
(1)构建私有CA:

生成私钥;
~]# (umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096)
生成自签证书;
~]# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 3655
-new:生成新证书签署请求;
-x509:生成自签格式证书,专用于创建私有CA时;
-key:生成请求时用到的私有文件路径;
-out:生成的请求文件路径;如果自签操作将直接生成签署过的证书;
-days:证书的有效时长,单位是day;
为CA提供所需的目录及文件;
~]# mkdir  -pv  /etc/pki/CA/{certs,crl,newcerts}
~]# touch  /etc/pki/CA/{serial,index.txt}
~]# echo  01 > /etc/pki/CA/serial

(2)要用到证书进行安全通信的服务器,需要向CA请求签署证书

用到证书的主机生成私钥;
~]# mkdir  /etc/httpd/ssl 
~]# cd  /etc/httpd/ssl
~]# (umask  077; openssl  genrsa -out  /etc/httpd/ssl/httpd.key  2048)
生成证书签署请求
~]# openssl  req  -new  -key  /etc/httpd/ssl/httpd.key  -out /etc/httpd/ssl/httpd.csr  -days  365
在CA主机上签署证书;
~]# openssl ca  -in  /etc/httpd/ssl/httpd.csr  -out  /etc/pki/CA/certs/httpd.crt  -days  365
[root@localhost /]# vim /etc/httpd/conf.d/ssl.conf 
DocumentRoot "/data/html/b/"
ServerName www.b.com:443
SSLCertificateFile /etc/httpd/ssl/httpd.csr
SSLCertificateKeyFile /etc/httpd/ssl/httpd.key

    Options None
    AllowOverride None
    Require all granted

相关内容

热门资讯

农业农村“半年报”发布,这些看... 7月24日召开的国新办发布会上,农业农村部介绍2026年上半年农业农村经济运行情况。夏粮喜获丰收、常...
世界遗产+1!景德镇打卡地图,... 北京时间7月25日,在韩国釜山举行的第48届世界遗产大会上,由我国申报的“景德镇手工瓷业遗存”项目经...
有人呼吁白宫“封杀”中国开源大... 未来一段时间,将有多款中国开源模型发布。Kimi K3定于7月27日正式开源,阿里即将开源2.4万亿...
20名“高考状元”选择学医!此... 2026年香港高考的24名“状元”中,有20人明确表示将留港攻读医科。多年来,香港最顶尖的“学霸们”...
“抢人大战”,风向有变? 各地一场“抢老人”的大战,已然徐徐拉开大幕。最近,有着人口净流出压力的吉林,计划拿出3亿元发展旅居康...
石家庄一家不限量的爱心素食面馆... 7月24日正午时分,记者来到位于石家庄市新华区东明家居西二环店北门旁的“素面”小店,不大的店面里坐满...
中材科技申请风电叶片外补强辅助... 国家知识产权局信息显示,中材科技(伊吾)风电叶片有限公司申请一项名为“风电叶片外补强辅助固化装置”的...
为人工智能治理提供重要公共产品 图为2026世界人工智能大会暨人工智能全球治理高级别会议举办期间,在世博展览馆灵心巧手展位,参观者观...
泽连斯基称俄对乌多地发动大规模... 当地时间25日,乌克兰总统泽连斯基通报称,俄军于当日凌晨对乌克兰多地发动大规模空袭,使用2枚导弹、近...