bmbm546的专栏

Focus on embedded system~~

Linux系统FTP服务器安装

 

Linux服务器安装

1.     安装[红帽Linux.5.5.for.x86.服务器版].rhel-server-5.5-i386-dvd.iso

按照常用linux系统安装即可。

注:自定义设置分区

/boot 分区 200M 系统的启动引导分区

/swap 分区 交换分区 大小为内存的两倍 8192M

/ 根目录 选择剩余所有大小

 

2.     telnet服务器创建

3.    在Linux(我用的Red Hat9.0)操作系统中,首先确保系统安装了telnet-server软件包。查看是否安装此软件包的命令:
 

4.       [root@localhost root]#rpm -qa | grep telnet
telnet-0.17-25                                    //telnet客户端(默认安装)    
telnet-server-0.17-25                          //telnet服务软件包

5.     

6.    如 果没有安装,请在Linux第3张安装盘中找到telnet-server-0.17-25-i386.rpm软件包。安装命令如下:

7.     

8.       [root@localhost root]#rpm -ivh telnet-server-0.17-25-i386.rpm

9.     

10.   在默认情况 下,Linux服务不会开启,并用不像(如HTTP、FTP)要一样作为独立的守护进程来运行,而使用xinetd(entended internet services daemon)程序来管理,提高了系统的安全性。

11.    

12.   (1)修改本机Linux服务配置文件/etc/xinted.d /telnet,将disable行属性改为no,其它保存默认就可。

13.    

14.    [root@localhost root]#vi /etc/xinetd.d/telnet
# default: on
# description: The telnet server serves telnet sessions;it user \
....
service telnet
{
                disable            = no                 //默认是yes,改为no
                flags               = Reuse
                socket_type     = stream        
...
}

15.    

查看/etc/services/中的telnet端口是否为23.也改可以改为其它端口号。不过登录的时候,需要打以下命令:

16.   telnet IP地址端口号

17.    [root@localhost root]#cat /etc/services
...
ssh                            22/tcp                                #SSH Remote Login Protocol            
ssh                            22/udp
telnet                         23/tcp                                #telnet port
telnet                         23/tcp

查询与重新启动Telnet远程登录服务

 

18.    [root@localhost root]#chkconfig telnet on                //设置默认启用
[root@localhost root]#service xinetd restart             // 重新启用
Stopping xinetd:                                                  [OK]
Starting xinetd:                                                   [OK]


 

3 挂载NTFS硬盘分区

一、下载安装ntfs模块解决

挂载分区

(1).fdisk -l查看分区信息

Disk /dev/hda: 80.0 GB, 80000000000 bytes
255 heads, 63 sectors/track, 9726 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hda1 * 1 1912 15358108+ 7 HPFS/NTFS
/dev/hda2 1913 9725 62757922+ f W95 Ext'd (LBA)
/dev/hda5 1913 4462 20482843+ b W95 FAT32
/dev/hda6 4463 7012 20482843+ 7 HPFS/NTFS
/dev/hda7 7013 7025 104391 83 Linux
/dev/hda8 7026 9725 21687718+ 8e Linux LVM

(2).建立挂载目录

mkdir /media/D
mkdir /media/E
mkdir /media/F

(3).Mount windwos下的所有分区

ntfs 用 mount -t ntfs /dev/sda5 /media/D
vfat 用 mount -t vfat /dev/sda6 /media/E

 

本系统采用以下语句进行挂载,由于不识别NTFS直接挂载,需要安装ntfs-3g软件,利用工具进行挂载

 

ntfs 用 mount -t ntfs-3g  /dev/sda5 /media/D

使用df -h查看是否被mount上来

(4).设置启动自动挂载分区

修改/etc/fstab
添加如下信息:
/dev/sda5 /media/D ntfs umask=000,nls=utf8
/dev/sda6 /media/E ntfs umask=000,nls=utf8
/dev/sda7 /media/F ntfs umask=000,nls=utf8

