您的位置:首页 > 理论基础 > 计算机网络

LNS-读书笔记

2014-03-30 20:34 260 查看
第一章:基本网络配置
一、查看及测试网络配置
1.查看网络接口信息
ifconfig [-a] [接口名] -a 查看所有接口,不论接口是否活跃 [接口名] 只显指定接口
2.测试网络连接状态 ping [-c 次数] 目标主机IP或名称
3.查看主机路由信息 route [-n] -n 使用数字显示(速度比较快)
4.跟踪数据包所经过的路由 traceroute 目标主机IP或名称
5.查看主机名称 hostname
6.测试DNS服务器是否能正常解析
nslookup 目标主机名或IP [DNS服务器IP]
7.查看网络连接状态
netstat [-anrltup]
-a显示所有连接 -n用数字显示 -r显示路由表 -l显示处于监听状态的进程
-t显示TCP进程 -u显示UDP进程 -p显示进程号进程名信息
8.查看ARP缓存记录 arp -n
二、使用命令调整网络参数(临时生效)
1.修改网卡参数
ifconfig 接口名 ip地址 [netmask 子网掩码]
ifconfig 接口名 ip地址[/网络前缀]
ifconfig 接口名 down[/up]
ifconfig 接口名hw ether 接口MAC地址
2.设置路由记录
route add -net 网络地址/网络前缀 gw 下一跳IP
route add -host 主机IP gw 下一跳IP
route add default gw 下一跳IP
route del -net 网络地址/网络前缀 [gw 下一跳IP]
route del -host 主机IP [gw 下一跳IP]
route del default [gw 下一跳IP]
3.配置主机名 hostname 主机名
4.配置静态arp arp -s 主机IP地址 主机MAC地址
三、通过配置文件修改网络参数
1.网卡参数
/etc/sysconfig/network-scripts/ifcfg-接口名
DEVICE=接口名 ONBOOT=yes/no BOOTPROTO=static/dhcp
IPADDR=IP地址 NETMASK=子网掩码 GATEWAY=网关IP
2.修改主机名
/etc/sysconfig/network
NETWORKING=yes/no NETWORKING_IPV6=yes/no HOSTNAME=主机名
3.配置DNS服务器IP
/etc/resolv.conf
nameserver DNS服务器IP
4.配置本地的域名解析记录
/etc/hostname
IP地址 主机名

四、使用DHCP动态配置主机地址
1.安装
rpm -ivh /media/Server/dhcp-版本信息
2.修改主配置文件
cp /usr/share/doc/dhcp-版本/dhcpd.conf.sample /etc/dhcpd.conf
vi /etc/dhcpd.conf
3.重要配置项
option routers 网关IP;
option sub-netmask 子网掩码;
option domain-name-servers 首选DNS,备用DNS;
rang 开始IP 结束IP;
default-lease-time 默认租约时间;
max-lease-time 最大租约时间;
hardware ethernet 主机MAC地址;
fixed-address 保留IP地址;
4.启动服务
service dhcpd start
5.设置在哪块网卡提供DHCP服务
/etc/sysconfig/dhcpd
DHCPARGS=”接口名”
6.租期数据库文件
/var/lib/dhcpd/dhcpd.lease
7.DHCP中继代理
(1)在服务器上建立多个网段的作用域
(2)开启中继代理服务器的路由转发功能
/etc/sysctl.conf net.ipv4.ip_forward=1 sysctl –p
(3)改配置文件
/etc/sysconfig/dhcrelay INTERFACE=”接口名 接口名” DHCPSERVERS=服务器IP
(4)启动服务
service dhcrelay start

