热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

笔记12

#######samba服务###########在windows里面的让windows做服务端的时候把windows里面的文件共享然后在linux里面安装samba-client
#######samba服务###########

在windows里面的让windows做服务端的时候把windows里面的文件共享

然后在linux里面安装samba-client客户端

然后测试查看

yum install samba-client -y            ##客户端  供测试用





不过我们今天做的是用linux做服务端,然后可以用windows做客户端或者linux做客户端



yum install samba-client -y            ##客户端  供测试用

yum install samba-common.x86_64 samba.x86_64 -y    ##命令和samba服务

systemctl stop firewalld.service

setsebool -P samba_enable_home_dirs on

smbpasswd -a student                ##添加samba用户  student必须是本机存在的用户

输入密码。。。。。。

pdbedit -L                    ##查看samba用户列表

pdbedit -x student                ##删除samba用户

smbclient -L //172.25.254.114 -U student    ##测试查看分享的列表

smbclient  //172.25.254.114/student -U student    ##登陆student用户

[root@smaba ~]# smbclient  //172.25.254.114/student -U student

Enter students password:

Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]

smb: \> ls

  .                                   D        0  Thu Jul 10 19:06:52 2014

  ..                                  D        0  Thu Jul 10 18:19:09 2014

  .bash_logout                        H       18  Wed Jan 29 07:45:18 2014

  .bash_profile                       H      193  Wed Jan 29 07:45:18 2014

  .bashrc                             H      231  Wed Jan 29 07:45:18 2014

  .ssh                               DH        0  Thu Jul 10 18:19:10 2014

  .config                            DH        0  Thu Jul 10 19:06:53 2014







###共享第三方目录##

mkdir /westos

touch file{1..5}

vim /etc/samba/smb.conf

[共享名称]

comment = 共享说明   可随便写

path = /westos        ##不能乱写 只能按照路径来写

systemclt restart smb

共享目录时需要修改的selinux属性,此方式修改只针对修改目录

semanage fcontext -a -t samba_share_t '/westos(/.*)?'        ##因为登陆之后不能ls查看到 所以需要修改安全上下文

restorecon -FvvR /westos/

共享系统建立目录时需要修改selinux属性,此方式修改针对所有的目录,一旦开放,selinux不保护目录访问

setsebool -P samba_export_all rw on    ##可读写

setsebool -P samba_export_all ro on    ##只读





###匿名访问####

vim /etc/samba/smb.conf

125 map to guest =bad user             ##把所有未认证的用户全部影射成guest用户

324 guest ok =yes                ##允许匿名用户访问

wq

systemctl restart smb



测试

smbclient //172.25.254.114/westos        ##匿名用户访问

mount //172.25.254.114/westos /mnt -o username=guest    ##挂载







#######samba共享目录的管理参数#####

useradd yiyi

smbpasswd -a yiyi     ##添加samba用户



        [westos]                ##只能对/westos目录进行操作

        comment = local

        path = /westos

        guest ok = yes

        #writable = yes                ##所有samba用户都可以写操作

        write list = yiyi            ##列表中的samba用户可以写操作

    write list = @yiyi|+yiyi        ##列表中的samba组中的用户都可以写 (usermod -G yiyi student 把student用户加到yiyi组中)

    valid users = yiyi            ##只有samba用户中的yiyi能登陆

        valid users =@yiyi            ##samba用户中所处yiyi同一组的用户能登陆

        browseable = yes            ##在分享列表中可以显示 no为不显示

    admin users = yiyi            ##给samba用户给予root权限



测试:

mount //172.25.254.114/westos /mnt -o username=student,password=yiyibushe    

mount //172.25.254.114/westos /mnt -o username=yiyi,password=bushe

smbclient -L //172.25.254.114 -U student





#####多用户挂载#####

在服务端把先前配置文件里面所写的除过可写操作的其他的参数全部注释

只是在客户端做的********



安装cifs-utils软件包,它包含了cifscreds命令:

# yum install -y cifs-utils

vim /root/passfile            ##建立认证文件

username=yiyi(samba用户)

password=bushe(samba用户密码)

mount //172.25.254.114/westos /mnt  -o credentials=/root/passfile,multiuser,sec=ntlmssp  ##用认证的用户文件的用户登陆

useradd yiyi(与samba用户同名)

su - yiyi

ls /mnt            ##查看不成功

cifscreds add 172.25.254.114        ##用户认证

然后输入密码 如果输入的密码与samba用户密码不一致的话认证不通过 ls /mnt 还是查看不成功

cifscreds update 172.25.254.114        ##刷新认证

cifscreds clearall             ##清除全部认证

cifscreds add 172.25.254.114

输入密码 如果正确  

ls /mnt         ##成功



















##########iSCSI远程块存储#########



yum search target

yum install targetcli.noarch -y

systemctl start target

systemctl enable target.service

systemctl status firewalld

[root@smaba ~]# targetcli

Warning: Could not load preferences file /root/.targetcli/prefs.bin.

targetcli shell version 2.1.fb34

Copyright 2011-2013 by Datera, Inc and others.

For help on commands, type 'help'.



/> ls

o- / ....................................................................... [...]

  o- backstores ............................................................ [...]

  | o- block ................................................ [Storage Objects: 0]

  | o- fileio ............................................... [Storage Objects: 0]

  | o- pscsi ................................................ [Storage Objects: 0]

  | o- ramdisk .............................................. [Storage Objects: 0]

  o- iscsi .......................................................... [Targets: 0]

  o- loopback ....................................................... [Targets: 0]



/> /backstores/block create westos:storage1 /dev/vdb1    ##建立并且连接设备

Created block storage object westos:storage1 using /dev/vdb1.

/> /iscsi create iqn.2017-03.com.westos:storage1    ##建立iscsi

Created target iqn.2017-03.com.westos:storage1.

Created TPG 1.

/> /iscsi/iqn.2017-03.com.westos:storage1/tpg1/acls create iqn.2017-03.com.westos.key1 ##创建密钥

Created Node ACL for iqn.2017-03.com.westos.key1

/> /iscsi/iqn.2017-03.com.westos:storage1/tpg1/luns create /backstores/block/westos:storage1    

Created LUN 0.

Created LUN 0->0 mapping in node ACL iqn.2017-03.com.westos.key1            ##关联起来

/> /iscsi/iqn.2017-03.com.westos:storage1/tpg1/portals create 172.25.254.114 ##

Using default IP port 3260

Created network portal 172.25.254.100:3260.



 yum install iscsi-initiator-utils.x86_64 -y

vim /etc/iscsi/initiatorname.iscsi

InitiatorName=iqn.2017-03.com.westso:key1



systemctl start iscsid.service

iscsiadm -m discovery -t st -p 172.25.254.114        ##发现

iscsiadm -m node -T iqn.2017-03.com.westso:stroage1 -p 172.25.254.114 -l ##登陆

mkfs.xfs /dev/sda            ##格式化硬盘

umount /mnt/                ##要先卸载然后才能从客户端上面去掉

iscsiadm -m discovery -t st -p 172.25.254.114    

iscsiadm -m node -T iqn.2017-03.com.westso:stroage1 -u        ##从客户端上面去掉

fdisk -l

systemctl restart iscsi.service                 ##重启服务后又会出现

fdisk -l

iscsiadm -m node -T iqn.2017-03.com.westso:stroage1 -o delete    ##所以我们要直接删掉





















#########firewalld的管理#############



首先我们在虚拟机添加一块网卡 然后把网卡的ip改为自己的私有网段172.25.14.114

然后改变主机名为firewalld.example.com

systemctl start firewalld            ##打开防火墙

然后首先我们利用图形界面来操作

在虚拟机里面

firewall-config                    ##开启防火墙管理图形界面

我们在右上角的configuration            ##可以改变是临时设定还是永久设置 如果是永久设定的我们需要点options里面的reload重新加载一下

然后在options里面可以修改默认的zone        默认是public

还可以添加端口





#####使用命令接口配置防火墙#########

firewall-cmd --state                ###查看firewalld的状态:

firewall-cmd --get-active-zones            ###查看当前活动的区域,并附带一个目前分配给它们的接口列表:

firewall-cmd --get-default-zone            ###查看默认区域:

firewall-cmd --get-zones            ###查看所有可用区域:

firewall-cmd --zone=public --list-all        ###列出指定域的所有设置:

firewall-cmd --get-services            ###列出所有预设服务:

(这样将列出 /usr/lib/firewalld/services/ 中的服务器名称。注意:配置文件是以服务本身命名的

service-name. xml)



firewall-cmd --list-all-zones            ###列出所有区域的设置:

firewall-cmd --set-default-zone=home        ##设置默认区域:

firewall-cmd --permanent --zone=internal --add-source=172.25.254.14        ###设置网络地址到指定的区域:

(--permanent参数表示永久生效设置,如果没有指定--zone参数,那么会加入默认区域)

firewall-cmd --permanent --zone=internal --remove-source=172.25.254.14删除指定区域中的网路地址:

firewall-cmd --permanent --zone=trusted  --add-interface=eth1    ##添加、改变、删除网络接口:

firewall-cmd --permanent --zone=internal --change-interface=eth0

firewall-cmd --permanent --zone=trusted  --remove-interface=eth0



firewall-cmd --permanent --zone=public --add-service=smtp    ##添加、删除服务:

firewall-cmd --permanent --zone=public --remove-service=smtp



firewall-cmd --direct --add-rule ipv4 filter INPUT 1 -p tcp --dport=80 -s 172.25.254.14 -j REJECT                            ##拒绝14访问80端口通过tcp协议

firewall-cmd --direct --add-rule ipv4 filter INPUT 1 -p tcp --dport=80 -s 172.25.254.14 -j DROP                                ##服务器访问的时候一直在转圈

[root@firewalld ~]# firewall-cmd --direct --get-all-rules     ##查看所有规则

ipv4 filter INPUT 1 -p tcp --dport=80 -s 172.25.254.14 -j REJECT

ipv4 filter INPUT 1 -p tcp --dport=80 -s 172.25.254.13 -j DROP

firewall-cmd --direct --remove-rule  ipv4 filter INPUT 1 -p tcp --dport=80 -s 172.25.254.14 -j REJECT                        ##删除规则



firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=22:toaddr=172.25.254.214        ##目的地地址转发



把server虚拟机的地址改为172.25.14.214

然后加网关为172.25.14.114

然后ping 172.25.254.14        ##可以ping通

然后ping 172.25.254.13        ##ping不通



systemctl stop firewalld.service

systemctl start iptables.service

iptables -F

iptables -t nat -nL

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source=172.25.254.114

这下ping 172.25.254.13         ##可以ping通







#####selinux端口管理##########

vim /etc/httpd/conf/httpd.conf

Listen 83

wq

systemctl restart httpd                ##启动不了

semanage port -l |grep http            ##列出端口标签:

semanage port -a -t http_port_t -p tcp 83    ##添加端口标签:

systemctl restart httpd



删除之前我们需要先停止httpd服务

systemctl stop httpd

semanage port -d -t http_port_t -p tcp 83    ##删除端口标签:















#######nfs###########

首先重置两台虚拟机 我们会得到两台虚拟机的ip分别为172.25.14.10和172.25.14.11

  yum install nfs-utils.x86_64 -y

systemctl start nfs

showmount -e 172.25.14.11

firewall-cmd --list-services

firewall-cmd --get-services

firewall-cmd --permanent --add-service=nfs

firewall-cmd --permanent --add-service=rpc-bind

firewall-cmd --permanent --add-service=mountd

firewall-cmd --reload



server做服务器desktop做客户机

两台机器上面showmount -e 172.25.14.11

[root@desktop14 ~]# showmount -e 172.25.14.11

Export list for 172.25.14.11:





推荐阅读
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • 本文详细介绍了如何通过RPM包在Linux系统(如CentOS)上安装MySQL 5.6。涵盖了检查现有安装、下载和安装RPM包、配置MySQL以及设置远程访问和开机自启动等步骤。 ... [详细]
  • 本文详细介绍了如何解压并安装MySQL集群压缩包,创建用户和组,初始化数据库,配置环境变量,并启动相关服务。此外,还提供了详细的命令行操作步骤和常见问题的解决方案。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • 本文介绍了Linux系统中的文件IO操作,包括文件描述符、基本文件操作函数以及目录操作。详细解释了各个函数的参数和返回值,并提供了代码示例。 ... [详细]
  • 本文将详细探讨Linux pinctrl子系统的各个关键数据结构,帮助读者深入了解其内部机制。通过分析这些数据结构及其相互关系,我们将进一步理解pinctrl子系统的工作原理和设计思路。 ... [详细]
  • 本文详细介绍了C语言的起源、发展及其标准化过程,涵盖了从早期的BCPL和B语言到现代C语言的演变,并探讨了其在操作系统和跨平台编程中的重要地位。 ... [详细]
  • Kubernetes 持久化存储与数据卷详解
    本文深入探讨 Kubernetes 中持久化存储的使用场景、PV/PVC/StorageClass 的基本操作及其实现原理,旨在帮助读者理解如何高效管理容器化应用的数据持久化需求。 ... [详细]
  • 在Fedora 31上部署PostgreSQL 12
    本文详细介绍如何在Fedora 31操作系统上安装和配置PostgreSQL 12数据库。包括环境准备、安装步骤、配置优化以及安全设置,确保数据库能够稳定运行并提供高效的性能。 ... [详细]
  • 主调|大侠_重温C++ ... [详细]
  • 本文介绍了如何通过在数据库表中增加一个字段来记录文章的访问次数,并提供了一个示例方法用于更新该字段值。 ... [详细]
  • 本文针对初学者在创建Android项目时遇到的R.java文件错误提供了解决方案,通过实际案例和详细的日志分析,帮助读者快速定位并解决问题。 ... [详细]
  • 本文详细介绍了如何在Python3环境中配置Appium1.4.6,并指导如何连接模拟器进行自动化测试。通过本文,您将了解从环境搭建到模拟器连接的完整流程。 ... [详细]
author-avatar
魅由心生先_941
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有