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.如果没有安装的话,你可以在Applications->System Settings->Add/Remove Applications中,把Web Server(万维网服务)前的勾给选上,再点更新即可.如果提示插入安装盘,按提示把盘放入光驱即可.或者直接去apache的网站下载最新的版本,解压后,用rpm -ivh来安装也可以.
    安装了apache后,需要在启动http服务,rehl一样提供了非常简单直观的图形操作界面,可以在Applications->System Settings->Service中选中httpd,然后启动它.或者直接输入命令service httpd start.
    服务启动后,就已经可以访问了,打开浏览器,在里面输入http://localhost/,就可以看到默认的redhat的页面了,如下所示:

这个时候,如果是在一个局域网内,就可以用其他的机器输入IP来直接访问该页面了.
接下来是配置问题,rhel提供了一个http服务的配置工具,在Applications->System Settings->Server Settings->HTTP可以调出该配置器,使用非常的简单.如果有过配置IIS的经验,配置这个也不难,但是里面没有配置虚拟目录的功能(不会是我没找到吧?),这里我介绍下如何配置虚拟目录.
在linux中,软件大量的依赖配置文件,不光是静态信息,功能和模块也大量使用配置文件动态生成(保存后常常需要重启服务).这对于软件的扩展非常好,如果要增加第三方的组件,可以很容易实现,其本身的配置也可以相当的灵活.这些年在.NET项目里,配置文件也开始大量的被使用,与早期的开发方式相比,这种方式优点太多,低耦合,易维护,灵活等,像CS,castle,DNN都是典型.
继续回到apache的配置中来,上面说到配置文件,虚拟目录的建立也需要通过修改配置文件实现.
首先找到配置文件并编辑
vi /etc/httpd/conf/httpd.conf
在apache中添加虚拟目录是通过"别名(alias)"来实现的,具体如下:
比如我要在根目录下添加一个虚拟目录User,指向一个我自己的文件价/UserData/wiseman,那么我该这么写
Alias /User/ "/UserData/wiseman/"
把上面这句写入到配置文件当中.注意这里路径的"/"号,两个路径的"/"号应该保持一致,即,前面带的话,后面也带,不带,则都不带.在访问的时候,如果配置的带了"/"号,那么输入地址必须要写,否则将返回404错误,如果不带"/"号的话,则输入地址无论带不带"/"号,都能正确显示.即是:
假如你配置了http://localhost/user/,那么你只能通过http://localhost/user/来访问,假如你输入了http://localhost/user,将返回404错误.如果你配置的是http://localhost/user,那么无论是http://localhost/user还是http://localhost/user/都能正确显示.
添加了别名,如果想要用户能够访问,还需要添加目录权限.
在conf文件底部填写如下的内容
<Directory "/UserData/wiseman">
Options Indexes Includes FollowSymLinks
        
AllowOverride None
       
Allow from all

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过程中出现过如下出错提示:
db_load: unexpected end of input data or key/data pair
db_load: odd number of key/data pairs
原因大概是在ftpUserInfo.txt最后需要再加个回车,加回车后,就没问题了,在图形界面的文本编辑器保存默认也会添加一个回车,所以,如果是在图形界面的文本编辑器下直接生成的,不会出现该错误.
2)生成加密用户库
db_load -T -t hash -f ~/ftpUserInfo.txt /etc/vsftpd_login.db
chmod 600 /etc/vsftpd_login.db //修改加密用户库文件的权限
这部分很容易出问题,首先是hash那个参数,这指定的是用hash加密(也就是md5),使用其他的,或没该参数,最后登录会出错.
然后是db_load指令,似乎很多版本的linux都没装这个命令,至少rhel AS4默认就没装,网上很多朋友也说没有装.如果指定该指令出现"没有该指令"的提示,说明肯定没装了.
先用rpm -qa|grep db4查下自己的系统装了什么.在rhel AS4里,默认装了个db4-4.XXX,实际上,该指令还需要db4-devel-xxx,db4-utils-xxx两个文件.在rhel 4的安装盘里,这几个文件都有,具体哪张盘不记得了,如果有问题的,可以自己去rpm包里找找.
安装完后,在执行db_load命令就没问题了.

3)增加vsftp的pam验证.
先建个文件
vi /etc/pam.d/ftp.vu
然后再里面加入两句命令,对ftp的登录进行处理.
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login

4)修改vsftp的配置文件
vi /etc/vsftpd/vsftpd.conf
主要修改下面的内容
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
guest_enable=YES ? //这里的guest用户就是指的上面用户库里的用户
guest_username=vUser ? //与为ftp建立的用户名要一致
ftpd_banner=这里填写FTP的欢迎信息
pam_service_name=ftp.vu ? //这里指定PAM的配置文件.

保存退出后,配置就算是结束了
先重启服务service vsftpd restart
这个时候,ftp localhost之后,返回的信息将多一行KERBEROS_V4 rejected as an authentication type Name 这样的信息,输入在ftp用户库里的用户名和密码,就可以成功登陆了.

PS:这之后,如果遇上文件不能列表,文件不能下载,不能上传等问题,请注意文件的权限,这个可以耐心点慢慢测试.

转载于:https://www.cnblogs.com/wuxilin/archive/2007/12/11/RedhatEnterpriseLinux_AS4_Step2.html

