第四章 Linux网络配置

在前期的文章,我们用两篇文章介绍了FTP服务的原理《网络配置文件》《 FTP 服务原理》,FTP服务包括三种认证模式,分别是匿名用户登录、本地用户和虚拟用户登录,前两种认证模式在文章《 FTP服务匿名用户登录》《FTP服务本地用户登录》中分别进行了演示。下面我们来以虚拟用户的方式来登录FTP服务,这种登录方式是最安全的认证模式。

4.5 采用虚拟用户认证模式登录FTP服务

第一步:在/etc/vsftpd/下创建用于进行FTP认证的用户数据库文件 vuser.list。其中奇数行为账户名,偶数行为密码。

[root@localhost vsftpd]# vim vuser.listsongjiang123456wuyong123456luzhishen123456

创建完vuser.list文件后,使用db_load命令将原始的铭文文件进行加密转换成数据库文件,然后再把原始的明文文件删除。

[root@localhost vsftpd]# db_load -T -t hash -f vuser.list vuser.db[root@localhost vsftpd]# file vuser.dbvuser.db: Berkeley DB (Hash, version 9, native byte-order)[root@localhost vsftpd]# chmod 600 vuser.db[root@localhost vsftpd]# rm -rf vuser.list

这个时候我们可以看到有一个 vuser.db的文件。

第二步:为了方便管理FTP服务器上的数据,把系统本地用户的家目录设置为/var 目录。并将这个系统本地用户设置为不允许登录FTP服务。

[root@localhost vsftpd]# mkdir /etc/vsftpd/vusers_dir/[root@localhost vsftpd]# cd /etc/vsftpd/vusers_dir/[root@localhost vusers_dir]# touch songjiang[root@localhost vusers_dir]# touch wuyong[root@localhost vusers_dir]# touch luzhishen[root@localhost vusers_dir]# vim songjianganon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YES

第三步:建立用于支持虚拟用户的PAM文件,新建一个用于虚拟用户认证的PAM文件 vsftpd.vu,其中PAM文件内“db=”参数为使用db_load命令生成账户密码数据库文件的路径。

[root@localhost vsftpd]# vim vsftpd.confanonymous_enable=NOlocal_enable=YESguest_enable=YESguest_username=virtualallow_writeable_chroot=YESwrite_enable=YESlocal_umask=022dirmessage_enable=YESxferlog_enable=YESconnect_from_port_20=YESxferlog_std_format=YESlisten=NOlisten_ipv6=YESpam_service_name=vsftpd.vuuserlist_enable=YEStcp_wrappers=YESuser_config_dir=/etc/vsftpd/vusers_dir

第四步:为虚拟用户设置不同的权限,在/etc/vsftpd/下创建vusers_dir目录,在该目录下创建三个文件,以虚拟用户的名称命名 songjiang, wuyong, luzhishen。其中在songjiang文件中写入允许的权限

[root@localhost vusers_dir]# systemctl restart vsftpd.service[root@localhost vusers_dir]# getsebool -a | grep ftpftpd_anon_write --> offftpd_connect_all_unreserved --> offftpd_connect_db --> offftpd_full_access --> onftpd_use_cifs --> offftpd_use_fusefs --> offftpd_use_nfs --> offftpd_use_passive_mode --> offhttpd_can_connect_ftp --> offhttpd_enable_ftp_server --> offtftp_anon_write --> offtftp_home_dir --> on

第五步:修改vsftpd.conf配置文件

[root@localhost vusers_dir]# systemctl restart vsftpd.service[root@localhost vusers_dir]# getsebool -a | grep ftpftpd_anon_write --> offftpd_connect_all_unreserved --> offftpd_connect_db --> offftpd_full_access --> onftpd_use_cifs --> offftpd_use_fusefs --> offftpd_use_nfs --> offftpd_use_passive_mode --> offhttpd_can_connect_ftp --> offhttpd_enable_ftp_server --> offtftp_anon_write --> offtftp_home_dir --> on

第六步:重启vsftpd服务,并设置SELinux域允许策略,ftpd_full_access=on,设置命令为 setsebool -P ftpd_full_access=on

[root@localhost vusers_dir]# systemctl restart vsftpd.service[root@localhost vusers_dir]# getsebool -a | grep ftpftpd_anon_write --> offftpd_connect_all_unreserved --> offftpd_connect_db --> offftpd_full_access --> onftpd_use_cifs --> offftpd_use_fusefs --> offftpd_use_nfs --> offftpd_use_passive_mode --> offhttpd_can_connect_ftp --> offhttpd_enable_ftp_server --> offtftp_anon_write --> offtftp_home_dir --> on

最后登录FTP服务即可

使用虚拟账号在window系统上同样可以登录到该服务。

注意,因为songjiang账号具有读写权限,具有创建文件、上传文件的功能,而wuyong,luzhishen账号没有上传功能,所以使用wuyong和luzhishen登录时,只能下载文件,无法上传更改文件。

