Windows .NET Server Technical Readiness Internet

Download Report

Transcript Windows .NET Server Technical Readiness Internet

Internet Information Server 6.0
IIS 6.0 Enhancements

Fundamental changes, aimed at:




Reliability & Availability
Performance
Manageability
Security
IIS 6.0
Reliability & Availability
Review of IIS 5 Architecture
DLLHost.EXE
INETINFO.EXE
INETINFO.EXE
ISAPI Filters and
Extensions
Metabase
user
kernel
DLLHost.EXE
ISAPI
Extensions
DLLHost.EXE
ISAPI
Extensions
ISAPI
Extensions
WinSock 2.0
TCP/IP
IIS 6 Architecture
Web
Admin
Service
Worker Process
W3 Core
kernel
user
web app
HTTP.SYS
HTTP.SYS

What is it?



Kernel-mode HTTP stack/listener
Always running
What does it do?




HTTP Listener and Parser
Process routing based on URL namespace
Request queues: kernel-mode queuing
Response cache for static requests
Web Admin Service - WAS

What is it?


Configuration, Application and Process Manager
What does it do?


Configures HTTP.SYS for listening and routing
Periodic Recycling


Health Monitoring



Time, Hit, Memory, Schedule-based, and ondemand
Pinging, Crash detection
Rapid fail protection
Better debugging support

Orphan Web Processing Core Host Processes
Web Processing Core
W3WP.exe

What is it?


Main web processing core responsible for
handling web requests
Self–contained web server


Contains all web request processing
functionality
Loads ISAPI’s – filters and extensions


ASP, ASP.NET, FrontPage® Server Extensions
Delivers complete isolation from system
components and other web apps
IIS 6.0 Availability:
Applications
Isolating Applications From Each Other
 Applications grouped into Application
Pools





Applications defined by URL namespace
One or many applications per Application Pool
Configure Processing features by Application Pool
One or many Worker Processes per Application Pool
Service Level Support


CPU accounting
Bandwidth throttling
IIS 6 Architecture:
Managing worker processes
Web
Admin
Service
Worker
Process
W3 Core
Core
W3
Web app
app
Web
Worker
Worker
Recycl
Process
Process
e
W3
W3time!
Core
Core
Web
Web app
app
user
kernel
HTTP.SYS
Worker
Process
W3 Core
Web app
Working with Application Pools
Recycling


Recycle
periodically to
ensure reliability
Recycle based on:





Uptime
# of requests
Schedule
Virtual memory
consumption
On-Demand
Application Pool Performance

Goal = Support 2000
pools concurrently.


IIS5 Isolated OOP total
was 80.
Scaling Features of
Pools



Idle Timeout
CPU Accounting
Demand Start
Web Gardens

Multiple Processes serving an
application pool

Reliability and fault-tolerance



Allows another already initialized worker process to
take over the current load
Can affinitize worker processes to a set of
processors
Some throughput gains for applications
that rely on process global resources
App Pool Health & Debugging
Features

Worker process
health
monitoring/gating





Process pinging
Startup/Shutdown
limits
Kernel Mode Request
Queuing
Rapid Fail Protection
“Orphan” worker
processes in failure
Configurable Worker Process ID

Worker process can
be started as:




Network Service
(default)
Local System
Local Service
Configured ID
DEMO: IIS Recycle
IIS 6.0 Performance
IIS 6.0 Performance
Designed for high throughput
 Kernel mode cache for static,
unauthenticated content


User-mode worker processes




No transition to user mode for cache
hits
No user mode to user mode process
hop
Talk directly to HTTP.SYS to get
requests
Ability to affinitize worker processes to
CPUs
Support for 64-Bit
IIS 6.0 Scalability
Scale up, out and in
 SSL up to 900% faster
 ISAPI up to 800% faster
 CGI up to 100% faster
 Support 20,000 sites and more per system



Improved Startup/Shutdown times (<2min)
Improved Scalability of Application Isolation
(2000 Isolated Application Pools)
Improved Processor Scalability

3x on a 4-processor box, 5x on an 8-way
IIS 6.0 Management
Installation
Management Enhancements




XML Metabase
WMI Provider
Command-Line Interface
New Web-based Administration Console
IIS Commands

Create web and FTP Sites
c:\>iisweb /create c:\webroot “My Site” /b
169.254.36.174



Create web and FTP V-Dirs
Backup/Restore
Export/Import Configuration



c:\>iiscnfg /import /f MySiteConfig.xml
/sp /lm/w3svc/1
/dp /lm/w3svc/4
IIS 6.0 Security
IIS 5.0 Security Issues
Code Red, Nimda, etc., etc.
 Weaknesses





Windows 2000 Installed As An Application Server –
Huge attack surface
Soft Defaults
High Privilege Accounts
No automated way to install patches


Result: Fixes out for months but not uniformly applied
Many companies survived Code Red & Nimda
IIS Lockdown Wizard & URLSCAN for IIS 4/5
 Improved Patch Management

IIS 6.0 Security
Secure Out of the Box

Change in approach:





Clean up code, improved tools for
defect detection
Secure defaults, minimize attack
surface (static files only by default)
Customer ‘enables’ server features
after setup
An infrastructure that by default
installs security hot fixes (customer
opts out, not in)
Educate the Customer
IIS 6.0 Security
Reduced Attack Surface

IIS is not installed by default


Server Lockdown: Serve HTM files only






As well as 20+ other services
Only Web service gets installed
IsapiRestrictionList
CGIRestrictionList
Template-based feature activation
Web service disabled on upgrade for
benefit of non-IIS users
Prevent IIS6 install with group policy
Managing Web Service Extensions
Support or no support ASP
Web Server Security
Enhancements



URLscan implemented by default
Clean code
Architectural changes





Process isolation
Configurable identity
Application pool management
General OS hardening
New tools

AutoUpdate, SUS, Qchain, MBSA
Questions ?