本系统采用以下语句进行自动挂载

/dev/sda7 /media/F ntfs-3g umask=000,nls=utf8


重启下试下吧!

卸载NTFS模块

rpm -qa|grep -i ntfs 查看所安装的版本

rpm -e kernel-module-ntfs-2.6.18-53.el5-2.1.27-0.rr.10.11.i686

即可卸载。

下载安装ntfs-3g解决

安装光盘里面一般带有。

打开下面的网址: http://sourceforge.net/projects/linux-ntfs/files/
找到与你内核版本相同的*.rpm包,下载到本地文件中!
rpm -ivh kernel-modules-2.6.18-53.el5.rpm即可;
但,我使用uname -r 出现的版本是2.6.18kernel-2.6.18-53.el5-53.el5PAE
而我在linux-ntfs下载不到相同的kernel版本的套件
参见案例:http://phorum.study-area.org/index.php?topic=51624.0;prev_next=prev
2,安装ntfs-g3解决
NTFS-3g是一个开源软件,它支持在Linux下面读写NTFS格式的分区。它非常的快速,同时也很安全。它支持Windows 2000、XP、2003和Vista,并且支持所有的符合POSIX标准的磁盘操作。 ntfs-3g的目的是为了持续的发展,各硬件平台和操作系统的用户需要可靠的互通与支持ntfs的驱动,ntfs-3g可以提供可信任的、功能丰富的高性能解决方案。经过了12年多的发展,ntfs-3g已经逐渐稳定;
下载地址:
wget http://www.tuxera.com/community/ntfs-3g-download/
安装:
./configure
make
make install
FATAL: Module fuse not found.
安装fuse

 

4 远程登录

Xmanager 远程连接Linux

Xmanager版本:xmanager 3.0
Linux服务器端设置:
1.我们在Linux系统下,修改/etc/X11/xdm/Xaccess文件,找到下面的语句:
# * #any host can get a login window
去掉最前面的#号,成为
* #any host can get a login window

 

 2.修改/etc/X11/xdm/xdm-config的最后一行,在displayManager.requestPort:0前面加上一个!号,结果如下:
!DisplayManager.requestPort: 0

 

 确保/etc/X11/xdm/Xservers的属性为444,/etc/X11/xdm/Xsetup_0的属性为755

 

3.我们修改/etc/X11/gdm/gdm.conf文件,找到下面的语句:
[xdmcp]
Enable=false
将其中的Enable=false 改为Enable=true 或 Enable=1。

 

4.同时我们要确保存在下面的语句,因为177端口是我们要配置的xdmcp服务的监听端口,我们在后面配置xmanager将看。
Port=177


5. 修改/etc/inittab文件,将下面的语句
id:3:initdefault
改为如下,如果原来就是id:5:initdefault就不用更改。

 

6. 同时,找到如下图文字所在的地方
x:5:respawn:/etc/X11/prefdm -nodaemon
将它修改为x:5:respawn:/usr/bin/gdm

8.如果我们的Linux机器配置有防火墙,为防止防火墙将通过177端口(即xdmcp服务)的数据过虑,我们必须加上如下的规则:

iptables -A INPUT -p udp -s 0/0 -d 0/0 --dport 177 -j ACCEPT

 

9.将init 5切换到init3,再将init3切换init5,实现gdm重启:
[root@node1 gdm]# init 3
[root@node1 gdm]# init 5
Xmanager安装:
     安装Xmanager,打开xmanager 的Xbrowser,在地址栏输入Linux的IP地址,OK,

[root@node1 gdm]# export DISPLAY=192.168.3.21:0.0   #此IP为本机IP地址      输入LINUX服务器的IP地址,回车

 

本系统采用Xmanager中Xstart软件进行远程登录管理

 

服务器需要以图形化模式运行;

防火墙需要允许端口打开

5 USB无线网卡RTL8191S驱动安装

