首页 > 其他分享 >网闸实现ftp文件同步

网闸实现ftp文件同步

时间:2024-08-28 11:19:26浏览次数:10  
标签:ftp 同步 网闸 端口 服务器 YES 客户端

网闸

网闸作为一种安全产品
双主机结构: 一般采用两台相互隔离的主机 以及一个独立硬件
单芯片传输: 隔离外部数据通过摆渡芯片将外网主机与内网主机的数据进行交换共享
没有默认策略 没有安全域的划分 只是将网络划分为内网外网两部分 内外网之间交互必须通过网闸的摆渡芯片传输 实现物理层面的隔离 更加彻底

为什么叫网闸 是因为其数据交互的方式就像是用 闸门放水:

数据来到了网闸的主机一中 此时主机一可以对数据进行检测
image

当检测完成后 摆渡芯片就像闸门一样打开了 数据流入到摆渡芯片
image

摆渡芯片将数据传递给主机二 且上游闸门关闭不允许主机一数据流入
image

ftp服务搭建:

ftp默认端口为20 21 其中21为控制端口 20为传输端口
分为两个模式: 这两个模式是针对服务器传输隧道的建立而言的

主动模式:

  1. 客户端直接连接服务器21端口
  2. 服务器响应客户端请求 控制隧道建立
  3. 客户端发出主动请求且携带自己的数据传输端口
  4. 服务器主动使用端口(一般是20)直接与客户端建立数据传输隧道

被动模式:

  1. 客户端直接连接服务器21端口
  2. 服务器响应客户端请求
  3. 此时客户端发出被动控制 服务器将打开一个数据传输端口 并返回给客户端
  4. 服务器被动等待客户端连接

服务器的搭建 这里使用 vsftpd

vsftpd详解:

vsftpd是Linux服务端较为好用的ftp服务器
[root@localhost ~]# yum install vsftpd
现网环境有些服务器不出网 需要人工使用存储介质拷贝 此时可以使用yum的选项将离线安装包下载下来:

[root@localhost ~]# yum install --downloadonly --downloaddir=/opt/ vsftpd

下载后默认存在文件:
image

这些文件的作用分别是:
ftpusers:
image
以上用户不允许登录ftp
userlist:
image
这里默认不允许登录 属于黑名单 当你修改为userlist_deny=NO 则属于白名单的形式

我们尝试root登录
image
被拒绝了
这里没有输入密码直接被拒绝 是因为我们的user_list中存在root 去掉后再次尝试:image
这次可以输入密码 但是还是被拒绝了 是因为ftpuers中存在root 去掉后再次尝试
image
pasv模式为被动模式 需要客户端主动连接服务器的数据端口

但我们不建议使用root用户连接ftp 由于root用户权限过高 所有文件都能被访问

下面我们来介绍一下ftp的主配置文件

# Example config file /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
# 允许默认用户登录 这里为了安全默认是关闭的 YES为开启 NO为关闭

local_enable=YES
# 使用本地用户登录

write_enable=YES
#允许写入文件


local_umask=022
# 权限掩码 默认目录权限为777 文件权限为666 权限掩码为022时 目录权限为755 文件权限为 644

#anon_upload_enable=YES
#匿名用户上传文件 默认关闭

#anon_mkdir_write_enable=YES
#匿名用户创建目录 默认关闭

# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
#

xferlog_enable=YES
#开启上传下载日志

connect_from_port_20=YES
#设置传输端口从20端口连接客户端 

#chown_uploads=YES
#修改上传文件的拥有者
#chown_username=whoever
#修改拥有者为whoerver

#xferlog_file=/var/log/xferlog
# 指定日志路径

xferlog_std_format=YES
# 使用日志格式

#idle_session_timeout=600
# 死亡时间

#data_connection_timeout=120
# 连接超时时间

#nopriv_user=ftpsecure
#低权限用户

#ftpd_banner=Welcome to blah FTP service.
# 登录横幅

#chroot_local_user=YES
# 修改用户主目录到主目录
#chroot_list_enable=YES
# 开启chrootlist 此时在本级目录需要有chroot文件 来规定哪些用户不需要修改到主目录
#chroot_list_file=/etc/vsftpd/chroot_list
# 默认的chroot_list路径

listen=YES
# 监听ipv4
listen_port=2021
# 修改监听端口

listen_ipv6=YES
# 监听ipv6地址
pam_service_name=vsftpd
# 服务名
userlist_enable=YES
# 开启userlist
tcp_wrappers=YES
# 可以基于ip访问

这里完成ftp的配置后 即可配置网闸:

网闸配置:

这里使用的迪普设备 网闸三权分立
分为
admin: 用于网络的配置 比如接口ip 路由表 功能开关等
adminsafe: 用于服务的配置 比如ftp文件共享 数据库共享等
adminaudit: 用于日志的审计

