如何理解sftp server服务SftpGo
发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,如何理解sftp server服务SftpGo,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。SftpGo是一款高性能、功能齐全、易用可配
千家信息网最后更新 2024年11月19日如何理解sftp server服务SftpGo
如何理解sftp server服务SftpGo,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
SftpGo是一款高性能、功能齐全、易用可配置的一款sftp server 服务,基于go开发。目前在linux、macos下均可以稳定运行(windows个人未测试)。数据可以持久化到主流的数据库,诸如Mysql、PostgreSQL、Sqlilte.
sftpgo主要组成
服务端主程序: sftpgosever
cli脚本: sftpcli
数据目录
conf存储服务配置文件
data创建sftp用户目录
backups存储应用备份数据
本次基于k8s运行服务、mysql5.7做持久化存储、腾讯云NFS服务做数据目录、configmap挂载配置文件、nginx stream提供域名映射tcp访问
构建镜像
直接拉取
docker pull taylordang/sftpgo:v1.0
本地基于Dockerfile构建
查看具体文档: [https://github.com/dtcka/sftpgo/tree/master/docker/sftpgo/alpine](https://github.com/dtcka/sftpgo/tree/master/docker/sftpgo/alpine)
构建脚手架
构建脚本: [https://github.com/dtcka/sftpgo/blob/master/docker/rest-api-cli/Dockerfile](https://github.com/dtcka/sftpgo/blob/master/docker/rest-api-cli/Dockerfile)
标准配置文件
{ "sftpd": { "bind_port": 2022, "bind_address": "0.0.0.0", "idle_timeout": 15, "max_auth_tries": 0, "umask": "0022", "banner": "", "upload_mode": 0, "actions": { "execute_on": [], "command": "", "http_notification_url": "" }, "keys": [], "kex_algorithms": [], "ciphers": [], "macs": [], "login_banner_file": "", "setstat_mode": 0, "enabled_ssh_commands": [ "md5sum", "sha1sum", "cd", "pwd", "scp" ], "keyboard_interactive_auth_program": "", "proxy_protocol": 0, "proxy_allowed": [] }, "data_provider": { "driver": "mysql", "name": "sftpgo", "host": "xxxxxx", "port": 9999, "username": "sftpgo", "password": "xxxxx", "sslmode": 0, "connection_string": "", "users_table": "users", "manage_users": 1, "track_quota": 2, "pool_size": 0, "users_base_dir": "", "actions": { "execute_on": [], "command": "", "http_notification_url": "" }, "external_auth_program": "", "external_auth_scope": 0, "credentials_path": "credentials", "pre_login_program": "" }, "httpd": { "bind_port": 8080, "bind_address": "0.0.0.0", "templates_path": "templates", "static_files_path": "static", "backups_path": "backups", "auth_user_file": "", "certificate_file": "", "certificate_key_file": "" }}
运行应用
以上服务配置准备完成之后,运行容器会在数据库中自动生成对应的表
提供服务外部入库
1. 设置内网服务入口
apiVersion: v1kind: Servicemetadata: name: sftpgo namespace: sftpspec: clusterIP: xxxx externalTrafficPolicy: Cluster ports: - name: 8080-8080-tcp nodePort: 31807 port: 8080 protocol: TCP targetPort: 8080 - name: 2022-2022-tcp nodePort: 30865 port: 2022 protocol: TCP targetPort: 2022 selector: k8s-app: sftpgo qcloud-app: sftpgo sessionAffinity: None type: LoadBalancerstatus: loadBalancer: ingress: - ip: xxxx
2. 设置外部服务入口
- nginx配置文件 ``` apiVersion: v1 data: nginx.conf: |- user nginx; worker_processes auto; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } stream { server { listen 2022; proxy_pass sftpgo服务对应的内网ip:2022; } } kind: ConfigMap metadata: name: tcp-config namespace: sftp
##### 3.测试下服务状态以及数据目录权限![image.png](https://oscimg.oschina.net/oscnet/up-bee83bd7e27b4e982526a9d3c88a450f7fe.png)
测试ok:数据权限UID GID需要设置为1003.
##### 4. 设置域名解析到nginx的externalIps即可实现域名访问![image.png](https://oscimg.oschina.net/oscnet/up-331b767e5d7c85d5f06f1a9c01daa105227.png)---
附:
看完上述内容,你们掌握如何理解sftp server服务SftpGo的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
服务
数据
配置
文件
目录
运行
域名
存储
测试
入口
内容
数据库
方法
更多
服务配置
权限
脚本
问题
应用
齐全
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
甲骨文公司数据库软件授权类型
计算机技术 网络技术
02141计算机网络技术自考
手机数据库坏了会怎么样
数据库问题管理工具
最好的dns服务器
单位网络安全检查内容有哪些
证券公司软件开发岗
以软件开发为主业的上市公司
商店英雄服务器
欧阳裕尧 广州腾科网络技术有限公司
账套数据库被占用
网络安全法的特征分散性
计算机网络技术和支付宝
做好网络安全的新闻
网络技术服务股票
甲骨文互联网科技有限公司
无法创建id因为服务器故障
海怪视频软件开发
潍坊商城分销软件开发费用
清华数据库需要什么阅读器
股票bs软件开发
用用户视图表示数据库的结构
网络安全教育观后感290字
凡科网 动态连接数据库
备用服务器地址
镜像挂载在服务器上
2019国家网络安全周直播
多玩ma数据库
北京net软件开发定制