`

linux probe 十二

 
阅读更多

配置yum仓库

vim  /etc/yum.repos.d/rhel.repo 名称随意,但一定要repo结尾

[rhel] #yum的唯一标识,随意起名不能重复

name=rhel #名字

baseurl=file:///media/cdrom #本地用file:/// 第三个/是表示根目录。如果使用网络直接配置 http://mirrors.163.com/centos/7.6.1810/

enabled=1

gpgcheck=0

wq!

yum install httpd

systemctl restart httpd

systemctl enable httpd

cd /var/www/html  var存储经常改变的文件

echo "hahaha"  > index.html

用浏览器访问http://本机地址

将apache http的默认目录指向到 /home/wwwroot

vim etch/httpd/conf/httpd.conf

DocumentRoot /home/wwwroot

wq!

systemctl restart httpd

cd /home/wwwroot

ls

echo "hohoho" > index.html

SELinux 安全子系统。SELinux域 控制软件的权限,不能做越权的事情。SELinux安全上下文 限制文件只能被谁访问。

vim /etc/selinux/config 有三种模式enforcing强制开启,也是默认模式。permessive警告模式,访问请求记录到日志。disabled禁用模式,关闭selinux,一般工作中都是关闭模式。

getenforce 查询selinux的模式

setenforce 0 临时关闭selinux模式,此时http://本机地址可以访问。

setenforce 1 开启selinux模式

ls -dZ /var/www/html查看文件的selinux的权限

ls -dZ /var/home/wwwroot

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot 修改当前目录的上下文的权限

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/* 修改当前目录的文件的上下文的权限

ls -dZ /home/wwwroot

restorecom -Rv /home/wwwroot 生效上面的设置

浏览器访问http://本机ip 就可以访问了

 

为每个用户创建一个http网站

ip linuxprobe

passwd linuxprobe 重启密码 

vim /etc/httpd/conf.d/userdir.conf

#UserDir disabled

UserDir public_html  public_htmli

systemctl restart httpd

每个用户自己的家目录 http://ip/username

su - linuxprobe

cd /home/wwwroot

mkdir public_html

cd public_html/

echo "Linuxprobe.com" > index.html

cd ..

chmod -Rf 755 ~     ~指的是自己的家目录

setenforce 0 

http://ip/~linuxprobe/index.html

setenforce 1

getsebool -a  显示所有和服务相关的策略

getsebool -a | grep httpd

setsebool -P httpd_enable_homedirs=on   -P是永久生效的意思,开始这个策略就可以不用临时关闭selinux了。也可以访问网站

htpasswd -c /etc/httpd/passwd  piaopiao  开启没用用户登录都需要密码 piaopiao是用户名 密码回车后输入。

vim /etc/httpd/conf.d/userdir.conf

<Directory "/home/*/public_html">

authuserfile "/etc/httpd/passwd" 是指刚刚创建的文件,里面放着用户名密码

authname “hohohoho” 不是设置用户名,是设置访问网站时的提示是信息。

authtype basic

requeire user piaopiao 

</Directory>

systemctl restart httpd

http://ip  访问会有提示输入用户名 密码。 输入linuxprobe linuxprobe 不能登录,只能输入piaopiao linux

还原虚拟机

虚拟主机

vim /etc/sysconfig/network-scripts/ifcfg-eno167777

IPADDR0=192.168.10.10

IPADDR1=192.168.10.20

IPADDR2=192.168.10.30

yum install httpd 安装服务程序 apache http

vim /etc/httpd/conf/httpd/conf

在120行添加

<VirtualHost 192.168.10.10>

documentroot /home/wwwroot/10  先创建这个文件夹

servername www.linuxprobe.com

<Directory /home/wwwroot/10> 不区分大小写

allowoverride none 伪静态,也就是URL Rewrite(URL重写),它配合利用正则表达式,可以将url进行修改,可以利用网站的seo,也可以使url变得更加整洁,很是方便。

require all granted

</Directory>

</VirtualHost>

 

<VirtualHost 192.168.10.20>

documentroot /home/wwwroot/20  先创建这个文件夹

servername www.linuxprobe.com

<Directory /home/wwwroot/20>

allowoverride none 伪静态,也就是URL Rewrite(URL重写),它配合利用正则表达式,可以将url进行修改,可以利用网站的seo,也可以使url变得更加整洁,很是方便。

require all granted

</Directory>

</VirtualHost>

 

 

<VirtualHost 192.168.10.30>

documentroot /home/wwwroot/30  先创建这个文件夹

servername www.linuxprobe.com

<Directory /home/wwwroot/30> 不区分大小写

allowoverride none 伪静态,也就是URL Rewrite(URL重写),它配合利用正则表达式,可以将url进行修改,可以利用网站的seo,也可以使url变得更加整洁,很是方便。

require all granted

</Directory>

</VirtualHost>

wq!

cd /home/wwwroot

echo "192.168.10.1111" > 10/index.html

echo "192.168.10.2222" > 20/index.html

echo "192.168.10.3333" > 30/index.html

systemctl restart httpd

setenforce 0

http://192.168.10.10

setenforce 1

ls -dZ /var/www/html

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/10/*

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/20

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/20/*

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/30

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/30/*

restorecon -Rv /home/wwwroot 生效

http://192.168.10.10

恢复虚拟机

通过域名进行虚拟主机映射

vim /etc/hosts 设置域名ip绑定

192.168.10.10 www.a.com

192.168.10.20 www.b.com

192.168.10.30 www.c.com

yum install httpd

mkdir -p /home/wwwroot/a

mkdir -p /home/wwwroot/b

mkdir -p /home/wwwroot/c

cd /home/wwwroot

echo "a" > a/index.html

echo "b" > b/index.html

echo "c" > c/index.html

semanage fcontext -a -t httpd_sys_content_f /home/wwroot

semanage fcontext -a -t httpd_sys_content_f /home/wwroot/a

semanage fcontext -a -t httpd_sys_content_f /home/wwroot/a/*

semanage fcontext -a -t httpd_sys_content_f /home/wwroot/b

semanage fcontext -a -t httpd_sys_content_f /home/wwroot/b/*

semanage fcontext -a -t httpd_sys_content_f /home/wwroot/c

semanage fcontext -a -t httpd_sys_content_f /home/wwroot/c/*

restorecon -Rv /home/wwwroot

vim /etc/httpd/conf/httd.conf

120行添加

<virtualhost 192.168.10.10>

document "/home/wwwroot/a"

servername www.a.com

<directory /home/wwwroot/a>

allowoverride none

require all granted

</directory>

</virtualhost>

 

<virtualhost 192.168.10.20>

document "/home/wwwroot/b"

servername www.b.com

<directory /home/wwwroot/b>

allowoverride none

require all granted

</directory>

</virtualhost>

 

<virtualhost 192.168.10.30>

document "/home/wwwroot/c"

servername www.c.com

<directory /home/wwwroot/c>

allowoverride none

require all granted

</directory>

</virtualhost>

恢复虚拟机,试验基于端口的虚拟主机

yum install httpd

cd ~

mkdir -p /home/wwwroot/6111

mkdir -p /home/wwwroot/6222

echo "port:6111" > /home/wwwroot/6111/index.html

echo "port:6222" > /home/wwwroot/6222/index.html

ls -dZ /var/www/html

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6111

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6111/*

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6222

semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/6222/*

restorecon -Rv /home/wwwroot

vim /etc/httpd/conf/httpd/conf

Listen 6111

Listen 6222

<virtualhost 192.168.10.10:6111>

documentroot /home/wwwroot/6111

servername www.6111.com

<directory /home/wwwroot/6111>

allowoverride none

require all granted

<directory>

<virtualhost>

 

<virtualhost 192.168.10.10:6222>

documentroot /home/wwwroot/6222

servername www.6222.com

<directory /home/wwwroot/6222>

allowoverride none

require all granted

<directory>

<virtualhost>

systemctl restart httpd

semanage port -l 列出所有的服务程序对应的端口号 

semanage port -l | grep http

semanage port -a -t http_port_t -p tcp 6111 -p是指协议的意思

semanage port -a -t http_port_t -p tcp 6222-p是指协议的意思

systemctl restart httpd

http://192.168.10.10:6111

恢复虚拟机

apache 访问控制

yum install httpd

cd /var/www/html

mkdir server

cd server

echo "hoho" > index.html

cd ..

vim /etc/httpd/conf/httpd.conf

<directory "/var/www/html/server">

setenvif User -Agent "Firefox" ff=1 如果当前用户的浏览器是firefox 1代表开启

Order allow,deny 定义允许和拒绝的规则,如果下面没有被允许就默认会被拒绝。

allow from env=ff  只允许firefox

</directory>

systemctl restart httpd

http://www.6111.com/server

iptables -F

分享到:
评论

相关推荐

    Linux I2C总线分析(主要是probe的方式)

    "Linux I2C总线分析(主要是probe的方式)" Linux I2C总线分析是指Linux操作系统中I2C总线的工作机制和结构。I2C总线是串行总线,它可以实现多个设备之间的数据交换。Linux I2C总线分析可以分为三个组成部分:I2C...

    你了解Embeded linux中的probe.docx

    在嵌入式Linux系统中,`probe`是一个关键机制,用于连接硬件设备(device)与驱动程序(device_driver)。在Linux内核加载过程中,probe机制允许内核发现并初始化硬件设备,确保驱动程序能正确地识别和管理这些设备...

    ucProbe.zip

    6. **跨平台**:ucProbe支持Windows、Linux和Mac OS操作系统,满足不同开发环境的需求。 7. **源码级调试**:通过集成的GDB调试服务器,ucProbe能实现源码级别的调试,这对于理解代码执行流程和查找错误至关重要。 ...

    详解Linux驱动中,probe函数何时被调用

    在Linux驱动程序中,`probe`函数是设备驱动的核心部分,用于初始化和配置硬件设备。这个函数的调用时机和过程是设备驱动模型中的关键环节。当我们在编写驱动时,通常会定义一个`probe`函数,该函数会在特定条件下被...

    Linux_I2C总线驱动分析(主要是probe的方式)

    probe 是 I2C 设备驱动中非常重要的一个步骤,在 probe 中,我们需要根据设备的地址等信息来探测设备,并注册设备驱动。这一步骤非常重要,因为它决定了设备驱动的生命周期。 在 Linux 中,I2C 设备驱动的实现主要...

    probe_basic:LinuxCNC机器控件的用户界面

    文献资料安装开发安装QtPyVCP使用文档资源 (#hazzy)(隔离) (#qtpyvcp:matrix.org)(桥接) (桥接) (桥接)依存关系 Python 2.7 PyQt5或PySide2 Probe Basic是使用LinuxCNC Debian 9 x64(拉伸) 和Ubuntu ...

    ov7725.rar_OV7725_cmos传感器_ov7725 linux 驱动_ov7725 v4l2_ov7725驱动

    在这个文件中,你会看到函数如`ov7725_probe`用于设备探测,`ov7725_remove`用于设备移除,以及`ov7725_video_init`和`ov7725_video_cleanup`用于视频流的开启和关闭。此外,还有处理I2C通信的代码,以读写传感器的...

    qt+gstreamer中如何使用probe(探针)获取帧数据

    在Qt与GStreamer结合开发图像处理应用时,`probe`是一个强大的工具,它允许我们对数据流进行实时分析和操作。...在Linux环境下,这样的技术可以广泛应用于各种图像处理和计算机视觉任务,如视频分析、对象检测等。

    浅谈Linux设备驱动.pdf

    Linux 设备驱动程序浅谈 Linux 设备驱动程序是指用于操作系统和硬件设备之间的交互接口。它是一个小程序,包含有关硬件设备的信息,用于管理计算机的硬件资源。 Linux 设备驱动程序扮演沟通的角色,把硬件的功能...

    util-linux-ng-2.17源码(含fdisk)

    util-linux-ng-2.17.2/shlibs/blkid/src/probe.c [code] util-linux-ng-2.17.2/shlibs/blkid/src/read.c [code] util-linux-ng-2.17.2/shlibs/blkid/src/resolve.c [code] util-linux-ng-2.17.2/shlibs/blkid/src...

    linux_driver.rar_linux pcie 驱动_linux驱动pcie_pcie driver_pcie linu

    - 编写识别设备的`probe`函数,通过比较设备ID(Vendor ID和Device ID)来确定是否支持该设备。 - 注册中断处理程序,处理来自PCIe设备的中断。 - 初始化设备,包括分配资源、设置寄存器、加载固件等。 - 实现...

    at24cxx.rar_AT24Cxx linux_at24c02 linux_at24c02驱动_linux at24c02_

    当内核启动并加载驱动后,会扫描设备树,寻找匹配的平台设备,并调用驱动的probe方法(即初始化函数)。驱动程序在接收到探测请求后,可以通过I²C总线的`i2c_transfer()`函数进行读写操作,实现对AT24C02的访问。 ...

    RX8025驱动-STM+Linux

    在Linux操作系统中,为了与硬件进行交互,需要适配相应的驱动程序。本篇文章将深入探讨RX8025在STM和Linux环境下的驱动实现以及常见问题。 首先,STM32系列微控制器是意法半导体公司推出的一种基于ARM Cortex-M内核...

    linux usb驱动

    在Linux系统中,USB(通用串行总线)驱动是连接外部设备,如键盘、鼠标、打印机、手机、存储设备等的关键组件。USB驱动程序属于内核的一部分,它负责管理和控制USB设备,使得操作系统能够识别并正确地与这些设备交互...

    qmi_wwan.rar_V2 _linux lte_linux qmi_qmi_qmi_wwan

    标题中的"qmi_wwan.rar_V2_linux lte_linux qmi_qmi_qmi_wwan"揭示了这个压缩包是关于Linux系统下用于3G和4G(LTE)无线广域网(WWAN)设备的驱动程序。这里的关键词"V2"表示这是驱动的第二个版本,通常意味着比之前...

    Linux系统下MTD/CFI驱动介绍

    "Linux系统下MTD/CFI驱动介绍" 在Linux系统下,MTD/CFI驱动是Flash存储器的驱动程序。MTD是Memory Technology Device的缩写,是Linux系统下的Flash存储器驱动接口。CFI是Common Flash Interface的缩写,是一个工业...

    hw-probe:探测硬件,检查可操作性并找到驱动程序

    硬件探针1.6测试版硬件探针工具(hw-probe)-借助Linux硬件数据库来检测硬件,检查可操作性并查找驱动程序的工具: : 对于BSD用户: : 内容存货离线检视ACPI转储可操作性禁用日志隐私执照 关于探针—是计算机的硬件...

    linux建立MTD分区

    - 在NorFlash芯片被正确识别之后,Linux内核会通过调用`cfi_probe()`函数来初始化芯片。这一步通常发生在驱动加载的过程中。 - `cfi_probe()`函数会根据NorFlash的具体规格配置相应的参数,并设置好读写等操作接口...

    xenbus_probe.rar_Corporation

    《IBM Corporation Linux驱动程序探索——以xenbus_probe为例》 在开源的世界里,IBM Corporation以其深厚的技术底蕴和对Linux的贡献而闻名。本篇将深入探讨IBM为Linux内核提供的一个关键组件——xenbus_probe,这...

Global site tag (gtag.js) - Google Analytics