第二章:构建文件服务器
一、构建samba文件共享服务器
1.samba通信使用的协议
SMB:Server Message Block,服务消息块
CIFS:Common Internet File System,通用互联网文件系统
2.安装包
samba-common 公共包
samba 服务器主程序
samba-client 客户端工具
3.配置文件
/etc/samba/smb.conf 主配置文件
/etc/samba/lmhostsNETBIOS解析文件
/etc/samba/smbpasswd 可以访问samba服务的账号文件
/etc/samba/smbuserssamba账号与windows账号映射关系
4.主配置文件重要配置项
[global]全局设置
workgroup = 工作组
server sting = 服务器描述信息
security = share/user/domain/server share不需密码 user本机验证
hosts allow = 允许访问的主机
hosts deny = 拒绝访问的主机
[共享名] 共享设置
comment = 共享文件夹描述信息 path = 共享文件夹绝对路径
public = yes/no guest ok = yes/no
writable = yes/no read only = yes/no
browseable = yes/no valid users = 用户列表
invalid users = 用户列表 write list = 用户列表
read list = 用户列表 create mask = 掩码
directory mask = 掩码
5.samba账号管理
samba账号必须是系统账号,密码可以与系统账号不同
smbpasswd [-a/d/e/x] 账号名
-a添加 -d禁用 -e启用 -x删除
6.测试主配置文件语法正确性 testparm
7.启动服务 service smb start
8.客户端工具
smbclient [-L] //服务器IP [-U 用户名]
smbclient //服务器IP/共享名 [-U 用户名]
mount [ -t cifs ] //服务器IP/共享名 /挂载目录 [ -o username=用户名 ]

二、构建FTP文件传输服务器
1.FTP服务概述
主动模式:服务器(20)与客户机(>1024)建数据连接
被动模式:客户机(>1024)与服务器(>1024)建数据连接
FTP用户类型:匿名(ftp,anonymous),本地用户,虚拟用户(只能访问FTP服务)

2.VSFTPD安装包
vsftpd
3.配置文件
/etc/vsftpd/vsftpd.conf 主配置文件
/etc/vsftpd/ftpusers 黑名单,这个文件中的用户不能访问FTP服务器
/etc/vsftpd/user_list 主配置有userlist_enable=YES, userlist_deny=YES则拒绝这个文件中的用户访问FTP服务器,主配置文件有userlist_enable=YES, userlist_deny=NO则只允许这个文件中的用户访问FTP服务器
4.主配置文件重要配置项
全局配置
download_enable=YES/NO 是否允许客户端下载
pasv_max_port=端口号 被动模式使用的端口号上限
pasv_min_port=端口号 被动模式使用的端口号下限
max_clients=客户端数量 允许多少个客户端同时连接
max_per_ip=连接数量 允许同一个IP地址最多连接数
user_config_dir=/目录 为用户建立个人配置文件
匿名用户
anonymous_enable=YES/NO 匿名用户是否可以访问
anon_world_readable_only=YES/NO 匿名用户是否可以浏览
anon_umask=022 匿名用户上传文件的反向掩码
anon_root=/目录 匿名用户访问位置
anon_upload_enable=YES/NO 匿名用户是否可以上传文件
anon_mkdir_write_enable=YES/NO 匿名用户是否可以创建目录
anon_other_write_enable=YES/NO 匿名用户是否可以删除重命名
anon_max_rate=速度 匿名用户最大上传下载速度
本地用户
local_enable=YES/NO 是否允许本地用户访问
local_umask=022 本地用户上传文件的反向掩码
local_root=/目录 本地用户访问位置
chroot_local_user=YES/NO 是否把本地用户禁锢在自己的主目录
local_max_rate=速度 本地用户最大上传下载速度
4.启动服务
service vsftpd start
5.虚拟用户
(完成实验即可)

第三章:构建域名服务器
一、DNS系统概述
1.作用:正向解析(主机名到IP)、反向解析(IP到主机名)
2.结构:从根(.)开始,是一个分布式数据库
3.类型:主域名服务器(权威服务器)、从域名服务器、缓存服务器
二、使用BIND构建域名服务器
1.安装包
bind 服务器主程序
bind-utils 服务器调式工具
bind-chroot 提供伪装根目录功能,增加安全性
caching-nameserver 提供缓存服务器所需的配置文件及区数据库文件
2.主配置文件
/etc/named.conf 或 /var/named/chroot/etc/named.conf
主配置文件以“#号”或“//”或“/*……*/”表示注释
(1)全局配置
options {
directory “/var/named”; ?必须的选项
listen-on port 53 { IP地址 }; ?监听的IP地址及端口号,可选
allow-query { 客户端IP; } ?允许的客户端地址,可选
recursion yes; ?使用递归查询,可选
};
(2)区域配置
//正向主区域设置 //正向辅助区域设置
zone “域名” IN { zone “域名” IN {
type master; type slave;
file “文件名”; file “slaves/文件名”;
allow-update { none; }; ?可选 masters { 主服务器IP; };
allow-transfer { IP地址; }; ?可选 }
}