客户希望 把内网服务器指定的文件夹文件取走放到外网指定的文件夹
把外网指定的文件夹中的文件取走放到内网指定的文件夹
这时 内外网都需要两个用户
内网用户: 收文件:forftp 发文件:innertoexport
外网用户: 收文件:forftp 发文件:exporttoinner
将其家目录设定为指定家目录:
方法为:usermod -d 或者添加用户时直接 useradd -d

网闸配置:
IP配置:
image
一个接口对应一个网卡

开启ftp同步
image

配置ftp任务 实现文件同步
image
这个是从内网到外网的同步 先镜像在增量 从内到外
image
这个是从外到内

在高级选项中选择 同步后删除源文件 实现类似文件被拿走的效果
image

标签:ftp,同步,网闸,端口,服务器,YES,客户端
From: https://www.cnblogs.com/fr09/p/18384201

相关文章

  • 线程:线程创建pthread_create,线程间的同步与互斥
    线程的创建 线程的创建是通过调用pthread_create函数来实现的。该函数的原型如下:intpthread_create(pthread_t*thread,constpthread_attr_t*attr,void*(*start_routine)(void*),void*arg);参数说明:thread:指向pthread_t类型的指针,用于存储新线程的ID。attr:指向......
  • SwiftData 如何在 Widgets 和 App 的界面之间同步数据变化?
    概述从iOS17(watchOS11)开始,苹果推出了可交互小组件(InteractiveWidgets),使用它我们终于能在Widgets中添加按钮或Toggle来直接驱动数据的变化了。但是被Widgets修改的数据如何及时的同步到对应App的界面中呢?在本篇博文中,您将学到如下内容:概述1.打造Widg......
  • mysql8.0.39采用克隆方式快速搭建主从同步
    mysql8.0.39采用克隆方式快速搭建主从同步备注:基于物理文件拷贝,数据量越大,越能体现出这种优势。8.0.17以上都可以使用 一、环境192.168.0.101主库192.168.0.102从库Serverversion:8.0.39 二、查看是否已经安装克隆插件#如果没有同步账号,可以新建一个dropus......
  • Rsync实现定时自动同步备份任务
     rsync全量备份 增量备份.Rsync等价cp,scp,rm,ls四个命令功能.是一款实现全量及增量复制同步的软件工具.scp命令解释:#1,从远程服务器中下载数据文件到本地主机:scp root@host1:/tmp/test1 /tmp#2,从远程服务器中拷贝目录文件到本地主机下面scp  -rroot@host1......
  • 京准智造,GPS北斗授时装置(时间同步系统)助力银行领域
    京准智造,GPS北斗授时装置(时间同步系统)助力银行领域京准智造,GPS北斗授时装置(时间同步系统)助力银行领域京准电子科技官微——ahjzsz随着大数据、云计算时代的到来,各行业信息化建设的不断提升,信息化下的各个系统不再单独处理各自业务,而是趋于协同工作,因此,各个单元的时间同步......
  • xshell使用跳板机ssh连结远程后使用SFTP
    xshell连结跳板机后,再使用ssh连结到真实机器,SFTP只能显示原跳板机的目录,不能显示真实目录.可以使用隧道,代理来显示真实目标机器的目录.参考:https://blog.csdn.net/qq_43797186/article/details/1236690711.在原跳板机的ssh连结,增加隧道ssh连结属性->连结->SSH->隧道......
  • ETL数据集成丨实现SQLServer数据库的高效实时数据同步
    SQLServer,作为一款功能强大的关系型数据库管理系统(RDBMS),在企业级应用中占据着举足轻重的地位。它不仅提供了可靠的数据存储与管理能力,还集成了高级数据分析、报表服务、集成服务以及商业智能等功能,为复杂业务场景提供了全面的解决方案。SqlServer核心特性高性能与高可用性:SQL......
  • Typora 上传到 Github 实现笔记同步管理
    首先在Github上new一个repository,我建的名称是md_notes然后在本地terminal中启动以下命令新建一个sshkey  ssh-keygen-o  生成的publickey就是我们需要的东西,接着再输入catC:\Users\ASUS/.ssh/id_rsa.pub就能获取到生成的密钥复制生成的密钥(两个......
  • 利用kafka和kafka connect插件debezium实现oracle表同步
    1.kafka安装1.1.java安装openjdk下载,建议使用17,至少应该高于版本11#进入家目录,解压下载的java包,配置环境变量tarvxfopenjdk-20.0.1_linux-x64_bin.tar.gz-C/usr/local/vi.bash_profile#注意要把JAVA的目录放到$PATH之前exportJAVA_HOME=/usr/local/jdk-20exportP......
  • 异源数据同步 → DataX 为什么要支持 kafka?
    开心一刻昨天发了一条朋友圈:酒吧有什么好去的,上个月在酒吧当服务员兼职,一位大姐看上了我,说一个月给我10万,要我陪她去上海,我没同意朋友评论道:你没同意,为什么在上海?我回复到:上个月没同意前情回顾关于DataX,官网有很详细的介绍,鄙人不才,也写过几篇文章异构数据源同步之数据......