最高级的断舍离,是整理自己。
控制连接21端口 数据连接20端口 C/S架构
客户端命令:
Linux: ftp lftp
Windos: ftp://ip
配置文件: vim /etc/vsftpd/vsftpd.conf
参数 | 作用 |
---|---|
listen=NO | 是否以独立运行的方式监听服务 |
listen_address=ip地址 | 设置要监听的IP地址 |
listen_port=21 | 设置FTP服务的监听端口 |
download_enable=YES | 是否允许下载文件 |
userlist_enable=YES | 设置用户列表为"允许" |
userlist_deny=YES | 设置用户列表为"禁止" |
max_clients=0 | 最大客户端连接数,0为不限制 |
max_per_ip=0 | 同一IP地址的最大连接数,0为不限制 |
anonymous_enable=YES | 是否允许匿名用户访问 |
anon_upload_enable=YES | 是否允许匿名用户上传文件 |
anon_umask | 匿名用户上传文件的umask |
anon_root=/var/ftp | 匿名用户的ftp根目录 |
anon_mkdir_write_enable=YES | 是否允许匿名用户创建目录 |
anon_other_write_enable=YES | 是否开放匿名用户的其他写入权限(重命名、删除等) |
anon_max_rate=0 | 匿名用户的最大传输速率,0为不限制 |
local_enable=yes | 是否允许本地用户登录 |
local_umask=022 | 本地用户上传文件的umask值 |
local_root=/vat/ftp | 本地用户的ftp根目录 |
chroot_local_user=YES | 是否将用户权限禁锢在ftp目录,以确保安全 |
local_max_rate=0 | 本地用户的最大传输速率,0为不限制 |
涉及到匿名、本地、虚拟三种用户访问
与配置文件 权限控制 文件存储 相关性很大。
常用于linux/unix之间的文件共享
基于RPC协议
客户端和服务端均需要安装nfs-utils软件包
[root@server1 ~]# systemctl stop firewalld
[root@server1 ~]# setenforce 0
[root@server1 ~]# yum install httpd -y
[root@server1 ~]# systemctl start httpd
[root@server2 ~]# yum install httpd -y
[root@server2 ~]# systemctl start httpd
# 安装nfs服务
[root@server3 ~]# yum install -y nfs-utils
# 准备共享目录
[root@server3 ~]# mkdir /webdata
# 准备共享文件
[root@server3 ~]# echo "today i study but you sleep i good you bad
" > /webdata/index.html
# 配置nfs服务
[root@server3 webdata]# cat /etc/exports
/webdata 192.168.65.0/24(rw)
[root@server3 ~]# systemctl restart nfs-server.service
[root@server1 ~]# yum install -y nfs-utils
[root@server1 ~]# showmount -e 192.168.65.134
[root@server2 ~]# yum install -y nfs-utils
[root@server2 ~]# showmount -e 192.168.65.134
[root@server1 ~]# vim /etc/fstab
192.168.65.134:/webdata /var/www/html/ nfs default 0 0
[root@server1 ~]#mount -a
[root@server1 ~]#df -Th
(server2 同理)
systemctl install nfs-utils -y
systemctl install autofs -y
systemctl start nfs-server.service
systemctl start autofs.service
1.首先在server1部署NFS服务端,做完后尝试在server2上使用showmount -e命令验证。
showmount -e 192.168.65.131
手动挂载一次,挂载成功证明NFS能够正常访问,如果不能先解决这部分问题。
①mount -t nfs 192.168.65.131:/data/user /mnt/user
df -Th
②192.168.65.131:/data/user /mnt/user nfs defaults 0 0
mount -a
2.在server2上配置autofs,手动创建目录/data,autofs做好了。
systemctl restart autofs.service
df -Th
以后执行cd /data/user应该能够执行,这个目录是不需要手动创建是会自动挂载的。
df -Th
3.如果没问题可以进行创建user用户,这样server1和server2两台机器的user用户就共享了家目录。
基于cifs协议
重启服务命令
[root@server1 ~]# systemctl restart smb.service
[root@server1 ~]# systemctl restart nmb.service
不同用户访问同一共享资源名称时,访问到的是不同目录下的文件
#创建三个samba用户,并指定密码为centos
useradd -s /sbin/nologin -r smb1 #加选项-r 不创建家目录
useradd -s /sbin/nologin -r smb2
useradd -s /sbin/nologin -r smb3
smbpasswd –a smb1 #创建对应账号的口令 ,不加-a表示修改已经存在的账号的口令
smbpasswd –a smb2
smbpasswd –a smb3
[root@SMB ~]#pdbedit -L #查看samba账号
smb1:995:
smb3:993:
smb2:994:
#修改samba配置文件
vim /etc/samba/smb.conf
#在workgroup下加一行
config file= /etc/samba/conf.d/%U 说明:%U表示用户名 #这个步骤为关键步骤
[share] #共享文件夹在最后添加
Path=/data/dir #指定分享文件夹的路径
Read only= NO #不仅仅是只读
Guest ok = yes
write list=@admin
[root@SMB ~]#mkdir /data/dir
[root@SMB ~]#mkdir /data/dir1
[root@SMB ~]#mkdir /data/dir2
[root@SMB ~]#touch /data/dir/share.txt #新建共享文件
[root@SMB ~]#touch /data/dir1/smb1.txt #新建给smb1用户访问特定文件
[root@SMB ~]#touch /data/dir2/smb2.txt #新建给smb2用户访问特定文件
[root@SMB ~]#tree /data/
/data/
├── dir
│ └── share.txt
├── dir1
│ └── smb1.txt
└── dir2
└── smb2.txt
3 directories, 3 files
#针对smb1和smb2用户创建单独的配置文件
[root@SMB ~]#vim /etc/samba/conf.d/smb1
[share]
Path=/data/dir1
Read only= NO 等价于writable = yes
Create mask=0644
#说明:默认为744
[root@SMB ~]#vim /etc/samba/conf.d/smb2
[share]
path=/data/dir2
systemctl restart smb nmb #重启对应的服务
#用户smb1,smb2,smb3访问share共享目录,看到目录是不同目录,smb3访问的是默认的share目录
[root@client ~]#smbclient //192.168.32.18/share -U smb1%1
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Fri Dec 20 13:11:40 2019
.. D 0 Fri Dec 20 13:10:56 2019
smb1.txt N 0 Fri Dec 20 13:11:40 2019
52403200 blocks of size 1024. 52004560 blocks available
smb: \> exit
[root@client ~]#smbclient //192.168.32.18/share -U smb2%centos
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Fri Dec 20 13:12:53 2019
.. D 0 Fri Dec 20 13:10:56 2019
smb2.txt N 0 Fri Dec 20 13:12:53 2019
52403200 blocks of size 1024. 52004560 blocks available
smb: \> exit
[root@client ~]#smbclient //192.168.32.18/share -U smb3%centos
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Fri Dec 20 13:13:12 2019
.. D 0 Fri Dec 20 13:10:56 2019
share.txt N 0 Fri Dec 20 13:11:26 2019
52403200 blocks of size 1024. 52004560 blocks available
smb: \> exit
[root@client ~]#
以上就是今天总结的内容,本文仅仅简单介绍了FTP、NFS、SAMBA三种文件服务,FTP主要用于给其他人共享文件,NFS和SAMBA更多用于网络存储上。感兴趣的小伙伴可以再多多阅读其他的详细博客进行进一步学习。