Linux下配置FTP服务器,第1张

 它可运行在Linux、Solaris等系统中,支持很多其他的FTP 服务器不支持的特征:

 非常高的安全性需求

 带宽限制

 良好的可伸缩性

 创建虚拟用户的可能性

 分配虚拟IP地址的可能性

 一、vsftpd的启动

 #service vsftpd start

 如果允许用户匿名访问,需创建用户ftp和目录/var/ftp

 # mkdir /var/ftp

 # useradd –d /var/ftp ftp

二、vsftpd的配置

 Vsftpd的配置文件存放在/etc/vsftpd/vsftpdconf 我们可根据实际数要对如下信息进行配置:

 1 连接选项

 ☆监听地址和控制端口

 (1) listen_address=ip address

 定义主机在哪个IP 地址上监听FTP请求。即在哪个IP地址上提供FTP服务。

 (2) listen_port=port_value

 指定FTP服务器监听的端口号。默认值为21。

2 性能与负载控制

 ☆超时选项

 (1) idle_session_timeout=

 空闲用户会话的超时时间,若是超过这段时间没有数据的传送或是指令的输入,则会被迫断线。默认值是300s

 (2) accept_timeout=numerical value

 接受建立联机的超时设定。默认值为60s

 ☆负载选项

 (1) max_clients= numerical value

 定义FTP服务器最大的兵法连接数。当超过此连接数时,服务器拒绝客户端连接。默认值为0,表示不限最大连接数。

 (2) max_per_ip= numerical value

 定义每个IP地址最大的并发连接数目。超过这个数目将会拒绝连接。此选项的设置将会影响到网际快车、迅雷之类的多线程下载软件。默认值为0,表示不限制。

 (3) anon_max_rate=value

 设定匿名用户的最大数据传输速度,以B/s为单位。默认无。

 (4) local_max_rate=value

 设定用户的最大数据传输速度。以B/s为单位。默认无。此选项对所有的用户都生效。

 3 用户选项

 vsftpd的用户分为3类:匿名用户、本地用户(local user)及虚拟用户(guest)

 ☆ 匿名用户

 (1) anonymous_enable=YES|NO

 控制是否允许匿名用户登录

 (2) ftp_username=

 匿名用户使用的系统用户名。默认情况下,值为ftp

 (3) no_anon_password= YES|NO

 控制匿名用户登录时是否需要密码。

 (4) anon_root=

 设定匿名用户的根目录,即匿名用户登录后,被定位到此目录下。主配置文件中默认无此项,默认值为/var/ftp/

 (5) anon_world_readable_only= YES|NO

 控制是否只允许匿名用户下载可阅读的文档。YES,只允许匿名用户下载可阅读的文件。NO,允许匿名用户浏览整个服务器的文件系统。

 (6) anon_upload_enable= YES|NO

 控制是否允许匿名用户上传文件。除了这个参数外,匿名用户要能上传文件,还需要两个条件,write_enable参数为YES;在文件系统上,FTP匿名用户对某个目录有写权限。

 (7) anon_mkdir_wirte_enable= YES|NO

 控制是否允许匿名用户创建新目录。在文件系统上,FTP匿名用户必须对新目录的上层目录拥有写权限。

 (8) anon_other_write_enbale= YES|NO

 控制匿名用户是否拥有除了上传和新建目录之外的`其他权限。如删除、更名等。

 (9) chown_uploads= YES|NO

 是否修改匿名用户所上传文件的所有权。YES,匿名用户上传得文件所有权改为另一个不同的用户所有,用户由chown_username参数指定。

 (10) chown_username=whoever

 指定拥有匿名用户上传文件所有权的用户。

 ☆本地用户

 (1) local_enable= YES|NO

 控制vsftpd所在的系统的用户是否可以登录vsftpd。

 (2) local_root=

 定义本地用户的根目录。当本地用户登录时,将被更换到此目录下。

 ☆虚拟用户

 (1) guest_enable= YES|NO

 启动此功能将所有匿名登入者都视为guest

 (2) guest_username=

 定义vsftpd的guest用户在系统中的用户名。

4 安全措施

 ☆用户登录控制

 (1) /etc/vsftpdftpusers

 Vsftpd禁止列在此文件中的用户登录FTP服务器。此机制是默认设置的。

 (2) userlist_enable= YES|NO

 此选项激活后,vsftpd将读取userlist_file参数所指定的文件中的用户列表。

 (3) userlist_file=/etc/vsftpduser_list

 指出userlist_enable选项生效后,被读取的包含用户列表的文件。默认值是/etc/vsftpduser_list

 (4) userlist_deny= YES|NO

 决定禁止还是只允许由userlist_file指定文件中的用户登录FTP服务器。userlist_enable选项启动后才能生效。默认值为YES,禁止文中的用户登录,同时不向这些用户发出输入口令的指令。NO,只允许在文中的用户登录FTP服务器。

 ☆目录访问控制

 (1) chroot_list_enable= YES|NO

 锁定某些用户在自己的目录中,而不可以转到系统的其他目录。

 (2) chroot_list_file=/etc/vsftpd/chroot_list

 指定被锁定在主目录的用户的列表文件。

 (3) chroot_local_users= YES|NO

 将本地用户锁定在主目中。

编译器就是c语言编译成二进制的东西, 不同的编译器是不同的, 比如16位系统和32位系统的编译器就不同,因为16位的认为int是2字节,32位的则认为是4个字节。 另外 linux上的编译器跟windows下的编译器也不同,linux上的认为内核空间占1G,而wind

您好,在Linux操作系统中,nofile是指当前进程打开的最大文件描述符数量。要查看当前进程的nofile,可以使用以下命令:

1 使用命令“ulimit -n”可以查看当前用户的nofile限制。如果该值不够大,可以使用“ulimit -n <number>”来增加nofile限制。

2 使用命令“cat /proc/<pid>/limits”可以查看指定进程的nofile限制。其中,<pid>为要查看的进程的进程ID。

3 使用命令“cat /proc/<pid>/status | grep Nofiles”可以查看指定进程打开的文件描述符数量。其中,<pid>为要查看的进程的进程ID。

4 使用命令“lsof -p <pid> | wc -l”可以查看指定进程打开的文件数量。其中,<pid>为要查看的进程的进程ID。

以上是查看当前进程的nofile的几种方法,可以根据实际情况选择合适的方法进行查看。

linux的TCP连接数量最大不能超过65535个,这种说法是错误的。

一、TCP最大连接数和端口数量没有必然联系

TCP连接是服务器IP端口和客户端IP端口组成的,对于服务器而言,一般一个服务器只监听一个端口,而客户端是可以不计其数的。一个连接由一个5元组决定(protocol,local IP,local port,remote ip,remote port),对于TCP,protocol固定是TCP,还有四个元素。对于服务器来说,local port一般是固定的,比如HTTP(80),但是remote ip和remote port没有限制。也就是说,可以有百万千万的并发。如果并发量能达到百万千万量级,那么不会只有一个服务器,一般都会是一个服务集群。

二、TCP连接数是和内存正成比的

客户端和服务器建立的每个TCP连接都会占用服务器内存,所以最大TCP连接数和内存成正比。简单估算为最大内存除以单TCP连接占用的最小内存。

三、linux对tcp数量限制是为了文件管理方便

1、Linux操作系统中,一切都是文件。所以每个TCP连接,都会打开一个文件。为此Linux操作系统限制了每个用户能打开的文件数量,通过ulimit -n 查看。当然,我们也可以对此进行修改,修改方式如下:

vi /etc/security/limitsconf文件,在文件中添加如下行(限制修改为10240):

speng soft nofile 10240

speng hard nofile 10240

2、Linux操作系统对所有用户最大能打开文件的限制:cat /proc/sys/fs/file-max。

3网络核心模块对tcp连接的限制(最大不能超过65535)。

4、防火墙管理策略也会对tcp连接数量进行限制。

基于以上的原因,在Linux操作系统中,对TCP连接数量的限制依次有:端口数量限制,网络核心限制,最大文件数量限制(因为每建立一个连接就要打开一个文件),防火墙限制,用户打开文件限制。但并不存在65535这个数量限制。

1、查看最大连接数的代码:

show variables like '%max_connections%';

2、修改最大连接数的代码:

set GLOBAL max_connections = 200;

在命令行中查看和修改 MySQL 的最大连接数,具体代码如下:

>mysql -uuser -ppassword(命令行登录MySQL)

mysql>show variables like 'max_connections';(查可以看当前的最大连接数)

msyql>set global max_connections=1000;(设置最大连接数为1000,可以再次查看是否设置成功)

mysql>exit  

扩展资料

MySQL的系统特性:

1、使用 C和 C++编写,并使用了多种编译器进行测试,保证了源代码的可移植性。

2、支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。

3、为多种编程语言提供了 API。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby,NET和 Tcl 等。

4、支持多线程,充分利用 CPU 资源。

5、优化的 SQL查询算法,有效地提高查询速度。

6、既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。

7、提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift_JIS等都可以用作数据表名和数据列名。

8、提供 TCP/IP、ODBC 和 JDBC等多种数据库连接途径。

9、提供用于管理、检查、优化数据库操作的管理工具。

10、支持大型的数据库。可以处理拥有上千万条记录的大型数据库。

11、支持多种存储引擎。

12、MySQL 是开源的,所以你不需要支付额外的费用。

13、MySQL 使用标准的 SQL数据语言形式。

14、MySQL 对 PHP 有很好的支持,PHP是比较流行的 Web 开发语言。

15、MySQL是可以定制的,采用了 GPL协议,你可以修改源码来开发自己的 MySQL 系统。

参考资料:

-mySQL

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » Linux下配置FTP服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情