十四周三次课

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十四周三次课相关的知识,希望对你有一定的参考价值。

十四周三次课

15.4 xshell使用xftp传输文件

15.5 使用pure-ftpd搭建ftp服务

15.4 xshell使用xftp传输文件

1.在xshell按快捷键 ctrl+alt+f ,会自动弹出一个xftp的提示下载界面

2.进入到下载界面

技术分享图片

3.选择下载以后,会进入一个填写资料的页面,上面的是免费的,下面的收费的,我们选择上面一个填写资料

4.邮箱项,很重要。因为会在你的邮箱里有下载地址和使用教程,是通过邮箱发送,而且最好使用一些比较权威的邮箱;如果是qq邮箱国外发送邮件会有一些延迟;技术分享图片

5.获取到下载地址开始下载,就可以直接下载了

技术分享图片

6.下载完成后,直接默认安装,就可以使用了,这时再使用xshell登录主机,按下ctrl+alt+f;就会弹出一个xftp的页面

7.打开之后会进入到root目录下,使用的是ssh协议

技术分享图片

8.这时在虚拟机上暂停掉21端口,会发现仍然可以传输文件

[[email protected] ~]# systemctl stop vsftpd

[[email protected] ~]# netstat -lntp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    

tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      876/nginx: master p 

tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      836/rpc.mountd      

tcp        0      0 0.0.0.0:43924           0.0.0.0:*               LISTEN      -                   

tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1581/sshd           

tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      941/master          

tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      876/nginx: master p 

tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   

tcp        0      0 0.0.0.0:58217           0.0.0.0:*               LISTEN      828/rpc.statd       

tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           

tcp6       0      0 :::20048                :::*                    LISTEN      836/rpc.mountd      

tcp6       0      0 :::36049                :::*                    LISTEN      -                   

tcp6       0      0 :::22                   :::*                    LISTEN      1581/sshd           

tcp6       0      0 ::1:25                  :::*                    LISTEN      941/master          

tcp6       0      0 :::2049                 :::*                    LISTEN      -                   

tcp6       0      0 :::3306                 :::*                    LISTEN      1089/mysqld         

tcp6       0      0 :::43626                :::*                    LISTEN      828/rpc.statd       

[[email protected] ~]# 

此时发现已经没有21端口

[[email protected] ~]# 

9.若是需要下载linux系统里的文件,只需双击,或者直接拖动到左边(桌面)就会有下载的文件

总结

  • xftp走的是ssh协议,不属于ftp,这种只要是linux开启了sshd服务就可以用。

  • vsftp获取其他ftp软件实现的是ftp服务,windows上可以搭建,linux上也可以搭建

15.5 使用pure-ftpd搭建ftp服务

使用pure-ftpd搭建ftp服务目录概要

  • yum install -y epel-release

  • yum install -y pure-ftpd

  • vim /etc/pure-ftpd/pure-ftpd.conf//找到pureftpd.pdb这行,把行首的#删除

  • systemctl stop vsftpd

  • systemctl start pure-ftpd

  • mkdir /data/ftp

  • useradd -u 1010 pure-ftp

  • chown -R pure-ftp:pure-ftp /data/ftp

  • pure-pw useradd ftp_usera -u pure-ftp -d /data/ftp

  • pure-pw mkdb

  • pure-pw list/userdel/usermod/passwd

使用pure-ftpd搭建ftp服务

1.pure-ftpd 比vftpd更加的轻量,更加简

2.首先需要安装pure-ftpd——>yum install -y pure-ftpd,但有时会提示pure-ftpd不存在,那是因为你缺少epel扩展源——>yum install -y epel-release

[[email protected] ~]# yum install -y pure-ftpd

3.安装完之后,更改 /etc/pure-ftpd/pure-ftpd.conf 配置文件,找到pureftpd.pdb这行,把行首的# 号 删除,目的是为了把密码配置文件要指定

[[email protected] ~]# vim /etc/pure-ftpd/pure-ftpd.conf

搜索/pureftpd.pdb行首的 #号  删除

PureDB                        /etc/pure-ftpd/pureftpd.pdb

保存退出

4.因为pure-ftpd也属于ftp软件,也会监听21端口,所以需要先关闭之前vsftpd监听打开的21端口,否则就会报错

[[email protected] ~]# systemctl stop vsftpd

[[email protected] ~]# 

5.然后再启动pure-ftpd服务,并查看端口,查看pure-ftpd服务

  • systemctl start pure-ftpd

[[email protected] ~]# systemctl start pure-ftpd

[[email protected] ~]# ps aux |grep ftp

root       1304  0.0  0.1 202480  1208 ?        Ss   08:11   0:00 pure-ftpd (SERVER)

root       1306  0.0  0.0 112660   980 pts/0    R+   08:11   0:00 grep --color=auto ftp

[[email protected] ~]# netstat -lntp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    

tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      828/nginx: master p 

tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      818/rpc.mountd      

tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN      1304/pure-ftpd (SER 

tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      796/sshd            

tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1048/master         

tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      828/nginx: master p 

tcp        0      0 0.0.0.0:45916           0.0.0.0:*               LISTEN      -                   

tcp        0      0 0.0.0.0:46944           0.0.0.0:*               LISTEN      815/rpc.statd       

tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   

tcp6       0      0 :::42667                :::*                    LISTEN      815/rpc.statd       

tcp6       0      0 :::44847                :::*                    LISTEN      -                   

tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           

tcp6       0      0 :::20048                :::*                    LISTEN      818/rpc.mountd      

tcp6       0      0 :::21                   :::*                    LISTEN      1304/pure-ftpd (SER 

tcp6       0      0 :::22                   :::*                    LISTEN      796/sshd            

tcp6       0      0 ::1:25                  :::*                    LISTEN      1048/master         

tcp6       0      0 :::2049                 :::*                    LISTEN      -                   

tcp6       0      0 :::3306                 :::*                    LISTEN      1078/mysqld         

[[email protected] ~]# 

6.创建测试目录,为了给pure-ftpd用户使用,再创建用户

[[email protected] ~]# mkdir /data/ftp

[[email protected] ~]# useradd -u 1020 pure-ftp

[[email protected] ~]# 

7.把/data/ftp的属主和属组改成pure-ftp

[[email protected] ~]# chown -R pure-ftp:pure-ftp /data/ftp

[[email protected] ~]# 

8.用pure-pw useradd 命令创建一个用户

  • pure-pw useradd [指定用户] -u [指定系统用户] -d [指定虚拟用户的家目录]

[[email protected] ~]# pure-pw useradd ftp_usera -u pure-ftp  -d /data/ftp

Password:         //密码为123456

Enter it again: 

[[email protected] ~]# 

9.可以使用pure-pw --help查看该命令支持那些用法

[[email protected] ~]# pure-pw --help


Usage :


pure-pw useradd <login> [-f <passwd file>] -u <uid> [-g <gid>]

                -D/-d <home directory> [-c <gecos>]

                [-t <download bandwidth>] [-T <upload bandwidth>]

                [-n <max number of files>] [-N <max Mbytes>]

                [-q <upload ratio>] [-Q <download ratio>]

                [-r <allow client ip>/<mask>] [-R <deny client ip>/<mask>]

                [-i <allow local ip>/<mask>] [-I <deny local ip>/<mask>]

                [-y <max number of concurrent sessions>]

                [-z <hhmm>-<hhmm>] [-m]


pure-pw usermod <login> -f <passwd file> -u <uid> [-g <gid>]

                -D/-d <home directory> -[c <gecos>]

                [-t <download bandwidth>] [-T <upload bandwidth>]

                [-n <max number of files>] [-N <max Mbytes>]

                [-q <upload ratio>] [-Q <download ratio>]

                [-r <allow client ip>/<mask>] [-R <deny client ip>/<mask>]

                [-i <allow local ip>/<mask>] [-I <deny local ip>/<mask>]

                [-y <max number of concurrent sessions>]

                [-z <hhmm>-<hhmm>] [-m]


pure-pw userdel <login> [-f <passwd file>] [-m]


pure-pw passwd  <login> [-f <passwd file>] [-m]


pure-pw show    <login> [-f <passwd file>]


pure-pw mkdb    [<puredb database file> [-f <passwd file>]]

                [-F <puredb file>]


pure-pw list    [-f <passwd file>]


-d <home directory> : chroot user (recommended)

-D <home directory> : don't chroot user

-<option> '' : set this option to unlimited

-m : also update the /etc/pure-ftpd/pureftpd.pdb database

For a 1:10 ratio, use -q 1 -Q 10

To allow access only between 9 am and 6 pm, use -z 0900-1800



[[email protected] ~]#

10.命令pure-pw mkdb,是用来把密码生成系统,也就是pure-ftpd服务所识别的一种文件

  • pure-pw mkdb //不执行这一步是无法登录的

[[email protected] ~]# pure-pw mkdb

[[email protected] ~]# 

11.查看命令说明文件,命令pure-pw list/userdel/usermod/passwd 和pure-pw --help 命令一样的用户

测试pure-ftpd

1.先在/data/ftp/目录下创建一个文件

[[email protected] ~]# touch /data/ftp/123.txt

[[email protected] ~]# 

2.使用pure-ftpd

[[email protected] ~]# lftp [email protected]

Password: 

3.可以查看到刚创建的123.txt文件,uid和gid为root

lftp [email protected]:~> ls    

drwxr-xr-x    2 1020       pure-ftp           21 Mar 29 08:19 .

drwxr-xr-x    2 1020       pure-ftp           21 Mar 29 08:19 ..

-rw-r--r--    1 0          0                   0 Mar 29 08:19 123.txt

lftp [email protected]:/> 

4.退出pure-ftpd,只需要输入 quit命令 即可

lftp [email protected]:/> quit

[[email protected] ~]# 

5.这时我们改变123.txt文件的属主和属组

[[email protected] ~]# chown pure-ftp:pure-ftp /data/ftp/123.txt

[[email protected] ~]# 

6.再登录pure-ftpd中去查看123.txt文件的属主和属组,会看到属主为uid,属组映射为系统中组的名字pure-ftpd

[[email protected] ~]# lftp [email protected]

Password: 

lftp [email protected]:~> ls    

drwxr-xr-x    2 1020       pure-ftp           21 Mar 29 08:19 .

drwxr-xr-x    2 1020       pure-ftp           21 Mar 29 08:19 ..

-rw-r--r--    1 1020       pure-ftp            0 Mar 29 08:19 123.txt

lftp [email protected]:/> 

友情链接:http://www.apelearn.com阿铭linux

以上是关于十四周三次课的主要内容,如果未能解决你的问题,请参考以下文章

十四周三次课(3月28日)

Linux学习笔记十四周三次课(5月11日)

四周第三次课(2月28日)

四周第三次课(1月4日)

十四周二次课

2018.4.18 四周第三次课