切换到路径 cd /etc/yum.repos.d/
ls 查看
vim xoxo_dvd.repo
将里边的file后边的地址改为能获取yum 源的
yum clean all 清理之前的信息
yum repolist 查看所有的可获取的信息
vim /etc/sysconfig/selinux 将里边的网络调配成disabled
然后重启一下
getenforce 查看 得出 disabled 就是正确的
yum repolist
环境配置
[root@localhost yum.repos.d]# yum install vsftpd.x86_64 -y 下载网络信息
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-
: manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Resolving Dependencies
--> Running transaction check
---> Package vsftpd.x86_64 0:3.0.2-21.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
vsftpd x86_64 3.0.2-21.el7 xoxo 169 k
Transaction Summary
================================================================================
Install 1 Package
Total download size: 169 k
Installed size: 348 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : vsftpd-3.0.2-21.el7.x86_64 1/1
xoxo/productid | 1.6 kB 00:00
Verifying : vsftpd-3.0.2-21.el7.x86_64 1/1
Installed:
vsftpd.x86_64 0:3.0.2-21.el7
Complete!
[root@localhost yum.repos.d]# systemctl start vsftpd 开启vsftpd 这样才能打开
[root@localhost yum.repos.d]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[root@localhost yum.repos.d]# firewall-cmd --list-all 查看防火墙伪装状态是否打开i
public
target: default
icmp-block-inversion: no
interfaces:
sources:
services: dhcpv6-client ssh
ports:
protocols:
masquerade: no
forward-ports:
sourceports:
icmp-blocks:
rich rules:
[root@localhost yum.repos.d]# firewall-cmd --permanent --add-masquerade 打开防火墙伪装
success
[root@localhost yum.repos.d]# firewall-cmd --reload
success
[root@localhost yum.repos.d]# firewall-config 将ftp 永久加上去
[root@localhost yum.repos.d]# yum install lftp. 下载lftp
lftp.i686 lftp.x86_64
[root@localhost yum.repos.d]# yum install lftp.x86_64 -y
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-
: manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Resolving Dependencies
--> Running transaction check
---> Package lftp.x86_64 0:4.4.8-8.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
lftp x86_64 4.4.8-8.el7 xoxo 751 k
Transaction Summary
================================================================================
Install 1 Package
Total download size: 751 k
Installed size: 2.4 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : lftp-4.4.8-8.el7.x86_64 1/1
Verifying : lftp-4.4.8-8.el7.x86_64 1/1
Installed:
lftp.x86_64 0:4.4.8-8.el7
Complete!
[root@localhost ~]# lftp 172.25.254.204 lftp连接检测
lftp 172.25.254.200:~> ls 查看有内容 正确
drwxr-xr-x 2 0 0 6 Jun 23 2016 pub
lftp 172.25.254.200:/> exit
[root@localhost ~]#
软件的安装包 : vsftpd
默认发布目录 ; /var/ftp
协议接口 : 21/tcp
服务配置文件 ; /etc/vsftpd/vsftpd.conf
报错id的解析
500 文件系统权限过大
530 用户认证失败
550 服务本身功能未开放
553 本地文件系统权限过小
匿名用户
vim /etc/vsftpd/vsftpd.conf
vim /etc/vsftpd/vsftpd.conf 编辑文件内容
write_enable =YES
anon_upload_enable=YES 上传
systemctl restart vsftpd 重启服务
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub 更改pub的权限,以及pub的组,以防在设置时不被拒绝权限
连接用户 lftp 172.25.254.204 连接之后的操作都是在pub目录下进行的
cd pub/
put /etc/passwd 传输
若是进行该该项设置,匿名用户家目录默认在 /var/ftp
vim /etc/vsftpd/vsftpd.conf
systemctl restart vsftpd 重启服务
anon_root=/directory
vim /etc/vsftpd/vsftpd.conf
anon_mkdir_write_enable=YES | NO
systemctl restart vsftpd 重启服务
vim /etc/vsftpd/vsftpd.conf
anon_world_readable_only=YES | NO 设定参数值为no表示匿名用户可以下载
systemctl restart vsftpd 重启服务
lftp 172.25.254.204
vim /etc/vsftpd/vsftpd.conf
anon_other_write_enable=YES | NO
vim /etc/vsftpd/vsftpd.conf
systemctl restart vsftpd 重启服务
anon_umask=xxx(022) (umask值) 将lftp的mask值改变 重新连接之后会发现权限改变(mask值改变)
vim /etc/vsftpd/vsftpd.conf
chown_uploads=YES 允许其他用户上传
chown_username=student 指定student用户上传
chown_upload_mode=0644 改变用户上传权限
systemctl restart vsftpd 重启服务
在设置完毕之后进入pub 目录下操作
上传一个文件 ,使用ls 查看
< 限制本地用户浏览/目录 >
所有用户被锁定到自己的家目录中
vim /etc/vsftpd/vsftpd.conf
chroot local_user=YES
chmod ugo-w /home/* 在设置所有只能看自己的家目录时候,需要将home目录下的所有减 w 权限,这样就不会跟设置里边的有冲突
用户的黑白名单
用户的黑名单
vim /etc/vsftpd/vsftpd.conf
chroot_local_user=NO 此时的意思为所有用户都可以查看所有目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
systemctl restart vsftpd 重启服务
vim /etc/vsftpd/chroot_list 在这个文件中书写 student用户 就表明此用户为不可登陆
用户白名单
vim /etc/vsftpd/vsftpd.conf
chroot_local_user=YES 此时的意思为所有用户都不可以查看所有目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
systemctl restart vsftpd 重启服务
vim /etc/vsftpd/chroot_lis 在这个文件中书写 student用户,就表明此用户为可登陆
< 限制本地限制本地用户的登陆的黑白名单 >
vim /etc/vsftpd/vsftpd.conf
vim /etc/vsftpd/ftpusers 用户黑名单
vim /etc/vsftpd/user_list 用户临时黑名单
用户白名单设置
vim /etc/vsftpd/vsftpd.conf
serlist_enable=YES #开启用户登陆名单功能
userlist_deny=NO #取消名单默认为黑名单
systemctl restart vsftpd 重启服务
etc /vsftpd/user_list 参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp
ftp 虚拟用户的设定
创建虚拟帐号身份
1,vim /etc/vsftpd/lcfile 这里的文件名称可以任意起名字
user1 在ftp登陆的用户,只是限制与登陆ftp 。本身就不是一个用户的,只针对 ftp登陆
123 用户密码
user2 设置多个是为了更好的佐证做法是否正确
123 密码
2,db_load -T -t hash -f /etc/vsftpd/lcfile /etc/vsftpd/lcfile.db 将lc这个文件加密为 lcfile.db
3,可以查看/etc/vsfptd 这个目录下的文件 是否有lcfile.db 这个加密文件
4,vim /etc/pam.d/lc 文件名称任意 (书写其需要登陆的帐号及其密码的加密文件)
account required pam_userdb.so db=/etc/vsftpd/lcfile
auth required pam_userdb.so db=/etc/vsftpd/lcfile
vim /etc/vsftpd/vsftpd.conf
pam_service_name=lc
guest_enable=YES
guest_username=ftps
systemctl restart vsftpd
< 虚拟帐号家目录独立设定 >
mkdir /var/bobo
cd /var/bobo
mkdir user{1…3}
touch /var/bobo/user1/user1file 在此作出的文件是后边登陆能够更明显的查看,对比效果更明显
vim /etc/vsftpd/vsftpd.conf
更改里边的配置
local_root=/ftphome/$USER
user_sub_token=$USER
连接lftp 172.25.254.212 -u user1
连接之后查看user1file是否存在
设置虚拟用户独立配置文件
1,mkdir /etc/vsftpd/opq 建立一个目录 ,目的就是为了将 user_config_dir(这是一个配置文件)=/etc/vsftpd/opq 放到这个目录里。在其中写入,创建一个虚拟用户的配置目录,在该目录中创建出与用户名称一致的文件,该文件就是用户的专属的配置文件。
2,vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/opq 目的是放到这个目录里。
systemctl restart vdftpd 重启一下ftp服务
3,建立一个目录 pub
mkdir /var/bobo/user{1…3}/pub 因为在这个的路径下是可以ftp登陆的,所以在这个的路径下操作的,
然后登陆lftp 172.25.254.212 -u user1 查看一下是否有pub这个目录存在
chmod 755 /var/bobo/user{1…3}/pub 赋予其权限为755,
chgrp ftp /var/bobo/user{1…3}/pub 将pub的组改为ftp
root@localhost ~]# mkdir /etc/vsftpd/opt
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
[root@localhost ~]# systemctl restart vsftpd
[root@localhost ~]# mkdir /var/bobo/user{1..3}/pub
[root@localhost ~]# chmod 755 /var/bobo/user{1..3}/pub
[root@localhost ~]# chgrp ftp /var/bobo/user{1..3}/pub
[root@localhost ~]# lftp 172.25.254.200 -u user1
Password:
lftp [email protected]:~> ls
-rw-r--r-- 1 0 0 0 APR 24 07:18 pub