从瑞昱官网下载驱动RTL8191系列。加压安装。

然后进行相关配置。

下载安装无线网络辅助软件wicd并安装。

以root用户运行命令

/etc/init.d/wicd start

或者进入目录ect/init.d

然后./wicd start

是为了打开wicd的后台执行进程

然后打开应用程序

Internet

wicd

进行相关设置即可。


 

6 FTP服务器的搭建

linux自带的vsftpd来搭建FTP。vsftpd是一个安全、高速、稳定的FTP服务器。

 

一:安装、启动vsftpd

·vsftpd的安装很简单,按如下步骤依次完成

首先检查系统是否已安装了vsftpd,若没有,放入第二张光盘并挂载光驱,完成后进入/mnt/cdrom/RedHat/RPMS目录。接着查找以vs开头的文件,找到后用rpm -ivh 安装该软件,安装完成后再使用rpm -qa | grep  vsftpd 查看是否安装正确。确认无误后进入根目录,卸载光驱,弹出光盘。

 

·安装完成后使用service  vsftpd start启动vsftpd,这样FTP服务器便搭建完成。但此时还不能访问FTP服务器,因为服务器默认情况下关闭了防火墙,此时我们还需使用service iptables stop命令关闭防火墙,这样客户端才可以访问FTP服务器。

 ·客户端测试

 

 

二:配置vsftpd

虽然vsftpd已经搭建完成,客户机可以访问FTP服务器资源了,但功能实在少的可怜。只有vsftpd的默认功能。 

·vsftp默认功能

1>允许匿名用户和本地用户登陆。

2>匿名用户使用的登陆名为ftp或anonymous,口令为空匿名用户不能离开匿名服务器没目录/var/ftp,且只能下载不能上传。

3>本地用户的登录名为本地用户名,口令为此本地用户的口令;本地用户可以离开自家目录切换至有权访问的其他目录,并在权限允许的情况下进行下载/上传

4>写在文件/etc/vsftpd.ftpusers中的本地用户禁止登陆。

 

·给匿名用户上传权限

vsftpd的默认功能已经可以满足小型FTP服务器的需求了,不过有时我们需要客户端使用匿名帐户登陆FTP服务器,而且要求客户端可以上传文件到服务器。而默认情况下匿名用户不允许上传文件,此时我们需要修改vsftpd配置文件了

用VI打开/etc/vsftpd/vsftpd.conf(vsftpd的配置文件,FTP的功能强大不强大,主要看在配置文件中的配置),将anon_upload_enable=YES、anon_mkdir_write_enable=YES两个指令前的“#”号删除,并在文件中添加anon_other_write_enable=YES、anon_world_readeable_only=NO两条指令。wq保存后在客户端使用匿名帐户登陆服务器才有上传权限。

其中

anon_uplood_enable=YES表示匿名帐户可以上传文件

anon_mkdir_write_enable=YES表示匿名帐户可以创建目录

anon_other_write_enable=YES表示匿名帐户可以为文件、文件夹进行更名以及删除。

在完成上述三个命令后,便可使用匿名用户对服务器上传文件了。但这样配置后却又不能使用FTP下载文件了,所以加入anon_world_readeable_only=NO,使匿名用户即可上传文件又可下载文件。

 

文件修改完成后重新启动vsftpd服务,使修改生效。这样客户机才可以使用匿名用户上传下载文件。

 

·权限的设置

 

1>控制允许/不允许访问的主机

在vsftpd.conf文件最后一行有一条指令:TCP_wrappers=YES,表示vsftpd服务器与TCP wrappers相结合,进行主机的访问控制。这样客户机在访问vsftpd服务器时,服务器会检查/etc/hosts.allow和/etc/hosts.deny中的设置以决定请求连接的主机是否允许连接到服务器。这两个文件可以起到简易防火墙的功能。

具体设置如下:

想要拒绝某个IP访问此服务器,可以在/etc/hosts.deny文件中加入vsftpd:192.168.0.18:deny

