linux网络技术考试.docx
《linux网络技术考试.docx》由会员分享,可在线阅读,更多相关《linux网络技术考试.docx(10页珍藏版)》请在冰豆网上搜索。
linux网络技术考试
#Groupaddchen
#groupadd–g5000chen1存放在/etc/group中
#useraddchen2
#useradd–u600–gchen1–d/home/chen3yonghu同时在/etc/passwd/和etc/shadow添加。
#userdel–rchen1主目录
#groupdelchen2.禁止用户登录:
#passwd–lchen1-u恢复登录–d删除用户
#usermod–u601chen1xiugai主目录等
#idchen1显示用户的UID和GID信息。
文件属性
#chownchenhello.txt改变文件的属主
#chown–Rchen1mydir递归改变目录的属主。
#chgrpgroup1hello.txt改变的是文件的属组。
Chmodg-w,o=x或者ugo=r。
压缩与打包
$tar-cvfmyetc.tar/ect将目录/etc打包为一个myetc.tar的文档
$tar–z(Z,j)cvfmyetc.tar.gz/ect将目录/etc打包并压缩为一个myetc.tar.gz(.Z,.bz2)的文档
$tar-zxvfmyetc.tar.gz-C/tmp解压缩还原,如果没有指定路径,则在当前目录下
$gzipmyetc.tar将文件myetc.tar压缩为myetc.tar.gz
$gunzipmyetc.tar.gz将文件myetc.tar.gz解压缩为myetc.tar
挂载与卸载
#mount-tiso9660/dev/cdrom/mnt/cdrom挂载光盘:
t是类型,设备文件,最后为挂载点
#mount-tvfat/dev/sda1/mnt/myusb将文件系统类型为vfat的优盘挂载到/mnt/myusb
#df查看是否挂载
#umount/mnt/cdrom卸载光盘文件系统
网卡配置命令:
#ifconfig显示网卡参数的配置情况
#ifconfigeth010.255.8.6netmask255.255.0.0
#ifconfigeth0down/up
在根本上:
/etc/sysconfig/network-scripts/ifcfg-eth0里面的ipaddre=;servicenetworkrestart;
Rpm–ivh(--force;--nodeps)……….。
rpm
Crontab–l;crontab–e;(进入crontab)编辑环境
#!
/bin/shecho”pleaseinputipnums:
”readnumsecho”Startingprofileexecution,pleasewait…”for(i=1;i<=$nums;i++)doifconfigeth0:
i192.168.1.$idone
#!
/bin/shfor(i=1;i<=100;i++)domkdir/tmp/dir$iuseradd/tmp/dir$iuser$ichmod715/dir$i
DNS/etc/hosts是本地主机数据库文件存放域名/etc/host.conf解析器配置文件/etc/resolv.conf是DNS客户端的配置文件,ip地址与域名。
Apache的运行:
两种启动方式:
#servicehttpdstart第二种:
apachectlstart.开机自动启动:
chkconfighttpdon检查运行状态:
servicehttpdstatus
VSFTPD特点:
安全性高;稳定性好;速度很快;匿名FTP更加简单的配置;支持基于ip的虚拟FTP服务器;支持虚拟用户,而每个用户可具有独立配置;支持PAM认证方式;支持带宽限制。
Samba服务是windows和linux系统跨平台的共享文件和打印的软件,包括smbd进程和nmbd
Servicesmbstartps-aux|greps(n)mbd配置文件/etc/samba/smb.conf包括全局设置部分共享定义部分
Samba1、用户主目录共享
[homes]
Comment=HomeDirectories设置注释
Browseable=no每个用户只能访问自己的主目录
Writeable=yes对能够访问主目录的用户开放写权限
2、所有用户都可以访问的共享
[public]
Path=/home/samba该共享所对应的实际路径
Public=yes设置对所有用户开放
Readonly=yes默认情况下,对访问该目录的用户设置为只读权限
Writelist=@staff设置只有staff组中的用户对该共享才有写权限,“@”表示组
Iptable是一款linux下著名的防火墙软件真正的是netfilter,Iptables只能算是防火墙与用户之间的接口,即netfilter运行在内核态,而iptables运行在用户态,用户通过iptables命令来调用netfiler来实现防火墙的功能,这就是linux防火墙的基本架构
Filter过滤表(input链forword链output链)nat网络地址转换表(prerouting链output链postrouting链)mangle拆分表(prerouting链output,input,forword,postrouting)
#echo“1”>/proc/sys/net/ipv4/ip_forwardip数据包转发功能每次开机都需要的话:
修改/etc/sysctl.confnet.ipv4_forward=1#sysctl-p实时修改内核运行时的参数
1、iptables-AINPUT-jACCEPT向filter表的INPUT链中追加一条规则,功能是接受源地址为任意、目标地址为防火墙本身的所有数据包。
2、Iptables-DINPUT-ptcp--dport80-jDROP从filter表的INPUT链中删除这样的一条规则,功能是拒绝协议为tcp、目的端口为80的数据包进入本机
3、Iptables-DINPUT1删除INPUT链中编号为1的规则
4、Iptables-IINPUT-ptcp--dport80-jaccept从filter表的INPUT链中插入这样的一条规则,功能是接受协议为tcp、目的端口为80的数据包进入本机
5、Iptables-LINPUT用来列出指定链中的规则
6、Iptables-FINPUT用来清空filter表中INPUT链中所有的规则
7、iptables-tnat-F
8、iptables-ZINPUT将指定链的计数器清零
9、iptables–NMYCHAIN自定义新链
10、Iptables-XMYCHAIN用来删除指定MYCHAIN的链
11、iptables–PINPUTDROP默认被拒绝
12、iptables–E321new321将自定义链重命名
Iptables语法格式中的参数
1、iptables-AINPUT-ptcp-jACCEPT-p是用来匹配协议的本条功能:
是接受协议为tcp的数据包进入本机,-pall用来匹配所有类型的协议
2、iptables-AINPUT-pucp --sport53-jACCEPT--sport用来指定要匹配的端口
本条功能是:
接受协议为ucp,源端口为53的数据包进入本机--sport20:
8020~80!
反匹配
3、iptables-AINPUT-ptcp --dport80-jACCEPT--dport用来指定要匹配的端口
本条功能是:
接受协议为tcp,目标端口为80的数据包进入本机
4、iptables-AINPUT-s10.255.8.6-jACCEPT用来指定要匹配的源IP地址数据包进入本机。
5、iptables-AINPUT-d10.255.8.6-jACCEPT-d指定要匹配的目的IP地址。
6、iptables-AINPUT-ieth0-jACCEPT-i用来指定数据包进入的网卡接受从网卡eth0进入本机的数据包
7、iptables-AFORWARD-oeth0-jACCEPT-o用来指定数据包出去的网卡
8、iptable–AINPUT–ptcp–syn–jACCEPT匹配发起建立tcp连接的数据包
9、iptables-AINPUT-ptcp-mmultiport--source-port10,21,53,80110-jACCEPT--source-port用来匹配多个不连续的源端口号接受tcp协议且源端口号为的数据包进入本机
10、iptables-AINPUT-ptcp-mmultiport--destination-port10,21,53,80-jACCEPT--destination-port用来匹配多个不连续的目的端口号
11、iptables-AINPUT-ptcp-mmultiport--port22,80-jACCEPT用来匹配源端口号和目的端口号同为22或同为80的数据包进入本机
12、iptables–AINPUT-picmp--icmp-type8-jACCEPT接受icmp协议且类型编号为8的数据包进入本机
13、iptables-AINPUT-mlimit--limit3/m--limit-burst5-jACCEPT在单位时间内通过五个数据包之后,立刻触发每分钟允许通过3个数据包的流量限制。
利用iptables充当防火墙,保护内网主机:
#!
/bin/sh
Modprobeip_conntrack_ftp把ip_conntrack_ftp模块载入内核,实现对Ftp会话跟踪
Modprobeip_nat_ftp把ip_nat_ftp模块载入内核实现nat和ftp功能
Echo1>/proc/sys/net/ipv4/ip_forward激活路由转发功能
Iptables–F
Iptables–tnat–F
Iptables–tmangle–F清空三张表
Iptables–PFORWARDDROPFORWARD链默认策略为DROP
Iptables–AFORWARD–ieth3–ptcp–dport80–jACCEPT
Iptables–AFORWARD–ieth2–ptcp–dport80–jACCEPT
Iptables–AFORWARD–ieth3–ptcp–dport21–jACCEPT
Iptables–AFORWARD-mstateRELATED,ESTABLISHED–jACCEPT开放内网ftp服务的数据连接的被动传输模式
Iptables–AFORWARD–ptcp–dport22–jACCEPT开放内网服务器的ssh服务
Routeadddefaultgw192168.2.1或/etc/sysconfig/networkGATEWAY=192.168.2.1#servicenetworkrestart
利用iptables实现SNAT示例:
#!
/bin/sh
Modrobeip_nat_ftp
Iptables-F
Echo"1">/proc/sys/nat/ipv4/ip_froward
Iptables-tnat-F清空nat表中的规则
Iptables-PFORWARDACCEPT设置FORWARD的默认处理策略为ACCEPT
Iptables-AFORWARD-ieth3-d192.168.2.0/24-ptcp--syn-jDORP
Iptables-tnat-APOSTROUTING-s192.168.2.0/24-oeth3-jSNAT--to-source202.204.235.100做SNAT,当位于内网段192.168.2.0/24转换成202.240.235.100
执行脚本
./snat.sh
Ifconfigeth3:
1202.204.235.100netmask255.255.255.0
Squid支持httpftpssl
1、http_port3128(8080)设置squid监听的端口号为3128
2、icp_port3130设置squid服务器之间通信的端口号为3130
3、cache_mem256Msquid服务器运行时占用内存的大小
4、cache_swap_low90cache_swap_high95缓存使用
5、Maximum_object_size4096KB设置squid最大缓存的对象为4MB
6、maximum_object_size_in_memory8K设置最大保存在内存中的对象为8K
7、cache_dirufs/var/spool/squid10016256缓存目录
8、cache_access_log/var/log/squid/access.log
9、Aclmynetsrc192.168.2.0/24将源ip地址为192.168.2.0/24的网段命名为mynet
10、Aclmydomainsrc(dst)domain
11、Aclthebadurlurl_regex-i^http:
//www.XXX.com将以http:
//www.XXX.com开头的url命名为thebadurl
12、Acltheimagefileurl-regex-i\.gif$将url路径中以.gif结尾的文件命名为theimagefile
13、AclmyworktimetimeMTWHF08:
00-17:
00将周一到周五8:
00到17:
00命名为myworktimeMTWHFAS
14、aclmyportport80
15、http_accessallowmynet设置允许列表mynet中定义的IP地址可以访问本代理服务器
16、http_reply_accessallowall设置针对列表all中所有客户机请求的答复进入本代理服务器
一.Linux下安装mysql步骤如下:
cd/usr/local/src//进入此放软件包的目录
groupaddmysql//建立mysql组
useraddmysql-gmysql//建立mysql用户并且加入到mysql组中
tar-zxvfmysql5.0.41.tar.gz//解压缩
cdmysql5.0.41//进入解开包的目录
./configure检测环境
make编译
makeinstall安装
二.tomcat服务器安装
在安装Tomcat之前需要安装j2sdk(Java2SoftwareDevelopmentKit),也就
是JDK
1、安装JDK的步骤如下:
1)下载j2sdk,如jdk-6u1-linux-i586-rpm.bin
2)在终端中转到jdk-6u1-linux-i586-rpm.bin所在的目录,输入命令chmod+755
jdk-6u1-linux-i586-rpm.bin,添加执行的权限。
3)执行命令./jdk-6u1-linux-i586-rpm.bin,生成jdk-6u1-linux-i586.rpm的文
件。
4)执行命令chmod+755jdk-6u1-linux-i586.rpm,给jdk-6u1-linux-i586.rpm
添加执行的权限。
5)执行命令rpm–ivhjdk-6u1-linux-i586.rpm,安装jdk。
6)安装界面会出现授权协议,按Enter键接受,把jdk安装在/usr/java/jdk
1.6.0_01。
7)设置环境变量,在/etc/profile中加入如下内容(可以使用vi进行编辑profile):
JAVA_HOME=/usr/java/jdk1.6.0_01
CLASSPATH=$JAVA_HOME/lib:
$JAVA_HOME/jre/lib
PATH=$PATH:
$JAVA_HOME/bin:
$JAVA_HOME/jre/bin
exportPATHCLASSPATHJAVA_HOME
8)在终端执行命令java–version,jdk的版本为jdk1.6.0_01则表示jdk已成功安
装。
2、安装Tomcat
1)下载apache-tomcat-6.0.10.tar.gz
2)tar-zxvfapache-tomcat-6.0.10.tar.gz//解压
3)cp-Rapache-tomcat-6.0.10/usr/local/tomcat//拷贝apache-tomcat-6.0.10到/usr/local/下并重命名为tomcat
4)/usr/local/tomcat/bin/startup.sh//启动tomcat
显示UsingCATALINA_BASE:
/usr/local/tomcat
UsingCATALINA_HOME:
/usr/local/tomcat
UsingCATALINA_TEMDIR:
/usr/local/tomcat/temp
UsingJAVA_HOME:
/usr/java/jdk1.6.0_01
3.1.2安装JDK
//修改文件jdk-6u3-linux-i586-rpm.bin的权限,并执行
[root@localhostroot]#chmod755jdk-6u3-linux-i586-rpm.bin
[root@localhostroot]#./jdk-6u3-linux-i586-rpm.bin
//这是再查看/root会多出一个jdk-6u3-linux-i586.rpm,安装这个包
[root@localhostroot]#rpm-ivhjdk-6u3-linux-i586.rpm
//安装完成,可以在JDK的安装目录/usr/java下看到jdk1.6.0_03目录,进入/usr/java,做个jdk的目录连接到jdk1.6.0_03
[root@localhostroot]#cd/usr/java
[root@localhostjava]#ln-sjdk1.6.0_03/jdk
书上的那两个编成题
1
#!
/bin/sh
N=1
number=$1
if[$number-lt$N];then
exit0
fi
while[$N-le$number]
do
ifconfig-seth0:
${N}192.168.1.${N}/24
N=$[N+1]
done
A)创建文件/root/user100.sh
#>/root/user100.sh
(B)编写程序
#vi/root/user100.sh
2
#bin/bash
i=1
path=/tmp
while[$i-ne101]
do
if!
grep"^user$i:
"/etc/passwd>/dev/null2>&1
then
useradduser$i
fi
if[!
-d$path/dir$i]
then
cd$path
mkdirdir$i
chownuser$i.user$idir$i
chmod751dir$i
fi
i=$[i+1]
done
(C)修改user100.sh的权限
#cd
#chmod+xuser100.sh
(D)运行程序
#./user100.sh
(E)查看结果
#ll/tmp
#cat/etc/passwd|grep“^user”
以正規表示法的方式控制:
url_regex[i]newsbbs
urlpath_regex[i]\.exe$\.gif$\.dat$
#允许上网时间段
aclaccept_timetimeMTWHF11:
30-13:
00
http_accessallowaccept_time
#禁止qq采用封QQ服务器IP的方法
aclqqipdst218.18.95.165219.133.38.4219.133.38.132218.18.95.221
http_accessdenyqqip
#禁止msn根据MSN启动的特征封掉
aclmsnmessengerurl_regex-igateway.dll
http_accessdenymsnmessenger
#禁止popo
aclpopodstdomain
aclpopo1url_regex-i
http_accessdenypopo
http_accessdenypopo1
#禁止新浪UC
aclsinaucurl_regex-i
http_accessdenysinauc
#限制用户下载文件的类型
acldownloadurlpath_regex-i\.mp3$\.exe$\.avi$\.rar$\.rvmb$\.rm$\.torrent$/announce?
#\.torrent$/announce?
为bt下载对应特征.
(-i参数忽略大小写如:
mp3=MP3)
http_accessdenydownload
#屏蔽某些含有特定关键词的站点:
aclrefused_sitesurl_regex-isexbtgirl
也可把要禁止的站点写到文档中方便管理如下
aclrefused_sitesurl_regex“/etc/squid/refused_sites.txt”
http_accessdenyfefused_sites