FTP和SMB服务
- ftp
- ftp的应用类型
- 匿名账户
- ftp准备
- 过程
- 配置命令
- 系统账户
- 过程
- 服务命令
- 虚拟账户
- 创建过程
- 服务命令
- 服务验证
- Samba服务
- Samba服务概述
- Samba服务基础
- Samba软件包构成
- Samba服务器的主要程序
- Samba的配置目录及文件
- Samba服务搭建
- 过程
- 服务命令
ftp
- ftp的作用:用于文件的上传和下载
- ftp属于TCP协议
21号端口:控制层面,用于账号密码验证和权限的验证
20号端口:数据层面,用于文件的上传和下载
ftp的应用类型
匿名账户
ftp准备
登录名为ftp、anonymous,无需验证密码即可登录
过程
- 先确保服务器和客户机的防火墙和核心防护都已关闭
- 使用yum安装vsftpd服务
- 进入vsftpd配置文件进行配置设置
- 重启vsftpd服务
- 客户机进行验证
配置命令
#服务器上的配置命令
yum -y install vsftpd # 安装vsftpd服务
vi /etc/vsftpd/vsftpd.conf
anon_other_write_enable=YES ## 允许匿名账户的其他写操作
anonymous_enable=YES # 允许匿名账号登录
write_enable=YES # 允许写操作
anon_umask=022 # 匿名账户的权限为755
anon_upload_enable=YES # 允许匿名账户的下载操作
anon_mkdir_write_enable=YES # 允许匿名账户的额创建目录和写操作
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES # 开启ipv4监听
listen_ipv6=NO # 关闭ipv6监听
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
systemctl restart vsftpd
chown -R ftp.ftp /var/ftp/pub
chmod -R 755 /var/ftp/pub ## 设置目录权限为755
使用客户机ftp进行vsftpd服务的验证
系统账户
过程
- 先确保服务器和客户机的防火墙和核心防护都已关闭
- 在虚拟机上创建新用户zhangsan和lisi并设置登录密码
- 在两个新用户的home目录下即 /home/zhangsan和 /home/lisi目录下分别新建两个不同的新文件,以作后续的实验
- 在vsftpd配置文件中设置所需要的配置(/etc/vsftpd/vsftpd.conf)
- 配置完成后重启vsftpd的配置
- 分别以zhangsan用户和lisi用户进入服务器的ftp服务,进行文件上传和下载的操
服务命令
#服务器上的命令
yum -y install vsftpd # 安装vsftpd服务
cd /etc/vsftpd/vsftpd.conf # 进入vsftpd配置文件
local_enable=YES # 本地可登录
write_enable=YES # 可写
local_umask=022 # 权限为755
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES # 可登录
listen=YES # 开启ipv4监听
listen_ipv6=NO # 关闭ipv6监听
allow_writeable_chroot=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
userlist_deny=NO # 只允许用户列表中的用户登录,使用于限制于单个用户登录。配置文件为 /etc/vsftpd/user-list
grep -v "#" /etc/vsftpd/vsftpd.conf | grep -v "^$" # 查看配置文件中有效配置文件
systemctl restart vsftpd # 重启vsftpd服务
cd /home/zhangsan # 进入zhangsan目录下新建文件
echo "qqqqqqq" > a
cd /home/lisi
echo "woshishuaige" > aaa
#客户机上的命令
yum -y install ftp
ftp 客户机ip # 客户机登录服务器
get 文件名 # 下载服务器中文件
put 文件名 # 上传本地文件
虚拟账户
创建过程
- 添加虚拟用户列表
- 新建虚拟用户账户数据库
- 修改/etc/vsftpd/vdftpd.conf配置文件
- 创建同名用户来修改虚拟账户的权限
服务命令
# vi /etc/vsftpd/vusers.list # 设置虚拟账户列表
liming # 设立两个虚拟用户
123
wangwu
456
# cd /etc/vsftpd
# db_load -T -t hash -f vusers.list vusers.db # 用hash转换db文件
# file vusers.db # 查看生成的db文件
# chmod -R 600 /etc/vsftpd/vusers.* # 设置vusers.的文件权限为600
# useradd -d /var/ftproot -s /sbin/nologin virtual # 新建虚拟用户
# chmod -R 755 /var/ftproot # 设置虚拟用户的权限为755
# vi /etc/pam.d/vsftpd.vu # 修改pam认证文件的内容
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vusers # 对账户名和密码进行认证
account required pam_userdb.so db=/etc/vsftpd/vusers # 对密码的有效期及密码账户的一些权限限定的认证
# vi /etc/vsftpd/vsftpd.conf
local_enable=YES
guest_enable=YES
guest_username=virtual
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=YES
listen_ipv6=NO
pam_service_name=vsftpd.vu
anon_world_readable_only=NO
user_config_dir=/etc/vsftpd/vusers_dir
userlist_enable=YES
tcp_wrappers=YES
allow_writeable_chroot=YES
# mkdir /etc/vsftpd/vusers_dir # 创建新文件夹
# touch /etc/vsftpd/vusers_dir/liming # 在新文件夹下用户同名文件用来修改用户的权限
anon_upload_enable=YES
anon_mkdir_write_enable=YES
write_enable=YES
# touch /etc/vsftpd/vusers_dir/wangwu # 空文件及用户只有目录的权限,无额外权限
服务验证
yum -y install ftp
ftp 192.168.188.130
liming # 有读写的权限
wangwu # 无权限
Samba服务
Samba服务概述
Samba服务基础
- SMB协议
Server Message Block 服务块消息 - CIFS协议
Common Internet File System 通用互联网文件系统 - Samba项目
网址: http://www.samba.org
Samba软件包构成
- samba-common-4.6.2-8.el7.noarch
- samba-common-libs-4.6.2-8.el7.x86_64
- samba-client-4.6.2-8.el7.x86_64
- samba-client-libs-4.6.2-8.el7.x86_64
Samba服务器的主要程序
- smbd :提供对服务器中的文件,打印资源的共享访问
- nmbd :提供基于NetBIOS主机名称的解析
Samba的配置目录及文件
/etc/samba
/etc/samba/smb.conf
配置文件检查工具 :testparm
smb.conf文件的配置内容
[global] : 全局设置
[homes] : 用户目录共享设置
[printers] : 打印机共享设置
[myshare] : 自定义名称的共享目录设置
Samba服务搭建
过程
- 创建普通账户和组
- 账户划分进组
- 对共享目录设定权限
- 对共享目录设定属主、属组
- 更改Samba主配置文件中属主的权限,让其有权限读和写
服务命令
useradd xiaoming # 创建新用户
useradd xiaozhang
pdbedit -a -u xiaoming # 用户设置为samba用户,并设置密码
pdbedit -a -u xiaozhang
mkdir /share # 创建share目录
touch /share/aaa # 创建新文件
touch /share/bbb
chmod -R 777 /share # 设置share目录权限为777
vi /etc/samba/smb.conf # 进入samba配置文件
[share]
comment = share directory
path = /share
public = yes
valid users = xiaoming, xiaozhang
write list = xiaoming
systemctl start nmb # 开启samba服务
systemctl start smb