all:all:allow

想要允许某个IP段访问此服务器,可以在/etc/hosts.allow文件中加入

vsftpd:192.168.0:allow

all:all:deny

 

 

2>访问速度的限制

在vsftpd.conf文件最后一行加入anon_max_rate=    (单位B),这样匿名用户在下载或上传文件是最大速度为设置的值。同理想要对本地用户进行设置,只要加入local_max_rate=    (单位B)即可完成对本地用户的速度限制。

 

3>线程数的限制

在vsftpd.conf文件中加入max_per_ip=   (0表示不限制),可以防止一些人使用多线程下载资源,占用服务器的带宽、资源。这样当客户机使用的线程数超过服务器的最大限制时,将出现如图界面。

 

 

4>最大客户连接限制

在vsftpd.conf文件中加入max_clients=   (0表示不限制),可以防止因客户连接数过多而导致服务器内存占满,死机。当客户机数超过服务器所设置的最大值时,客户端出现如图界面

 

以上4步输入的指令的截图

 

·其他功能

 

1>设置日志记录

有了日志记录,在服务器上可以就查看哪些IP访问了FTP服务器,下载、上传了哪些资源等等,一目了然。vsftpd服务器默认情况下已经开启了日志记录功能,但我们必须对它进行更好的设置。

打开vsftpd.conf文件,删除hferlog_filt=/var/log/vsftpd.log前的“#”号。

这样在重启vsftpd服务后便可在/var/log/vsftpd.log文件中查看日志记录了。

 

 

2>设置用户登陆的主目录

默认情况下用匿名用户登陆FTP服务器后会进入/var/ftp目录,而本地用户登陆服务器后进入/home下的用户主目录中。我们可以vsftpd.conf文件中加入local_root=/web,这样在使用本地用户登陆FTP服务器后自动进入/web目录中

 

通过以上设置,我们已经完成了基本的vsftpd服务器的搭建

 

 

 

 

 

 

 

 

 

 

以下命令还未测试:

配置本地用户访问的FTP 服务器一般有下述步骤:

 

1、创建本地用户 FTP服务器目录

   # mkdir –p /var/local-ftp/clp

 

2、创建本地用户帐户及工作目录

   # useradd –d /var/local-ftp/clp –M clp

 

3、创建本地用户口令

   # passwd clp  ******

 

4、指定本地用户工作目录的属主及权限

   # chown clp /var/local-ftp/clp

   # chmod 750 /var/local-ftp/clp

 

5、编辑FTP 服务器配置文件

 /etc/vsftp.d/vsftpd.conf

   1)指定 FTP Server 登录主目录

   2)锁定本地用户工作目录

三 本机配置相关

1.添加用户

Root用户操作

useradd –d  /FtpFile1 –M newland1      //添加账户newland1

passwd  newland1                             //添加密码

userdel  –r  newland1                             //删除账户 newland1

 

2 FTP服务器

service  vsftpd start启动vsftpd

需要修改文件         /etc/vsftpd/vsftpd.conf

设置用户登陆的主目录

默认情况下用匿名用户登陆FTP服务器后会进入/var/ftp目录,而本地用户登陆服务器后进入/home下的用户主目录中。我们可以vsftpd.conf文件中加入local_root=/web,这样在使用本地用户登陆FTP服务器后自动进入/web目录中。

 

可是设置ftp本地用户禁锢在宿主目录中,这样可以防止它切换到其他的目录中。
在vsftpd服务器的配置文件vsftpd.conf中添加配置项chroot_local_user设置为YES,vsftpd服务器将会把本地用户禁锢在用户宿主目录中。
chroot_local_user=YES
配置完后记得要重启服务,这样ftp本地用户就只可以访问自己的目录了。

 

如何让VSFTPD开机启动

#ntsysv

选中VSFTPD

然后确定退出即可

阅读更多
个人分类: 嵌入式linux
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