相关历史文章


1 Linux常用操作命令

1.1 文件和目录操作

1.2 文本显示和处理

1.3 文件和命令查找&系统消息显示

2 shell编程

2.1 程序的创建与内部命令

2.2 流程控制语句

3:Linux网络安全

3.1 网络安全工具 nmap

3.2 网络性能测试工具Netperf

4 Linux网络配置

4.1 网络配置文件

4.2 FTP 服务原理

4.3 FTP服务匿名用户登录

4.4 FTP服务本地用户登录

5 Linux文件系统

5.1 创建文件系统

c#与access建立连接用作登录_Linux网络配置 | FTP 实战-虚拟用户登录相关推荐

  1. linux中匿名用户怎么登陆_Linux网络配置 | FTP 实战-匿名用户登录

    第四章 Linux网络配置 4.3 使用FTP命令实现远程文件传输 FTP是在TCP/IP网络上的计算机之间传输文件的简单有效的方法,用户可以通过FTP客户程序连接到另一台计算机上,可以在目录中上下移 ...

  2. c#与access建立连接用作登录_SQLServer成功与服务器建立连接,但在登录中发生错误

    SQL Server(解决问题)已成功与服务器建立连接,但是在登录过程中发生错误.(provider: Shared Memory Provider, error:0 - 管道的另一端上无任何进程. ...

  3. c#与access建立连接用作登录_组态王与Access数据库的数据交换

    1.SQL访问管理器 SQL访问管理器用来建立数据库列和组态王变量之间的联系.包括表格模板和记录体两部分功能.通过表格模板在数据库表中建立表格:通过记录体建立数据库表格列和组态王之间的联系,允许组态王 ...

  4. Linux FTP服务器本地用户登录

    Linux:FTP服务器本地用户登录 在这篇文章中,我将通过vsftp对FTP服务器进行配置.并且以本地用户形式,实现VM虚拟机下的Linux系统和实际的Windows系统进行交互.(我的Liunx系 ...

  5. Linux FTP服务器匿名用户登录

    Linux:FTP服务器匿名用户登录 在这篇文章中,我将通过vsftp对FTP服务器进行配置.并且以匿名用户形式,实现VM虚拟机下的Linux系统和实际的Windows系统进行交互.(我的Liunx系 ...

  6. 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器,sqlserver

    今早开机发现,打开SQL Server 2008 的 SQL Server Management Studio,输入sa的密码发现,无法登陆数据库?提示以下错误: "在与 SQL Serve ...

  7. DBMS连接不上 —— 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。

    "在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provide ...

  8. Sql server在另一台服务器,在Visual Studio 中没问题,IIS中 提示“在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。。。。”...

    可能问题一: 确切的说是在IIS 7.5中有这问题 就是在visual studio中都用的好好的,但是加载到IIS上的时候竟然报错" 在与 SQL Server 建立连接时出现与网络相关的 ...

  9. 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器

    安装好SqlServer 2017后,当时使用SqlServer是没有任何问题的,但是后来再次使用时候却提示了错误,完全链接不上服务器,错误信息如下: 在与 SQL Server 建立连接时出现与网络 ...

最新文章

  1. 我喜欢的JavaScript编程风格
  2. 『收集』体验微软ImageX 玩转系统映像文件
  3. 一个自定义类型的运算符重载的例子
  4. Java自动装箱与拆箱
  5. Angular ActivatedRouteSnapshot
  6. 一分钟开发一个hello world级别的wordpress插件
  7. 移位操作提高代码的可读性_本地记录或类,以提高流操作的可读性
  8. php 添加inotify扩展,php inotify 扩展的安装
  9. 快应用采坑与flex布局讲解
  10. 【转载】谈谈自己对REST、SOA、SOAP、RPC、ICE、ESB、BPM知识汇总及理解
  11. 乔布斯:你须寻得所爱(转)
  12. 用python海龟画一个三角形_海龟画笔---和孩子一起学python
  13. 浅谈医院HIS系统审计
  14. Java设计模式学习总结
  15. PS小白怎么学会更换材质效果
  16. 上小学的划片政策(by quqi99)
  17. B端和C端产品主要差异:用户、体验、数据
  18. 算法工程师的一万小时定律
  19. 玩客云添加到我的计算机,电脑连接玩客云访问玩客云硬盘空间传输文件方法
  20. 不能打开数据库 ''。应用程序可能无法识别该数据库,或文件可能损坏。

热门文章

  1. matplotlib嵌入到pyqt中
  2. 富士康第三季度净利润10.9亿美元 同比下滑8.7%
  3. MySQL具体解释(21)------------缓存參数优化
  4. 初识tmux---编译安装tmux
  5. WF4 持久化 第四篇
  6. 各种浏览器的userAgent
  7. Windows Server 2003 Clustering 服务
  8. 法尔康,你大爷的,phalcon配置大全
  9. 路由异常的起源——如何影响最终用户?
  10. 【系统平台】大四区部署