⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 klips2-design.txt

📁 网上下到的一个很详细介绍VPN基础知识的资料
💻 TXT
📖 第 1 页 / 共 2 页
字号:
#  -*- mode: Outline; fill-column: 78; fill-prefix: "	" -*-##  klips2-design.txt#	Richard Guy Briggs <rgb@conscoop.ottawa.on.ca>##  RCSID $Id: klips2-design.txt,v 1.17 2001/06/12 15:40:32 rgb Exp $#* Outline Commands cheat sheet (C-c C-s to see this)        C-c C-t         Hide EVERYTHING in buffer        C-c C-a         Show EVERYTHING in buffer        C-c C-d         Hide THIS item and subitems (subtree)        C-c C-s         Show THIS item and subitems (subtree)        C-c C-c         Hide ONE item        C-c C-e         Show ONE item* IntroductionLinux FreeS/WAN IPSec -- KLIPS2 DESIGN======================================# This document outlines the proposed design for KLIPS2, the second# generation Linux FreeS/WAN IPSec kernel implementation.  It is# accompanied by the following:## klips2-design.dia		dia(1) diagram# klips2-design-legend.txt	diagram legend# klips2-design-api.txt		API descriptions# klips2-design-api-trips.txt	scenarios that force trips through the#				various APIs to verify all needed resources#				are available# This document is devided up into Introduction, Goals, Feature requests,# Packet path overview, NetFilter overview, IPSec path description, and# Other issues.## This document was originally written 2.5 weeks after OLS2000, inspired# from a meeting with Rusty and Marc Boucher in Montreal in November 1999# and two meetings at OLS2000.## Please comment to the linux-ipsec, netfilter-devel or netdev lists.## Current kernel version reference is 2.4.4 with iptables 1.2* Goals:	To get rid of the current IPSec virtual interfaces that associate with	a specific physical network interfaces and replace them with IPSec	virtual interfaces that specify a local gateway address as a source	address, a remote gateway address as a destination address and	specific tunnel policy or SAs.	To use existing packet matching engines rather than re-invent.	To support more of the required selectors, especially source and	destination ports, and possibly userid.  Security labels are not of	obvious value, but the selectors will be easy to add in the future if	they are implemented in the Linux kernel.	To get access to *all* packets incoming and outgoing to enforce policy	in both directions.	To better support opportunistic encryption.	To take advantage of the parallellism of SMP and H/W encryption.	To make encryption and authentication modular.The idea is to redesign KLIPS (kernel parts of FreeS/WAN) to avoid all the'stoopid routing tricks' (TM) to which we have had to resort since the projectstarted by disassociating any IPSec devices from physical devices and to add aproper SPDB to do proper incoming IPSec policy checks.  We are hoping to useexisting pattern-matching tools rather than invent our own.  NetFilter appearsto have all the pattern matching capabilities with the exception of securitylabels which Linux doesn't appear to have anyways, but may be limited in otherways.There is also a significant interest in enabling FreeS/WAN to communicate withrouting daemons and be able to do load sharing and failover:	http://www.quintillion.com/fdis/moat/ipsec+routing/* Feature requests:Code=Level/Status/PriorityLevel:	S = strategic	M = middle	T = tactical	U = unsetStatus:	U = unstarted	C = coded	T = tested	D = deletedPriority:	H = high	M = medium	L = low	U = unset	D = deprecatedCode	Feature		Implementation====	=======		==============S/U/U	changeable gw wild-side addresses on-the-fly			- road warriors with RSA keys and hooks from DHCP			  to move to a new set of SAs upon expiry of previous			  DHCP lease.  Notify peers.  Negociate new tunnels.			  Handle delayed or denied renewal see: conn up, down,			  wanted.M/U/U	address inertia for remote gw's with changeable wild-side addresses	so local gw reboots will initiate reconnect to remotes.			- this requires a disk cache.T/U/U	mini-database of road warriors that persists across reboots.			- this requires a disk cache.M/U/U	connection up, down, wanted			- S/U/U	routing below tunnel layer to support mobility and multi-homing			-M/U/U	tunnel identified by subnets served?			-M/U/U	why do equalizing schedulers not play well with tunnels?			-M/U/U	decouple SA retrieval from DADDR (don't care how it arrived)			- protocol redesignT/U/U	SPIs unique, independant of protocol and DADDR			- S/U/U	routing above tunnel layer			-S/U/U	granularity smaller than host			- SPORT, DPORT, UID, SecLevM/U/U	/dev/ipsecNNN devices that could be chown(1)ed and chmod(1)ed.M/U/U	process to process tunnelsT/U/U	netfilter,pf_key,ioctl,/dev/ipsecNNN ways to manipulate tunnel perms.S/U/U	KLIPS as a loadable module (isn't it already?)S/U/U	stats: {number,time_of_last} packets {out,good_in,error_in}S/U/U	integrate IPSec and firewall policy into Security Policy.	(What APIs and user-level tools?)S/U/U	full inbound policy checkingS/U/U	secure ciphers and hashesT/U/U	kernel implementation (should be faster)S/U/U	plays well with routing daemonsS/U/U	free of export restrictionsT/U/U	standard crypto api to add newer ciphers and hashesS/U/U	opportunisticT/U/U	SADB hash table will be locked for additions/deletionsT/U/U	use a refcount on each SA to increase locking granularity* Packet path overview:The basic path through the kernel as it concerns IPSec for the threetypes of packets is as follows:IN:	NIC	basic sanity checks	NF_IP_PRE_ROUTING hook	route-in	ip-options processing	defragmentation	NF_IP_LOCAL_IN hook	transport layer demux	applicationFORWARD:	NIC	basic sanity checks	NF_IP_PRE_ROUTING hook	routing-in	ip-options processing	ttl decrement and check	NF_IP_FORWARD hook	fragmentation	NF_IP_POST_ROUTING hook	fragmentation	output()	NICOUT:	application	transport layer mux	NF_IP_LOCAL_OUT hook	route-out	NF_IP_POST_ROUTING hook	fragmentation	output()	NIC

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -