samba 服务器
项目简介:
某公司经过不断发展,公司的网络环境建设日趋完善,内部网络逐渐增多。为了使员工能方便共享不同操作系统之间的资源,将安装局域网 Samba 服务器,实现 Windows 和 Linux 资源的互通。服务器上的共享文件夹(/homt/company)中存放的是公司的各项规章制度,其 他部门的用户只能下载查看,只有行政部的用户可以上传和删除里面的文件。
项目分析:
本项目主要完成 samba 服务器的安装,在设置并加载防火墙的基础上,利用 yum 工具安装 samba 服务器,通过建立 samba 用户并修改 samba 配置文件并启动 samba 服务。
项目实施:
1、修改防火墙设置
#firewall-cmd --permanent --add-service=samba //设置防火墙
#firewall-cmd --reload //重新加载防火墙
2、安装 samba 并启动 samba 服务
#yum install -y samba samba-client
#systemctl start smb.service nmb.service
3、建立共享目录
mkdir /home/company
4、创建访问账号
useradd -s /sbin/nologin xzusr
useradd -s /sbin/nologin gcusr
useradd -s /sbin/nologin xsusr
#smbpasswd -a xzusr
#smbpasswd -a gcusr
#smbpasswd -a xsusr
【smbpasswd 选项说明:-a 添加 smb 帐号;-x 删除 smb 帐号;-d 禁用 smb 帐号;-e 启用 smb 帐号】
5、修改配置文件:/etc/samba/smb.conf
默认情况下,Samba 已经配置为允许用户通过远程共享访问账号的主目录。
[company] //共享名称为 company comment = company share //共享注释
path = /home/company //指定共享路径browseable = yes //所有人可见
guest ok = no //拒绝匿名访问
writeable = yes //支持写入数据[company]
comment = company share path = /home/company
guest ok = no //拒绝匿名访问
valid users=xzusr,gcusr,xsusr //允许访问的用户列表write list=xzusr //允许写入的用户列表
【注意:修改配置文件以后,必须重启服务(systemctl restart smb nmb)使更改生效】
6、测试配置文件
testparm 当配置文件的语法出错时会给出提示,修改再次运行 testparm 测试。
7、测试 Samba 服务器
在 linux 客户端访问测试:smbclient -U smbuser //192.168.75.128/company 查看服务器的共享文件有哪些:smbclient -L 192.168.75.128
查看 smbuser 用户可以访问的共享文件:smbclient -L 192.168.75.128 -U smbuser
8、在 Linux 下访问 Windows 共享目录的配置方法
(1)在 Windows xp 上设置一个共享目录:d:\myfiles
(2)在 Linux 下安装 samba-client 客户端
#yum install samba-client
(3)安装 cifs-utils 软件包
#yum install cifs-utils
(4)在 Linux 下创建一个挂载点
#mkdir /mnt/Windows
(5)挂载 Windows 上的共享目录 d:\myfiles 到 Linux 下的/mnt/Windows 目录下
#mount -t cifs -o username=Administrator //192.168.0.3/mytest /mnt/Windows
Enter password: ********
(6)如果挂载成功,则可以进入/mnt/Windows 下进行相应操作。
(7)在/etc/fstab 文件中,加入该共享目录的挂载信息
//192.168.1.123/redhat_disk /mnt/Windows cifs username=tommy,password=111111 0 0
(8)到此为止,Windows 上的共享目录//192.168.1.123/redhat_disk 就被成功挂载到了 Linux 上面了,并且 Linux 重启后,会自动挂载该目录到/mnt/Windows 目录下
课后作业:
配置局域网 samba 服务器,在/common 目录下创建 Linux.txt,并编辑文件。在 windows 和 Linux 系统上实现共享文件 linux.txt。
samba服务器补充
一、配置匿名用户访问
1、vim /etc/samba/samba.conf
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
**map to guest = Bad User 允许匿名用户访问**
[company]
comment = company
path = /mnt/company
writable = yes
browseable = yes
guest ok = yes
2、配置文件权限
共享权限为写入,并不能代表可以写入,还需要文件的写入权限。
匿名用户名为:nobody,根据需求需要配置nobody用户对文件的权限;
drwxr-xr-x. 2 nobody root 19 3月 3 12:42 company
二、配置Samba用户访问
1、vim /etc/samba/samba.conf
[company]
comment = company
path = /mnt/company
writable = yes
browseable = yes
guest ok = no
2、新建用户
[root@localhost mnt]# useradd -s /bin/nologin smbuser1
[root@localhost mnt]# useradd -s /bin/nologin smbuser2
[root@localhost mnt]# useradd -s /bin/nologin smbuser3
3、设置samba用户
[root@localhost mnt]# smbpasswd -a smbuser1 —设置密码
[root@localhost mnt]# smbpasswd -a smbuser2
[root@localhost mnt]# smbpasswd -a smbuser3
4、设置文件权限
[root@localhost mnt]# setfacl -m u:smbuser1:rwx company
5、用户限制
valid users=xzusr,gcusr,xsusr //允许访问的用户列表
write list=xzusr //允许写入的用户列表
vim /etc/samba/smb.conf
[company]
comment = company
path = /mnt/company
#writable = yes
valid users=smbuser1,smbuser2
browseable = yes
guest ok = no
6、用户组限制
vim /etc/samba/smb.conf
[company]
comment = company
path = /mnt/company
#writable = yes
valid users=@samab,@groups
write list=@samab
browseable = yes
guest ok = no
7、客户端限制
hosts allow
hosts deny
举例1:只允许在IP地址为192.168.10.5的客户端上访问teach共享目录。
[tech]
comment=technet
path=/home/technet
writable=yes
hosts allow=192.168.10.5
举例2:允许地址段192.168.10.0/24内的用户访问tech共享目录,IP地址为
192.168.10.254的计算机除外。
[tech]
Comment=technet
path=/home/technet
Writable=yes
Hosts allow=192.168.10. EXCEPT 192.168.10.254
三、配置Linux系统访问Winodws 系统共享文件
(1)在 Windows xp 上设置一个共享目录:d:\myfiles
(2)在 Linux 下安装 samba-client 客户端
#yum install samba-client
(3)安装 cifs-utils 软件包
#yum install cifs-utils
(4)在 Linux 下创建一个挂载点
#mkdir /mnt/Windows
(5)挂载 Windows 上的共享目录 d:\myfiles 到 Linux 下的/mnt/Windows 目录下
#mount -t cifs -o username=Administrator(windows电脑的系统管理员名称) //192.168.0.3/windows /mnt/Windows
Enter password: ********
mount | grep windows
cd windows/
(6)如果挂载成功,则可以进入/mnt/Windows 下进行相应操作。
(7)在/etc/fstab 文件中,加入该共享目录的挂载信息
//192.168.1.123/redhat_disk(需要挂载的目录或设备文件) /mnt/Windows cifs username=tommy,password=111111 0 0
(8)到此为止,Windows 上的共享目录//192.168.1.123/redhat_disk 就被成功挂载到了 Linux 上面了,并且 Linux 重启后,会自动挂载该目录到/mnt/Windows 目录下
LNMP环境的搭建:
1、安装nginx服务
2、安装PHP及相关的模块
3、配置Nginx支持php模块
4、验证:是否可以发布PHP页面
Nginx默认网站路径:/usr/share/nginx/html
在此目录下新建一个PHP文件:index.php
<?Php echo phpinfo(); ?>
5、安装mysql数据库
将网站数据库导入mysql数据库
6、发布PHP网站
Samba服务器搭建
Samba服务器的搭建
Samba服务:文件共享服务,目的是让其他计算机能通过访问网络路径获取相应的文件。
如何搭建samba服务呢?
首先:在服务端安装samba服务
其次:配置samba服务(共享文件的路径、访问权限)
最后:做测试
第一步:准备软件仓库:yum安装(本地源)
配置本地源进行安装:挂载光盘(准备软件仓库)—编辑本地yum源文件
第二步:安装samba服务----yum install samba samba-client
samba :服务端程序
samba-client:客户端程序
第三步:配置samba服务
准备共享目录:/mnt/public
配置文件:/etc/samba/smb.conf
配置服务:vim /etc/samba/smb.conf
[company] //共享名称为
company comment = company share //共享注释
path = /home/company //指定共享路径
browseable = yes //所有人可见
guest ok = no //拒绝匿名访问
writeable = yes //支持写入数据
第四步:启动服务(重启服务)【每次修改完配置文件后都需要重启才生效】
服务名称:smb.service nmb.service
重启服务:systemctl restart smb nmb
第五步:关闭防火墙和selinux配置
systemctl stop firewalld
setenforce 0
第六步:新建samba用户并设置密码
useradd -s /bin/nologin smbsuer1 新建一个不能登录到系统的用户
smbpasswd -a smbsuer1 将用户设置为samba用户
第七步:测试
1.在Linux客户端测试:
查报服务器有哪些共享文件:smbclient -L 192.168.10.129
访问服务器的共享文件:smbclient -U smbsuer1 //192.168.10.129/public
2.在windows客户端测试
在资源管理器中输入:\192.168.10.129\public
补充:访问权限受两个地方影响:
配置文件中的共享权限:
文件本身的权限:
注意:在修改权限时不要使用777的权限,最好使用ACL。