十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
一、简答题
成都创新互联是由多位在大型网络公司、广告设计公司的优秀设计人员和策划人员组成的一个具有丰富经验的团队,其中包括网站策划、网页美工、网站程序员、网页设计师、平面广告设计师、网络营销人员及形象策划。承接:成都网站制作、成都网站设计、网站改版、网页设计制作、网站建设与维护、网络推广、数据库开发,以高性价比制作企业网站、行业门户平台等全方位的服务。
1.如何将本地80端口的请求转发到8080端口,当前主机IP为192.168.16.1,其中本地网卡eth0:
答:# iptables -t nat -A PREROUTING -d 192.168.16.1 -p tcp --dport 80 -j DNAT --to 192.168.16.1:8080
或 者:# iptables -t nat -A PREROUTING -i eth0 -d 192.168.16.1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
2.什么是NAT,常见分为那几种,DNAT与SNAT有什么不同,应用事例有那些?
SNAT,DNAT,MASQUERADE都是NAT。
MASQUERADE是SNAT的一个特例。
SNAT是指在数据包从网卡发送出去的时候,把数据包中的源地址部分替换为指定的IP,这样,接收方就认为数据包的来源是被替换的那个IP的主机。
MASQUERADE是用发送数据的网卡上的IP来替换源IP,因此,对于那些IP不固定的场合,比如拨号网络或者通过dhcp分配IP的情况下,就得用MASQUERADE。
DNAT,就是指数据包从网卡发送出去的时候,修改数据包中的目的IP,表现为如果你想访问A,可是因为网关做了DNAT,把所有访问A的数据包的目的IP全部修改为B,那么,你实际上访问的是B
因为,路由是按照目的地址来选择的,因此,DNAT是在PREROUTING链上来进行的,而SNAT是在数据包发送出去的时候才进行,因此是在POSTROUTING链上进行的。
3.包过滤防火墙与代理应用防火墙有什么区别,能列举几种相应的产品吗?
4.iptables是否支持time时间控制用户行为,如有请写出具体操作步骤。
5.说出你知道的几种linux/unix发行版本。
Redhat、CentOS、Fedora、SuSE、Slackware、Gentoo、Debian、Ubuntu、FreeBSD、Solaris、SCO、AIX、HP…
6.列出linux常见打包工具并写相应解压缩参数(至少三种)
7.计划每星期天早8点服务器定时重启,如何实现?
8.列出作为完整邮件系统的软件,至少二类。
9,当用户在浏览器当中输入一个网站,说说计算机对dns解释经过那些流程?注:本机跟本地dns还没有缓存。
答:
a.用户输入网址到浏览器;
b.浏览器发出DNS请求信息;
c.计算机首先查询本机HOST文件,看是否存在,存在直接返回结果,不存在,继续下一步;
d.计算机按照本地DNS的顺序,向合法dns服务器查询IP结果;
e.合法dns返回dns结果给本地dns,本地dns并缓存本结果,直到TTL过期,才再次查询此结果;
f.返回IP结果给浏览器;
g.浏览器根据IP信息,获取页面;
10,我们都知道,dns既采用了tcp协议,又采用了udp协议,什么时候采用tcp协议?什么时候采用udp协议?为什么要这么设计?
答:这个题需要理解的东西比较的多,分一下几个方面
a,从数据包大小上分:UDP的最大包长度是65507个字节,响应dns查询的时候数据包长度超过512个字节,而返回的只要前512个字节,这时名字 解释器通常使用TCP从发原来的请求。
b,从协议本身来分:大部分的情况下使用UDP协议,大家都知道UDP协议是一种不可靠的协议,dns不像其它的使用UDP的Internet应用 (如:TFTP,BOOTP和SNMP等),大部分集中在局域网,dns查询和响应需要经过广域网,分组丢失和往返时间的不确定性在广域网比局域网上更 大,这就要求dns客户端需要好的重传和超时算法,这时候使用TCP。
11,一个EXT3的文件分区,当使用touch test.file命令创建一个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况,说说你的理由。
答:两种情况,一种是磁盘配额问题,另外一种就是EXT3文件系统的设计不适合很多小文件跟大文件的一种文件格式,出现很多小文件时,容易导致inode 耗尽了。
12,我们都知道FTP协议有两种工作模式,说说它们的大概的一个工作流程?
FTP两种工作模式:主动模式(Active FTP)和被动模式(Passive FTP)
在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,然后开放N+1号端口进行监听,并向服务器发出PORT N+1命令。
服务器接收到命令后,会用其本地的FTP数据端口(通常是20)来连接客户端指定的端口N+1,进行数据传输。
在被动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,同时会开启N+1号端口。然后向服务器发送PASV命令,通 知服务器自己处于被动模式。服务器收到命令后,会开放一个大于1024的端口P进行监听,然后用PORT P命令通知客户端,自己的数据端口是P。客户端收到命令后,会通过N+1号端口连接服务器的端口P,然后在两个端口之间进行数据传输。
总的来说,主动模式的FTP是指服务器主动连接客户端的数据端口,被动模式的.FTP是指服务器被动地等待客户端连接自己的数据端口。
被动模式的FTP通常用在处于防火墙之后的FTP客户访问外界FTp服务器的情况,因为在这种情况下,防火墙通常配置为不允许外界访问防火墙之后主机,而只允许由防火墙之后的主机发起的连接请求通过。
因此,在这种情况下不能使用主动模式的FTP传输,而被动模式的FTP可以良好的工作。
13.编写个shell脚本将当前目录下大于10K的文件转移到/tmp目录下
Q:主要是考察awk 这些的用法
#/bin/sh
#Programm :
# Using for move currently directory to /tmp
for FileName in `ls -l |awk ‘$510240 {print $9}’`
do
mv $FileName /tmp
done
ls -la /tmp
echo “Done! ”
14.apache有几种工作模式,分别介绍下其特点,并说明什么情况下采用不同的工作模式?
apache主要有两种工作模式:prefork(apache的默认安装模式)和worker(可以在编译的时候加参数–with-mpm- worker选择工作模式)
linux中文件类型与权限的表示: - rwx rwx rwx
其中第一个参数代表文件类型,例:“-”代表普通文件;“d”代表目录;“c”字符设备文件;“b”块设备文件
第一个“rwx”表示文件拥有者拥有的权限;第二个“rwx”表示该文件拥有者所属于的组所拥有的权限;第三个“rwx”表示其他用户拥有的权限
虚拟机注意事件如下:
1、分区的时候,根据计划安装的软件灵活决定分区。一般分区有:/和swap分区,其中swap分区类型和其他不同需要专门选择一下,它的空间一般是物理内存的两倍即可。root分区是紧急情况root用的,不过可以不用分。
2、当然,为了方便,你可以安装发行包给你做好的软件。但我安装Linux的习惯做法是开始就安装一个最小系统,然后安装所有的编译工具。安装编译工具的方法一般都通过你用的发行包的包管理工具实现,这样最方便。比如在TurboLinux中,运行/usr/sbin/Turbopkg就可以了。在管理工具中选择所有关于Developoment相关的选项或gcc相关选项,一般就可以了。
3、引导装载一定要装。否则一旦出现分区问题都不好办。
4、如果和Windows混装的时候,装完了系统起不来了。可以用98启动盘启动,然后用FDISK /MBR回复主引导分区来保住Windows分区。
你如果需要一个具体的数字的话,我晚上回去帮你找
10 复制n行文本,可以输入命令nyy
退出vi编辑器可以分别使用如下方式:
:q 退出
:wq 保存退出
:q! 不保存强行退出
11 步骤:
下载vsftpd的包文件,如vsftpd-2.01.tar.gz
解压缩:tar xzvf vsftpd-2.01.tar.gz
进入解压目录:cd vsftpd-2.01
配置:./configure
编译:make
安装:make install
第一步:运行autoscan
在终端中输入“autoscan”并回车执行,生成configure.scan,该文件是configure.in的原型,而configure.in是autoconf的脚本配置文件。所以在进行下一步工作之前要对configure.scan进行修改,将其重命名为configure.in。
第二步:运行aclocal
在终端中输入“aclocal”并回车执行。该命令根据configure.in的内容生成aclocal.m4文件,该文件主要处理本地的宏定义。
第三步:运行autoconf
在终端中输入“autoconf”并回车执行。该命令根据configure.in和aclocal.m4的内容生成configure配置脚本,configure脚本是用来生成Makefile的。
第四步:运行autoheader
在终端中输入“autoheader”并回车执行。该命令用来生成config.h.in文件。通常是会从“print.h”文件中复制用户附加的符号定义。
第五步:编写Makefile.am
automake需要脚本配置文件Makefile.am,这个文件得手工建立。内容如下:
1 AUTOMAKE_OPTIONS=foreign
2 bin_PROGRAMS=print
3 appname_SOURCES=print.c print.h
简单说明:
第一行中AUTOMAKE_OPTIONS用来设置automake的选项。GNU对自己发布的软件有严格的规范,比如必须附带许可证声明文件COPYING等等,否则automake执行时会报错。automake提供了3种软件等级:foreign、gnu和gnits。默认等级是gnu。我们使用的是foreign,表示只检测必要的文件。
第二行中bin_PROGRAMS定义了要产生的执行文件名。如果产生多个可执行文件,每个文件名要用空格隔开。
第三行中file_SOURCES定义file这个执行程序的依赖文件,其中“file_SOURCES”中的前部分“file”要改写成可执行文件名,即与bin_PROGRAMS定义的名称一直。如果有多个可执行文件,那就要定义相应的file_SOURCES。
第六步:执行automake
这一步很重要,automake处理脚本配置文件Makefile.am后,生成Makefile.in。有一些必需的脚本文件,如“install-sh”、“missing”等,可以从automake软件包里复制过来,只需在执行时使用“--add-missing”选项即可。默认的处理方式是创建这些文件的符号链接,如果再加上“--copy”选项则可以使用复制方式。执行的命令格式如下:
# automake --add-missing --copy
第七步:执行configure
在终端中输入“./configure”并回车执行,就是执行第三步生成的configure配置脚本,该脚本根据第四步生成的config.h.in和第六步生成的Makefile.in的内容来生成Makefile文件。
第八步:执行make
1 usermod user1 -g guest
passwd user1 根据提示输入密码123456
userdel -r student1
2
adduser.sh 内容:
while read line
do
name=$line
useradd $name
echo $name | passwd --stdin $name
done user.txt
user.txt
zhangsan
lisi
wangwu
[root@localhost baidu]# sh -x adduser.sh
+ read line
+ name=zhangsan
+ useradd zhangsan
+ echo zhangsan
+ passwd --stdin zhangsan
Changing password for user zhangsan.
passwd: all authentication tokens updated successfully.
+ read line
+ name=lisi
+ useradd lisi
+ echo lisi
+ passwd --stdin lisi
Changing password for user lisi.
passwd: all authentication tokens updated successfully.
+ read line
+ name=wangwu
+ useradd wangwu
+ echo wangwu
+ passwd --stdin wangwu
Changing password for user wangwu.
passwd: all authentication tokens updated successfully.
+ read line
上面提示用户都已创建成功。
3
先挂载光盘,装包
rpm -ivh /misc/cd/Server/vsftpd* --force
查看已安装的指定包
rpm -qa |grep vsftpd
启动ftp服务
service vsftpd restat
加入启动项
chkconfig vsftpd on