//反向主区域设置 //反向辅助区域设置
zone “IP.in-addr.arpa” IN { zone “IP.in-addr.arpa” IN {
type master; type slave;
file “文件名”; file “slaves/文件名”;
allow-update { none; }; ?可选 masters { 主服务器IP; };
allow-transfer { IP地址; }; ?可选 }
}

//分离解析
view “名称” {
match-clients { 客户端地址; };
区域设置(与前4个例子相同)

}

3.区数据库文件
//正向区数据库文件 //反向区数据库文件
$TTL 86400 $TTL 86400
@INSOA域名.用户名.域名. ( @ IN SOA 域名. 用户名.域名. (
序列号 序列号
更新时间 更新时间
重试时间 重试时间
过期时间 过期时间
缓存时间 ) 缓存时间 )
INNS域名服务器名; INNS域名服务器名
INMX邮件服务器名; IPINPTR 主机名;
主机头INA主机IP;
主机头INCNAME 主机别名;

4.检查语法正确性
named-checkconf
named-checkzone 域名 区数据库文件名

5.启动服务
service named start

6.验证
nslookup

第四章:构建LAMP网站服务平台(一)
一、LAMP概述
1.LAMP含义
L:linux A:apache M:mysql P:php/perl/python
二、安装apache
1.RPM包安装
httpd 主程序
httpd-manual apache帮助手册
system-config-httpd 图形界面配置工具
httpd-devel apache服务器的开发工具包
2.RPM包安装产生的文件及目录
/etc/httpd 服务器根目录
/etc/httpd/conf/httpd.conf 主配置文件
/var/www/html 网站根目录
/etc/init.d/httpd 服务器控制脚本
/usr/sbin/httpd 服务器的主要执行程序
/var/log/httpd/access_log 访问日志文件
/var/log/httpd/error_log 错误日志文件
3.编译安装
./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite --enable-ssl --with-ssl=/usr/lib
--enable-auth-digest --enable-cgi --enable-suexec --with-suexec-caller=daemon
--with-suexec-docroot=/usr/local/apache2/htdocs
make
make install
(--prefix指定安装位置,--enable-so启用动态模块加载功能,--enable-rewrite启用地址重写功能,
--enable-ssl启用ssl支持,--with-ssl指定ssl库文件位置,--enable-auth-digest启用digest认证支持
--enable-cgi启用cgi脚本支持,--enable-suexec启用suexec指令支持,--with-suexec-caller指定可以
调用suexec指令的用户,--with-suexec-docroot指定可以使用suexec指令的根目录)
4.编译安装产生的主要目录
conf/ 配置文件
htdocs/ 网站根目录
bin/ 可执行命令
modules/ 模块文件
logs/ 日志文件
lib/ 库文件
三、apache配置文件及日志
1.配置文件的重要配置项
ServerRoot 服务器根目录
Listen 服务器监听的IP地址及端口号
ServerName 服务器主机名
DocumentRoot 网站根目录
DirectoryIndex 默认主页文件名
2.apache日志类型
访问日志:access_log,记录客户机IP,访问的时间,进行的操作
错误日志:error_log,记录发生的错误信息
四、WEB站点应用举例
1.测试服务器性能
(1)修改系统最大文件数限制
ulimit -n 文件数
(2)使用AB进行压力测试
/安装目录/bin/ab [-q] [-c 并发请求次数] [-n 总请求次数] http://网站IP/文件名 2.虚拟主机
(1)虚拟主机类型:基于名称、基于IP、基于端口
(2)基于名称
NameVirtualHost 主机IP
<VirtualHost 主机IP>
DocumentRoot 网页根目录
ServerName 主机名称
</VirtualHost>
(3)基于IP(同上)
(4)基于端口
Listen 80
Listen 端口号
其它配置同上
3.用户个人主页
UserDir public_html
<Directory “/home/*/public_html”>
AllowOverride none
Option none
Order allow,deny
Allow from all
</Directory>
创建对应目录,并给出权限。
4.日志分析: 使用awstats
五、apache访问控制
1.基于用户
主配置文件对应目录添加如下信息
AuthName “名称”
AuthType Basic
AuthUserFile /目录/文件名
require valid-user
创建口令文件
/安装目录/bin/htpasswd -c /目录/文件名 用户名
2.基于客户端地址的访问控制
Order allow,deny 先执行允许后执行拒绝,默认拒绝所有没被明确允许的用户
Order deny,allow 先执行拒绝后执行允许,默认允许所有没被明确拒绝的用户

第五章:构建LAMP网站服务器平台(二)
一、安装并管理mysql数据库
1.安装mysql
(1)创建所需的用户和组 useradd -M -s /sbin/nologin mysql
(2)解压源码并进入解压目录 tar zxf mysql-版本.tar.gz / cd mysql-版本
(3)编译前的配置 ./configure --prefix=/usr/local/mysql
(4)编译 make
(5)把编译好的软件安装 make install
(6)复制配置文件到安装目录 cp support-files/my-medium.cnf /etc/my.cnf
(7)初始化数据库 /usr/local/mysql/bin/mysql_install_db
(8)更改安装目录的拥有者可拥有组
chown -R root:mysql /usr/local/mysql
chown -R mysql /usr/local/mysql/var
(9)启动mysql /usr/local/mysql/bin/mysqld_safe -user=mysql &
2.管理数据库
(1)登录 /usr/local/mysql/bin/mysql -u 用户名 -p密码
(2)管理
mysql>show databases; 查看所有数据库名称
mysql>show tables; 查看数据库中的表名
mysql>use 数据库名; 更改数据库
mysql>describe 表名; 查看表结构
mysql>create database 数据库名; 创建数据库
mysql>create table 表名 (字段定义); 创建表
mysql>drop table 表名; 删除表
mysql>drop database 数据库名; 删除数据库
mysql>insert into表名(字段列表) values(字段值列表); 向表插入数据
mysql>select 字段名 from 表名 where 条件; 在表中查找数据
mysql>update 表名 set 字段名=值 where 条件; 更新表中的数据
mysql>flush privileges; 刷新权限
mysql>delete from 表名 条件表达式 从表中删除数据
mysql>grant 权限 on 数据库.表名 to 用户名@主机IP identifiedby 密码; 赋予权限
mysql> revoke权限 on 数据库.表名 to 用户名@主机IP 去除权限
/usr/local/mysql/bin/mysqldump -u 用户名 -p密码 数据库名 表名 > 备份文件名
/usr/local/mysql/bin/mysqldump -u 用户名 -p密码 –all-databases > 备份文件名
/usr/local/mysql/bin/mysql -u 用户名 –p密码 数据库名 < 备份文件名
/usr/local/mysql/bin/mysql -u 用户名 –p密码 < 备份文件名
二、构建PHP环境
1.安装PHP软件包
./configure --prefix=/usr/local/php5 --enable-string --with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 --enable-sockets
make; make install
cp php.ini-dist /usr/local/php5/php.ini
2.调整httpd.conf
AddType application/x-httpd-php .php
DirectoryIndex index.php index.html

第六章:构建postfix邮件服务器(一)
一、电子邮件系统概述
1.邮件系统的角色及使用的协议
MTA:Mail Transfer Agent,邮件传输代理,服务器端软件。常用的有Exchange,Sendmail,Postfix
MUA:Mail User Agent,邮件用户代理,客户端软件。常用的有Outlook,Outlook Express,Foxmail
MDA:Mail Delivery Agent,邮件分发代理,把邮件分发到用户的邮箱
SMTP:Simple Mail Transfer Protocol,简单邮件传输协议,用于发送邮件,使用tcp/25
POP:Post Office Protocol,邮局协议,用于接收邮件,使用tcp/110
IMAP:Internet Message Access Protocol,互联网消息访问协议,用于接收邮件,使用tcp/143
二、Postfix邮件服务基础
1.安装后产生的目录及配置文件
/etc/postfix/main.cf ?postfix主配置文件
/usr/libexec/postfix/ ?存放postfix各个服务器程序文件
/var/spool/postfix/Incoming/ ?存放刚接收的邮件
/var/spool/postfix/Active/ ?存放正在投递的邮件
/var/spool/postfix/Deferred/ ?存放投递失败的邮件
/var/spool/postfix/Hold/ ?存放被阻止转发的邮件
/var/spool/postfix/Corrupt/ ?不可读或不可分析的邮件
/usr/sbin/postalias ?用于构造、修改和查询别名表
/usr/sbin/postconf ?用于显示和编辑主配置文件
/usr/sbin/postfix ?用于启动、停止postfix
/usr/sbin/postmap ?用于构造、修改或查询查询表
/usr/sbin/postqueue ?普通用户管理邮件队列命令
/usr/sbin/postsuper ?管理员管理邮件队列命令
2.主配置文件(main.cf)的重要选项
in_interfaces = IP地址 ?服务器监听的IP地址
myhostname = 主机名 ?邮件服务器的主机名
mydomain = 域名 ?邮件服务器所使用的邮件域
myorigin = 域名 ?外发邮件时发件人地址中的邮件域名
mydestination = 域名或主机名 ?可接由的邮件地址中的域名
home_mailbox = Maildir/ ?邮件存储位置和格式
3.构建Dovecot服务器
Dovecot可以提供POP3/IMAP协议,通过PAM方式进行身份认证
Dovecot主配置文件/etc/dovecot.conf,指定提供的协议可以修改protocols选项
4.SMTP认证
SMTP认证可以有效的防止垃圾邮件,当用户投递邮件时需输入用户名和密码,用Cyrus SASL实现
5.postfix的查询表
/etc/alias.db可以实现邮件别名、群发、转发。修改/etc/main.cf,添加alias_maps = hash:/etc/alases,修改完/etc/alias后,可以用newaliases来更新到/etc/alias.db
6.限制邮件大小
修改主配置文件,修改 message_size_limit = 值
7.限制邮箱大小
mailbox_size_limit = 值 ?仅针对使用mailbox方式的系统用户
virtual_mailbox_limit = 值 ?针对虚拟用户
磁盘配额 ?针对系统用户
第七章:构建postfix邮件服务器(二)
一、电子邮件过滤
1.根据客户端地址/主机名过滤
smtpd_client_restrictions = check_client_access hash:/etc/postfix/access
对应文件:/etc/postfix/access
2.根据客户机HELO信息中的主机名地址过滤邮件
smtpd_helo_required = yes
smtpd_helo_restrictions = reject_invalid_hostname
对应文件:无
3.根据发件人地址过滤邮件
smtpd_sender_login_maps = mysql:/etc/postfix/mysql_virtual_sender_maps.cf,
mysql:/etc/postfix/mysql_virtual_alias_maps.cf
smtpd_sender_restrictions = permit_mynetworks, reject_sender_login_mismatch,
reject_mon_fqdn_sender, reject_unknown_sender_domain,
check_sender_access hash:/etc/postfix/sender_access
对应文件:/etc/postfix/sender_access
4.根据接收人的地址过滤邮件
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination,
reject_mon_fqdn_recipient,reject_unknown_recipient_domain
5.基于邮件内容过滤
安装MailScanner
安装SpamAssassin
6.邮件杀毒
安装F-Prot

smbpasswd命令的常用方法
smbpasswd -a 增加用户(要增加的用户必须以是系统用户)
smbpasswd -d 冻结用户,就是这个用户不能在登录了
smbpasswd -e 恢复用户,解冻用户,让冻结的用户可以在使用
smbpasswd -n 把用户的密码设置成空.要在global中写入 null passwords -true
smbpasswd -x 删除用户
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息