

























Linux下上网.
其实在linux下上网和在windows下上网一样简单,常用的方式有EthernetConnection,XDSL Connection和Wireless Connection.
在REHL AS4下,通过图形界面,可以很轻松的配置.在应用程序->系统工具->网络设备控制中可以调出设置面板.点添加新设备,可以根据自己的网络情况来选择以何种方式.如下图:

因为我自己是小区宽带接入方式,因此我选择了以太网连接.像学校教育网内学生宿舍那种使用固定内网IP的,也应该选用这种,如果是自动获取IP的,也是这个,只是在后来的IP设置中选dhcp自动获得.
如果是家庭的ADSL拨号上网,则选用XDSL链接方式,无线网卡上网则选择无线连接,这里就不赘述了.
因为我是在VMW里用rehl上网,因此我还需要安装些针对虚拟机的特殊服务.我VMW网络选择的桥接模式(bridge),因此还需要安装
VMware网络服务接口和VMware桥接网络服务,另外还要开启dhcp服务.这些在安装VMW时应该就都会安装上,不过因为我使用的是绿色版本,所以需要手动来安装和启动,稍微麻烦点.
这些都配好后,在以太网设备属性选项卡里根据自己的情况,勾选自动获取IP和DNS或静态输入.
在保证你的宿主机能正常上网的前提下,现在你的虚拟机下的linux应该也能上网了.测试一下:
在terminal中输入ifconfig命令可以查看当前的网络状况.ping 网关来测试与路由器是否连接正常.最后ping 外网地址,能通的话,就算大功告成了.
Http服务和apache
作为服务器OS,提供http服务是再经常不过的一项需求,在windows2000/2003中,我们最经常使用IIS作为web server来提供http服务.在linux下可没有IIS,这里最广泛使用的web server是apache,虽然我最终会选用lighthttpd来作为我的web server,但是在这之前要先了解下apache.
rhel默认安装包含了apache,如果你不确定,可以用rpm -q httpd来查询一下,如果已经安装了,将返回版本号,比如在rhel AS4下,输入后将返回:httpd-2.0.52-25.ent.如果没有安装的话,你可以在

Order allow,deny
</Directory>
AllowOverride None保证所有用户都可以访问该目录下页面.
Allow from all 保证所有来源都可以显示该目录下内容,这个部分可以用来做防盗链,from 后面填写自己的网站地址即可.
Order allow,deny 表示默认情况是不允许任何网站的访问,然后不在allow范围的网站和在deny范围的网站将被禁止访问.
这里allow所有网站,deny没有,因此最后得出允许所有网站访问的结论.
关于allow,deny和order指令,可以参看这篇介绍:http://man.chinaunix.net/newsoft/ApacheManual/mod/mod_access.html
其他的参数含义如下:
Option:定义在目录内所能执行的操作。
None:表示只能浏览,
FollowSymLinks:允许页面连接到别处,
ExecCGI:允许执行CGI,
MultiViews:允许看动画或是听音乐之类的操作,
Indexes:允许服务器返回目录的格式化列表,
Includes:允许使用SSI。这些设置可以复选。
All:则可以做任何事,但不包括MultiViews。
AllowOverride:加None参数表示任何人都可以浏览该目录下的文件。
另外的参数有:FileInfo、AuthConfig、Limit。
修改完毕后,用:wq退出vi,然后service httpd restart
再通过http://localhost/User/看,已经可以访问了.
FTP服务和vsftp
最后是ftp的配置了.在win2003下,我最常使用的ftp服务端软件是serverU,功能确实强大,不过有一些安全漏洞,可以通过配置权限解决,这里不多说明了.
可惜的是,在linux下没有serverU,不过一样也有其他的ftp软件,这里面最受推崇的就是vsftp(very safe ftp)了,听名字就知道是个非常安全的ftp.ftp的配置过程比较的复杂,也没有任何配置工具,全部要手工输命令操作,下面介绍下简单的流程.
首先,同样是检查vsftp的安装.在rhel AS4里,默认安装时,是没有安装vsftp的,如果当时安装的时候没有勾选的话,那么就需要先安装.检查自己的机子是否安装的命令是rpm -qa |grep vsftpd,如果有安装,将返回版本号,在AS4的光盘中带的vsftp版本是2.0.X.
与安装apache一样,你可以通过rehl图形界面里的添加/删除工具添加ftp服务,然后按提示插入光盘,最后安装vsftp.或者在光盘中找到rpm包,通过rpm ivh安装.在安装完毕后,记得输入rpm -qa |grep vsftpd来确定已经安装成功(如下图).

接下来,service vsftpd start
启动ftp服务,然后ftp localhost(或者IP),这时已经可以连上ftp了,提示输入用户名和密码.这个时候,如果你输入root和口令,将提示login failed,如果你有建立其他的系统用户,输入用户名和相应的口令就能登录成功.
vsftp默认的配置是与linux系统共用用户库的,即是,操作系统的用户可以登录ftp,默认的列表是其用户目录(/Home/用户名),在/etc/vsftpd/vsftpd.conf中可以修改其权限,匿名用户的设置也在那里.
不过我想要的并不是这种ftp服务,我希望像serverU一样,可以建立用户,这个用户与OS登录的用户没有任何关系,其可以管理的文件夹位置也可以自己定义.这种用户被称为虚拟用户.在linux里,要实现上面的功能一般有两种方法.第一种是建立用户,然后去掉shell登录权限,然后设定文件路径.另一种是建立用户库,里面包含若干用户,映射到一个系统用户上,然后设定文件路径.
我使用的是第二种方法.
首先建立虚拟用户vUser,这个用户不用来ftp登录,作为虚拟用户存在,每一个虚拟用户可以看作一个用户组.
useradd -d /ftp地址 vUser //建立用户组,并指定该组用户的列表文件夹
chmod 700 /ftp地址 //把该文件夹设置为仅该组用户可以操作.
然后是具体的过程
1)构造口令文件ftpUserInfo.txt
按照奇数行为用户名,偶数行为密码的方式创建该文件.如,文件内容如下:
wiseman
12345
wiseman2
54321
表示有两个用户,wiseman的密码是12345,wiseman2的密码是54321,这两个用户最终用于ftp登录.
建立文件可以用cat或vi命令,如果在图形界面下,也可以直接创建.
这里有个问题,我在创建的时候,在后面的build过程中出现过如下出错提示:
3)增加vsftp的pam验证.
先建个文件
4)修改vsftp的配置文件
vi /etc/vsftpd/vsftpd.conf
主要修改下面的内容
保存退出后,配置就算是结束了
先重启服务service vsftpd restart
这个时候,ftp localhost之后,返回的信息将多一行
PS:这之后,如果遇上文件不能列表,文件不能下载,不能上传等问题,请注意文件的权限,这个可以耐心点慢慢测试.
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。