在内网架设一个可供外网登录的ftpserver
ftpserver是使用比較寻常的server,可是IP资源是有限的。那么怎么让内网的server給外网的用户提供服务了?
首先须要找一个FTPserver程序,我在这边使用pure-ftpd-mysql ,这边使用-mysql版本号是为了方便用户管理,同一时候通过数据库能够非常好的和当中应用结合起来.
安装pure-ftpd-mysql
我使用的是ubuntu。所以安装没有从源代码编译,直接 sudo apt-get install pure-ftpd-mysql .然后使用sudo service pure-ftpd-mysql start开启ftpserver,这是它会打印一些启动时的配置參数.想看參数能够使用--h命令,能够使用pure-ftpd-mysql -h > help保存到文件。然后看文件.
參数:
-0 --notruncate
-1 --logpid
-4 --ipv4only
-6 --ipv6only
-8 --fscharset <opt>
-9 --clientcharset <opt>
-A --chrooteveryone
-a --trustedgid <opt>
-b --brokenclientscompatibility
-B --daemonize
-C --maxclientsperip <opt>
-c --maxclientsnumber <opt>
-d --verboselog
-D --displaydotfiles
-e --anonymousonly
-E --noanonymous
-f --syslogfacility <opt>
-F --fortunesfile <opt>
-g --pidfile <opt>
-G --norename
-h --help
-H --dontresolve
-I --maxidletime <opt>
-i --anonymouscantupload
-j --createhomedir
-K --keepallfiles
-k --maxdiskusagepct <opt>
-l --login <opt>
-L --limitrecursion <opt>
-M --anonymouscancreatedirs
-m --maxload <opt>
-N --natmode
-n --quota <opt>
-o --uploadscript
-O --altlog <opt>
-p --passiveportrange <opt>
-P --forcepassiveip <opt>
-q --anonymousratio <opt>
-Q --userratio <opt>
-r --autorename
-R --nochmod
-s --antiwarez
-S --bind <opt>
-t --anonymousbandwidth <opt>
-T --userbandwidth <opt>
-U --umask <opt>
-u --minuid <opt>
-V --trustedip <opt>
-w --allowuserfxp
-W --allowanonymousfxp
-x --prohibitdotfileswrite
-X --prohibitdotfilesread
-y --peruserlimits <opt>
-Y --tls <opt>
-J --tlsciphersuite <opt>
-z --allowdotfiles
-Z --customerproof
以下怎么控制用户訪问,到/etc/pure-ftpd/db下,然后配置mysql.conf文件。mysql的IP,Port,user,password,database,然后是进行验证的sql语句,我的表是我users,当中有三个字段,username。密码,用户登录后的文件夹。UID和GID默认的是1000.
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemh4NjA0NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
如今你在浏览器中。输入ftp://127.0.0.1,输入数据库中的保存的数据就能够登录了.
以下对ftp配置,配置文件在/etc/pure-ftpd/conf,其一个配置项为一个文件。默认有AltLog MinUID NoAnonymous PureDB
FSCharset MySQLConfigFile PAMAuthentication UnixAuthentication
事实上文件名称就是-h命令打印的參数全名.比方-p參数--passiveportrange,先建一个PassivePortRange文件,注意文件名称。小写不认的.
内容为45000 50000,标识被动模式的port范围。在不须要client有不论什么变化情况下訪问内网的ftp,使用被动是最好的,有兴趣能够看看主动和被动的差别.
又一次启动ftp
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemh4NjA0NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
能够看到-p參数有效果了.那么怎么让外网訪问。须要将21port和45000~50000port映射到路由器上的port,ip为你内网的地址.进入路由器,转发规则,虚拟server
如今使用外网登录
ok,搞定收工
在内网架设一个可供外网登录的ftpserver的更多相关文章
- 修改tomcat编码格式 & tomcat发布WEB项目供外网访问
1.修改tomcat默认编码格式: 修改tomcat下的conf/server.xml文件,找到如下代码: <Connector port="8080" prot ...
- 阿里云服务器 - node启动服务的时候只有监听内网IP才可以供外网访问
阿里云服务器 - node启动服务的时候只有监听内网IP才可以供外网访问
- 外网登录访问树莓派 Raspberry Pi
外网登录访问树莓派 Raspberry Pi 本地的树莓派 Raspberry Pi,只能在局域网内访问,怎样从公网也能登录访问树莓派 Raspberry Pi? 本文将介绍具体的实现步骤. 1. 准 ...
- 让Tomcat供外网访问
使用Tomcat+花生壳部署一个Javaweb网站,步骤分为三步. 第一,花生壳配置. 下载花生壳,并默认安装.申请动态域名,激活护照,登录.(都是常规操作,不必多说) 第二,Tomcat设置. 找到 ...
- 服务器发布tomcat的WEB项目供外网访问
1.首先你要确定你有一个外网ip地址.如果你分配到的是一个局域网IP地址需要经过一系列的转换为外网ip地址,然后继续下面操作. 2.拿到外网IP地址,进行tomcat的server.xml文件的配置. ...
- 如何利用自己的电脑做服务器发布tomcat的WEB项目供外网访问
1.首先你要确定你有一个外网ip地址.如果你分配到的是一个局域网IP地址需要经过一系列的转换为外网ip地址,然后继续下面操作. 2.拿到外网IP地址,进行tomcat的server.xml文件的配置. ...
- ngrok外网登录本地Web服务器
首先在网上下载ngrok软件,然后cmd到其目录下,运行ngrok http 80即可打开服务器,然后自动生成外网连接,然后C:\inetpub\wwwroot下放置html网页,在公网即可打开
- 说一下怎么搭建外网来访问SVN服务器
一.搭建SVN服务器 1.所需软件 TortoiseSVN,下载地址http://tortoisesvn.net/downloads.html TortoiseSVN中文语言包,下载地址http:// ...
- Tp-link TL-WR841N无线路由器端口映射到外网如何设置
针对TP-LINK的无线路由器进行演示如何设置端口映射和访问控制,演示使用的具体型号是TP-LINK TL-WR841N 3G无线路由器如何设置端口映射. 什么是端口映射? 端口映射又称端口转发,有的 ...
随机推荐
- QT使用scrollarea显示图片,完美解决方案
需求: 在界面上点击“显示图片”按钮,会调用scrollarea窗口显示图片,窗口大小能根据图片大小自动调整,但是最大为1024*768,图片过大就要有滚动条来显示 IDE环境: QT Creator ...
- Arduino Nano + WIZ550io = 简易上网
我爱Arduino Nano – 这是一个非常好外形小巧却功能齐全的Arduino Uno.然而.当我去将它连接到互联网,全部的干净利落小巧也消失在大尺寸的以太网盾底下了. 只是,我近期发现了一个更好 ...
- C和指针 (pointers on C)——第十章:结构体和联合(上)
第十章 结构和联合 这个部分先介绍了.运算符,能够供直接訪问,还介绍了->运算符,它取代结构体指针的间接訪问操作(*struct).xxx 这一章新手理解起来不算太难,没有学过操作系统的话理解位 ...
- Android SDK 环境变量配置(Windows)
Android 开发需要进行adb的配置, 这里使用的是 adt-bundle-windows-x86_64-20140321, 里面捆绑的有 eclipse ,不需要再进行 其他的配置,直接下载解压 ...
- spring boot web相关配置
spring boot集成了servlet容器,当我们在pom文件中增加spring-boot-starter-web的maven依赖时,不做任何web相关的配置便能提供web服务,这还得归于spri ...
- System Request 进入KDB模式过程详解
0 echo g > /proc/sysrq-trigger 怎么让系统停下来,进入进入KDB循环? 1 需要简单了解下:Linux Magic System Request 2 ...
- kgdb调试注意事项
0 首先提下注意事项的背景: kgdb和printk共用一个串口 1 设置波特率: //最高支持460800波特率 arm-eabi-gdb ./vmlinux ...
- Eclipse在点击运行后不能自动保存的解决
今天在eclipse上写程序调试时,发现当我点击运行按键之后,并不能在运行前帮我自动保存,也就是说每次修改代码之后, 运行的还是前一次运行之前的代码,并不是修改之后的代码,因此通过在网上搜索解决方案之 ...
- MySQL 存储过程例子,不能在if else里面用begin end否则会报错Error Code : 1064!
Error Code : 1064 You have an error in your SQL syntax; check the manual that corresponds to your My ...
- DMP文件的生成和使用
1.生成dmp的程序 #include <dbghelp.h> #pragma comment(lib, "dbghelp.lib") //设置异常处理回调函数Se ...