Linux学习笔记:REHL AS4的上网配置,Http服务安装及配置,ftp服务的安装及配置相关推荐

  1. Linux学习笔记12——配置ftp、squid、Tomcat、Samba、MySQL主从

    Linux学习笔记12 Linux学习笔记12 配置FTP服务 配置pure-ftpd 开机启动 上传下载文件 配置vsftpd CentOS 70安装配置Vsftp服务器 搭好vsftp之后出现55 ...

  2. 【Linux学习笔记】Linux服务器:配置与管理samba服务器

    Linux系列文章目录 一.[linux学习笔记]红帽Linux 7.8系统在虚拟机上的安装 二.[Linux学习笔记]Linux系统的基本操作 三.[Linux学习笔记]管理Linux操作系统:用户 ...

  3. LINUX学习笔记1 网卡配置(网络适配器安装失败问题解决)

    LINUX学习笔记1 网卡配置(网络适配器安装失败问题解决) 概述 每一次选修课总会碰到一堆问题,我真的是幸运得很.这次是LINUX服务器管理这门课,最开始安装虚拟机一切正常(用的是VMware安装u ...

  4. 大数据开发工程师基本功修炼之史上最全Linux学习笔记(建议)

    我正在参加年度博客之星评选,请大家帮我投票打分,您的每一分都是对我的支持与鼓励. 2021年「博客之星」参赛博主:Maynor大数据 (感谢礼品.红包免费送!) https://bbs.csdn.ne ...

  5. Linux学习笔记(自用)

    Linux学习笔记(自用) 该笔记由尚硅谷的"3天上手LInux"视频整理而成,若有侵权,请联系作者删除 文章目录 Linux学习笔记(自用) 1. 概述 2. 下载 3.文件与目 ...

  6. Linux学习笔记(二)|常用命令

    Linux学习笔记(二)常用命令 1.文件处理命令 1.1命令格式与目录处理 -ls 功能描述:显示目录文件 原意:list 所在路径:/bin/ls 语法: ls-a 显示所有文件,包括隐藏文件 l ...

  7. 20155303狄惟佳预备作业三Linux学习笔记

    20155303狄惟佳预备作业三Linux学习笔记 初次接触Ubuntu系统以及Linux内核,了解了其产生的历史,从感性来讲,深深吸引我的是其中蕴含的珍贵的开源精神,以及Stallman等人对&qu ...

  8. LINUX学习笔记共五部分

    LINUX学习笔记1--LINUX系统命令 1.         界面切换: a)         进入字符界面:按住ctrl+alt+F1: 1.         首先需要进入用户登入,输入用户名和 ...

  9. linux 串口信息记到日志,[linux学习笔记]之一:ubuntu ch340调试备忘

    [linux学习笔记]之一:ubuntu ch340调试备忘 已有 2183 次阅读2016-11-8 21:52 |个人分类:linux 最近迷上了Linux,入了一块板.电脑使用win7+ubun ...

  10. Linux学习笔记--导航(CentOS 7)

    Linux学习笔记1 Linux学习笔记2 Linux学习笔记3 Linux学习笔记4 Linux学习笔记5 Linux学习笔记6 Linux学习笔记7 Linux学习笔记8 Linux学习笔记9 L ...

最新文章

  1. Html.ActionLink 几种重载方式说明及例子
  2. 165. 小猫爬山【爆搜+剪枝】
  3. Java小数中的四舍五入
  4. python websocket异步高并发_高并发异步uwsgi+web.py+gevent
  5. 开发经验分享_04_快速熟悉程序(思路)
  6. 网际控制报文协议icmp_网络中的ICMP(Internet控制消息协议)
  7. c# 2维数组 取一维_C#| 不同类型的一维数组声明
  8. C#中使用MongoDb
  9. 计算机三位科学家,华南理工大学这三位年轻科学家太优秀了!
  10. 如何用word制作英语答题卡_英语考试答题卡(word 版)
  11. 电脑被流氓软件入侵?教你彻底清除
  12. bi报表工具应该具备哪些功能
  13. python项目 from models import * 报错
  14. WPA3也不安全啦?WPA3-R3 H2E了解一下
  15. 《爱してる 》歌词与音译(大爱哇)
  16. 打印表格留标题怎么设置_打印如何添加标题?内容一页打不下?—关于Excel文档打印的那些事-excel打印区域怎么设置...
  17. 为什么计算机无法读取u盘,电脑无法识别读取U盘怎么办?逐一排查解决问题
  18. PRACH, preamble, RO 的关系与区别
  19. 乘法口诀表python_如何用python编写乘法口诀表
  20. el-dialog对话框重新打开后数据遗留问题

热门文章

  1. python实现给定一个单链表删除指定节点
  2. 【转载】一份不可多得的深度学习技巧指南
  3. mysql教研室_MySQL数据库 范式
  4. 人人都想自学python_人人都想自学Python,为什么坚持下来的没几个?
  5. 用 Truffle 插件自动在Etherscan上验证合约代码
  6. 区块链 以太坊 Solidity状态变量、局部变量与memory 、storage
  7. git add commit checkout 工作区 暂存区 远程仓库 区别
  8. 区块链 比特币 以太坊 hyperledger fabric智能合约比较 不同的区块链比较
  9. kubernetes Pod yaml解析注释
  10. 数据结构和算法——堆排序