- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
这是一个性能优秀的服务器软件,由于它具有众多强大功能和超大的吞吐量,Internet上的FTP服务器有60%以上采用了它。
以下我们以RedHat Linux为例。
1、安装
根据服务对象的不同,FTP服务可以分为两类:一类是系统FTP服务器,它只允许系统上的合法用户使用;另一类是匿名FTP服务器,它允许任何人登录到FTP服务器,和服务器连接后,在登录提示中输入Anonymous,即可访问服务器。针对这两种服务,可以通过RedHat的第一张光盘安装Wu-Ftpd的RPM包,只需以Root身份进入系统并运行下面的命令即可:
Rpm - ivh anonftp -x.x-x.i386.rpm
Rpm - ivh wu-ftpd-x.x.x-x.i386.rpm
其中-x.x-x和-x.x.x-x是版本号。
2、启动
和Apache一样,Wu-Ftpd也可以配置为自动启动:执行RedHat附带的Setup程序,在“System Service”选项中选中Wu-Ftpd,按下[OK]按钮确定退出即可。
自动启动固然方便,但是,当我们更改了Wu-Ftpd配置文件,需要用到手工启动:
启动:/usr/sbin/ftprestart
关闭:/usr/sbin/ftpshut
为了确保FTP服务器安全,必须设置一些重要的配置文件,以更好地控制用户的访问权限。这些配置文件是:/etc/ftpusers、/etc/ftpconversions、/etc/ftp-groups、/etc/ftpphosts、/etc/ftpaccess。利用这些文件,能够非常精确地控制哪些人、在什么时间、从什么地点可以连接服务器,并且可以对他们连接后所做的工作进行检查跟踪。
/etc/ftpusers:该文件夹中包含的用户不能通过FTP登录服务器,有时将需要禁止的用户账号写入文件/etc/ftpuser中,这样就可以禁止一些用户使用FTP服务。
/etc/ftpconversions:用来配置压缩/解压缩程序。
/etc/ftpgroups:创建用户组,这个组中的成员预先定义可以访问FTP服务器。
/etc/ftpphosts:用来根据禁止或允许远程主机对特定账户的访问,例如:
allow czc 192.168.0.0/24
deny cdd 10.0.0.0/8
表示允许czc用户从192.168.0这个网段连线访问,拒绝cdd从10.这个网段连线访问。
/etc/ftpaccess:是非常重要的一个配置文件,用来控制存取权限,文件中的每一行定义一个属性,并对属性的值进行设置。下面对它的一些常用配置做一点介绍:
1、定义用户类别
格式:class [类名] [real/guest/anonymous][IP地址]
功能:这个指令的功能设定FTP服务器上用户的类别。并可对客户端的IP地址进行限制,允许特定或者全部的IP地址访问FTP服务器。
2、登录重试次数
在命令行中输入:loginfails 10,这表明如果10次还没有登录成功就切断连线。
3、密码检查
格式:passwd-check 〈strictness〉 warn
是对匿名用户的密码使用方式的检查,其中〈strictness〉是三个可能的字符串之一:None、Trivial、RFC822。若选None,表示将不对口令做任何检查;若选Trivial,表示对口令有一定的要求,它需要在口令中至少要有一个@符号;若选RFC822,则表示最严格,要求E-mail地址必须遵守RFC822报文标题标准(如:czc@domain.com )。
例如:passwd-check rfc822 warn,表明密码的要求很严格,当密码不符合规定时出现警告信息。
4、登录人数的限制
格式:limit [类别] [人数] [时间] [文件名]
设置指定类别在约定时间内可以登录FTP的人数。例如:limit remote Any/etc/many.msg,说明类别Remote类别在任何时间内登录人数不超过20个人,否则会显示Many.msg警告信息。
合理运用这些配置,可以有效地保护好我们的服务器。
安装、配置好FTP服务器后,就可以进行验证,用图形工具和命令行均可访问FTP服务器。在Linux里最常用的命令为FTP,它提供了一个并不复杂的FTP服务器接口。与FTP服务器连接,只需要在命令提示符后输入:FTP Servername,用主机名或希望连接的FTP服务器的IP地址代替Servername,按照提示输入用户名和口令,然后用标准的Linux上移或下移FTP服务器目录结构。另外,也可以采用图形化FTP程序,包括窗口式gFTP,可以借助Web浏览器去访问FTP服务器。
以上是在Linux下进行FTP服务器配置的要点,希望对您有所帮助。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,
Linux 管道可以缓冲多少数据?这是可配置的吗? 如果管道的两端在同一个进程中,但线程不同,这会有什么不同吗? 请注意:这个“同一个进程,两个线程”的问题是理论上的边栏,真正的问题是关于缓冲的。 最
我找到了here [最后一页] 一种有趣的通过 Linux 启动 Linux 的方法。不幸的是,它只是被提及,我在网上找不到任何有用的链接。那么有人听说过一种避免引导加载程序而使用 Linux 的方法
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
我试图了解 ld-linux.so 如何在 Linux 上解析对版本化符号的引用。我有以下文件: 测试.c: void f(); int main() { f(); } a.c 和 b.c:
与 RetroPie 的工作原理类似,我可以使用 Linux 应用程序作为我的桌面环境吗?我实际上并不需要像实际桌面和安装应用程序这样的东西。我只需要一种干净简单的方法来在 RaspberryPi 上
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
有什么方法可以覆盖现有的源代码,我应该用 PyQt、PyGTK、Java 等从头开始构建吗? 最佳答案 如果您指的是软件本身而不是它所连接的存储库,那么自定义应用程序的方法就是 fork 项目。据我所
我的情况是:我在一个磁盘上安装了两个 linux。我将第一个安装在/dev/sda1 中,然后在/dev/sda2 中安装第二个然后我运行第一个系统,我写了一个脚本来在第一个系统运行时更新它。
我在 i2c-0 总线上使用地址为 0x3f 的系统监视器设备。该设备在设备树中配置有 pmbus 驱动程序。 问题是,加载 linux 内核时,这个“Sysmon”设备没有供电。因此,当我在总线 0
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 11 年前。 Improve thi
我正试图在 linux 模块中分配一大块内存,而 kalloc 做不到。 我知道唯一的方法是使用 alloc_bootmem(unsigned long size) 但我只能从 linux 内核而不是
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我有 .sh 文件来运行应用程序。在该文件中,我想动态设置服务器名称,而不是每次都配置。 我尝试了以下方法,它在 CentOS 中运行良好。 nohup /voip/java/jdk1.8.0_71/
我是在 Linux 上开发嵌入式 C++ 程序的新手。我有我的 Debian 操作系统,我在其中开发和编译了我的 C++ 项目(一个简单的控制台进程)。 我想将我的应用程序放到另一个 Debian 操
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 4 年前。 Improve this ques
我使用4.19.78版本的稳定内核,我想找到带有企鹅二进制数据的C数组。系统启动时显示。我需要在哪里搜索该内容? 我在 include/linux/linux_logo.h 文件中只找到了一些 Log
我知道可以使用 gdb 的服务器模式远程调试代码,我知道可以调试针对另一种架构交叉编译的代码,但是是否可以更进一步,从远程调试 Linux 应用程序OS X 使用 gdbserver? 最佳答案 当然
是否有任何可能的方法来运行在另一个 Linux 上编译的二进制文件?我知道当然最简单的是在另一台机器上重建它,但假设我们唯一能得到的是一个二进制文件,那么这可能与否? (我知道这可能并不容易,但我只是
我是一名优秀的程序员,十分优秀!