Showing posts with label Firewall. Show all posts
Showing posts with label Firewall. Show all posts

Sunday, November 02, 2008

Event ID 7000 (Service Control Manager Timeout)

To work around this problem, increase the default timeout value for the service control manager in the registry.


To increase the timeout value in the registry, follow these steps:


If the ServicesPipeTimeout value is not available, add the new DWORD value, and then set its value data to 60000 in the Control key. To do so, follow these steps: a. Locate and then click the following registry key:


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet

b. Click the Control subkey.

c. On the Edit menu, point to New, and then click DWORD Value.

d. Type ServicesPipeTimeout, and then press ENTER.

e. Right-click the ServicesPipeTimeout DWORD value, and then click Modify.

f. Click Decimal.

g. Type a value of 120000, and then click OK.

The value is 120000 milliseconds and is equivalent to 120 seconds or to one minute.


Note This change does not take effect until the computer is restarted.

Tuesday, May 27, 2008

How to convert an IP address from the firewall log into a dotted IP address.

แบบที่ 1

SELECT
CAST(SourceIP / 256 / 256 / 256 % 256 AS VARCHAR) + '.' +
CAST(SourceIP / 256 / 256 % 256 AS VARCHAR) + '.' +
CAST(SourceIP / 256 % 256 AS VARCHAR) + '.' +
CAST(SourceIP % 256 AS VARCHAR) AS [Nice Source Ip], FirewallLog.*
From FirewallLog

แบบที่ 2 สร้าง Function เอาไว้ให้เรียกใช้งานได้ง่าย

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

CREATE FUNCTION [dbo].[ConvertLongIP]
(
@LongIP bigint
)

RETURNS varchar(15)
AS
BEGIN

DECLARE @DotIP varchar(15),
@bin varbinary(4)
select @bin = cast(@LongIP as varbinary(4))
select @DotIP = cast(convert(int,substring(@bin,1,1)) as varchar(3)) + '.'
+ cast(convert(int,substring(@bin,2,1)) as varchar(3)) + '.'
+ cast(convert(int,substring(@bin,3,1)) as varchar(3)) + '.'
+ cast(convert(int,substring(@bin,4,1)) as varchar(3))
RETURN @DotIP
END

การลบข้อมูลใน SQL 2005 ที่เก่ากว่า 90 วัน

แบบที่ 1
DELETE FROM WebProxyLog where LogTime < (getdate() - 90) DELETE FROM FirewallLog where LogTime < (getdate() - 90) แบบที่ 2 ดีกว่า ลบได้แน่นอนกว่า delete from firewalllog where datediff(dd,logtime,getdate()) > 90
delete from webproxylog where datediff(dd,logtime,getdate()) > 90
select logtime from firewalllog where datediff(dd,logtime,getdate()) > 1

ได้ผล แต่ต้องรอ 2 วัน ดีกว่าการใช้ แบบที่ 1

ถ้าใช้ SQL Express Edition ที่ไม่มี Scheduler จะต้องใช้ Schedules Tasks ของ Windows แทนเช่น
sqlcmd -S .\ISALOG -d ISALOG d:\ISALOG\cleandatabase.sql
แล้วค่อยใส่คำสั่ง delete from ... ลงไปในไฟล์ cleandatabase.sql

-S = ชื่อ server , . หมายถึง localhost , \ISALOG คือชื่อ Instant
-d = ชื่อ database
-i = ชื่อ sql script

http://msdn.microsoft.com/en-us/library/aa258269(SQL.80).aspx

Monday, May 26, 2008

วิธี Block MSN หรือ Windows Live Messenger

Concept ใช้ได้กับ Firewall เกือบทุกตัว
ให้ Block MSN protocal ที่ใช้ port 1863 เพื่อเป็นการบังคับให้ MSN เปลี่ยนไปใช้ port 80 HTTP จากนั้นค่อยทำการ block signature ของ MSN นั่นก็คือการ Block Request URL ที่มี string gateway/gateway.dll เป็นส่วนประกอบ

การ Block Signature โดยใช้ ISA Firewall
1. ไปที่ rule ที่มี http protocal รวมถึง rule ที่ยอมให้ออกหมดทุก protocal (ทุก protocal หมายถึง ทุกอันที่ define เอาไว้ใน protocal definition ดังนั้นจึงรวม http protocal เข้าไปด้วย) แล้ว click ขวาเลือก Configure HTTP
2. ไปที่แถบ Signature กดปุ่ม Add ใส่ข้อมูลตามนี้
Name = Block MSN
Search in = Request URL
Signature = gateway/gateway.dll


Note
สรุป port และ URL ของบริการที่ MSN ใช้
http://support.microsoft.com/kb/927847

Tuesday, May 20, 2008

ISA 2004/2006 logging using local SQL 2005

การ Config ในส่วนของ SQL Server

- Install Microsoft SQL 2005 Express Edition
- ปัจจุบันออก SP3 แล้ว จะรวมมาใน package เลย
- ในหน้า Registration Information ให้เอา checkbox Hide advace configuration option เพื่อให้สามารถตั้งชื่อ Instant ได้ให้ชื่อว่า ISALOG
- Service Account ให้เลือกเป็น Local System ตรงนี้สำคัญมากว่าจะต้องทำให้ User ที่ใช้ run service ISA Firewall กับ SQL2005 เป็น User เดียวกันไม่งั้นจะ start SQL Log ไม่ได้ ในเวป isaserver.org เป็นกรณีที่ SQL Server เป็น Server คนละตัวกับ ISA Firewall แต่ในกรณีนี้เราต้องการให้อยู่บน server เดียวกัน ดังการการ setting จึงต่างกันนิดหน่อย
- เลือก Windows Authentication Mode
- Add User to the SQL Server Administrator Role จะเป็นการเพื่ม user ที่เป็นคน install sql 2005 ให้อยู่ใน administrator role ของ SQL 2005 จะเลือกหรือไม่ก็ได้ (เลือกเอาไว้ดีกว่า)
- หลังจาก Install เสร็จแล้ว ให้ไปดูที่ Service ของ Microsoft Firewall และ SQL Server (ISALOG) run ด้วย user เดียวกันคือ Loal System ถ้าไม่ตรงก็เปลี่ยนให้ตรงกัน
Note ถ้ามีปัญหา start SQL ไม่ได้แล้วถ้าไปดูใน eventlog จะเห็นว่า error มันเกิดจากการที่ user ที่ใช้ run service ไม่ผ่าน มันไม่ได้เป็น user เดียวกับที่ไปกำหนดให้ใช้ในตอน config log ของ ISA ด้วย สังเกตุได้จากในขั้นตอนนั้นใส่ user อะไรไปก็จะ Test ผ่านหมด
- Install Microsoft SQL Server Management Studio Express
- เปิด SQL Studio Express ขึ้นมาเพื่อสร้าง Database ISALOG เอาไว้ที่ Drive D: (ถ้าไม่กำหนดเอง มันสร้างไว้ที่ Drive C:) เพราะว่าต้องเก็บ log เอาไว้ 90 วันตามพรบ ใช้เนื้อที่มาก
- ที่ Object Explorer แตกออกมาให้เห็น Database แล้ว Click ขวาเลือก New Database ตั้งชื่อ Database = ISALOG
Owner = NT AUTHORITY\SYSTEM
Path = D:\ISALOG
- สร้าง Table FirewallLog และ WebProxyLog ขึ้นมาให้อยู่ใน Database ISALOG โดยใช้ script FWSRV.SQL และ W3PROXY.SQL ที่มีมาให้อยู่แล้วใน ISA2006 folder
- ไปที่ Menu File/Open แล้วเปิด fwsrv.sql และ w3proxy.sql พิมพ์เพิ่มเข้าไปข้างบนว่า
USE ISALOG
เพื่อเป็นการบอกให้สร้าง table เอาไว้ใน Database ISALOG แล้วสั่ง Execute
- ย้อนกลับไปดูใน Datbase ISALOG จะเห็นว่ามี table เพิ่มขึ้นมา 2 table คือ dbo.firewalllog และ dbo.webproxylog
- เปิด SQL Server Surface Area Configuration ขึ้นมาแล้วไปที่ Remote Connection เปลี่ยนจาก Local connection only เป็น Local and remote connection -> Using TCP/IP only
- เปิด SQL Server Configuration Manager ขึ้นมา ไปที่ Protocal for ISALOG -> ICP/IP = Enable
ไปแถบ IP Address แล้ว Enable ทุก IP Address , ลบ Dynamic Port ออกให้ว่างๆ, TCP Port ใส่ 1433 ทุกอัน , Enable = Yes ทุกอัน
- OK แล้ว Restart SQL Service
- ไม่จำเป็นต้อง assign permission อะไรใน Database ISALOG เพราะ system สามารถเขียนข้อมูลลงไปได้อยู่แล้ว

การ Config ใส่ส่วนของ ISA Server

- เปิด Edit System Policy(อยู่ใน Task Pane ของ Firewall Policy)/ Logging/ Remote Logging /
แถบ General -> Enable this configuration group
- ไปที่ Monitoring /Logging /Configure Firewall Loggin เลือก SQL Database / Option
Server = ชื่อของ ISA Firewall
Port = 1433
Database = ISALOG
Table = FirewallLog (หรือ WebProxyLog)
Uncheck Force data encryption เพราะเราใช้ Local Database ไม่ใด้ใช้ Remote Database
เลือก Use Windows authentication
User = อะไรก็ได้ ไม่มีผลเพราะใช้งานโดย Local System
Password = อะไรก็ได้ ไม่มีผลเพราะใช้งานโดย Local System
กด Test จะผ่าน

Testing
- เปิด SQL Studio Express ขึ้นไปแล้วไปที่ New Query พิมพ์ว่า
select * from dbo.firewalllog แล้วกดปุ่ม Execute จะเห็น log ที่เก็บไว้
- ทดสอบ Webproxylog พิมพ์ว่า
select * from dbo.webproxylog
- อย่าลืมให้เลือก Database ISALOG ตรง Dropdown ด้านซ้ายบนด้วย ไม่งั้นจะ error เพราะว่ากลายเป็นการ query จาก database อื่น

Note

- ISA 2004 ใช้ ODBC แต่ ISA 2006 ใช้ Direct Access to SQL
- อย่าทำ Compress Disk กับ drive ที่เก็บ data file ของ SQL เพราะจะทำให้ performance ตกลง 500%
- เว็ปที่มีประโยชน์เกี่ยวกับ ISA อีกเวปนึง
http://www.elmajdal.net/ISAServer/

Thursday, May 15, 2008

GFI Webmonitor V.4

White List - จะ bypass กฎทุกอย่างเช่น block hi5 แต่ถ้าใส่ user ที่ไม่ต้องการ block เอาไว้ใน white list แล้วจะเข้าได้ หรืออาจจะสามารถใส่ ip หรือ hostname ของ site ที่ต้องการเข้าก็ได้เช่น *.google.com, *.yahoo.com จะทำให้ site พวกนี้ผ่านกฎทุกกฎ ดังนั้นให้ใช้อย่างระมัดระวัง

Black List - ถ้ามีชื่ออยู่ใน black list จะห้ามทุกอย่าง

Web Filtering Policies - สามารถ Edit ได้ว่าต้องการให้ Filter content ไหนออกไปได้บ้าง อาจจะนำมาใช้กับ MSN ก็ได้(ไม่ได้ผลลองแล้ว) โดยทั่วไปจะใช้ไม่ให้เข้าเวปพวกที่มี Adult Content

Download Control Policies - สามารถเอาไว้ block ไม่ให้ download ไฟล์บางประเภทได้โดยดูจาก Content-type อาจจะเอามาประยุกต์ใช้ไม่ให้ download ไฟล์บางนามสกุลได้

Virus Scanning Policies - สามารถไปกำหนดให้ Scan Virus กับไฟล์ประเภทไหนบ้าง แล้วขึ้นจะให้ขึ้น Download Status Windows หรือเปล่า ถ้าเจอ Virus จะให้ทำยังไงเช่น delete หรือ warn

Whitelist = *.eset.com สำหรับ update nod32
Blacklist = *.hi5.com

Saturday, April 26, 2008

ISA2006 Backup and Restore

Backup ทั้งหมด

Export
1. เปิด ISA Server Management ขึ้นมา แล้ว right click ที่ ชื่อ ISA Server เลือก Export (Backup) ทำตาม Wizard
2. ถ้าต้องการ export user passwd ที่ได้มีการ set ไว้ใน ISA จะต้องติ๊กที่ Export confidential infomation ด้วย เพื่อให้เราใส่ passwd ในการ encrypt ข้อมูลเหล่านี้เพื่อความปลอดภัย
3. ถ้ามีการ set user เพื่อ delegate จะต้องเลือก Export user permission settings ด้วย

Import
1. การ import ก็ทำคล้ายกัน แต่จะมี option ให้เลือกว่าจะ Import หรือ Overwrite(restore)
- import ข้อมูลที่ import เข้ามาจะถูกเพื่มเข้าไปเข้าไปใน configuation (ข้อมูลปัจจุบันไม่หายทั้งหมด)
- overwrite(restore) จะเข้าไปทับข้อมูลปัจจุบันทั้งหมด(ข้อมูลปัจจุบันหายหมด) เอาไว้ใช้ในกรณีที่ ISA พัง

Note
ข้อมูลที่ Export ออกมาไม่สามารถเอาไปใช้ข้าม version กันได้เช่นระหว่าง Standard กับ Enterprise ใช้กันไม่ได้

Backup แค่บางส่วน
ให้เลือก object ที่ต้องการ backup แล้ว right click เลือก import/export หรืออาจจะเลือกจาก Task Pane ก็ได้

Saturday, January 26, 2008

Hostname Logger v 1.2 for ISA Server

ไม่ต้องเสียเงินซื้อ loghostname แล้วครับ มีให้ใช้ฟรีๆ ที่นี่เลย
http://www.elmajdal.net/ISAServer/HostLogger.aspx
http://www.elmajdal.net/ISAServer/

client ที่เป็น Secure Nat จะใช้ block Domain Name กับ URL Set ไม่ได้ผล เพราะ Secure Nat มันจะไม่ resolve IP ไปเป็น domain name ให้

Tuesday, November 20, 2007

Publishing Print Sever Behind ISA Firewall

ขั้นแรกต้อง Forward Port 9100 ที่ตัว Router ก่อน
สร้าง Protocal Definition ขึ้นมาโดยมีค่าดังนี้
Port = 9100
Protocal Type = TCP
Direction = Inbound
หลังจากนั้นก็สร้าง Access Rule ธรรมดา แล้วก็ add tcp/ip printer ธรรมดา

Wednesday, June 20, 2007

ISA: Publish Website with DNS name and public IP

Concept

1. ไปเพิ่ม DNS record ของ DNS server ภายนอกใช้ชี้ไปที่ public ip ที่เรามีเช่นให้ชื่อว่า webmail.my.com = 203.155.33.142
2. add secondary public ip ใน external interface ของ ISA เช่น 203.155.33.142
3. ใน ISA สร้าง Web Server Publishing Rule ขึ้นมาโดยมีค่า setting ที่สำคัญๆตามนี้
From => External
To => คือ Internal IP ของ Server ที่ต้องการ Publish เช่น 192.168.0.203
=> เลือก Forward the original host header instead of the actual one. <- เพื่อให้มีการใช้ host header ในการแยกความแตกต่างของ website ที่ต้องการ publish หรือในกรณีนี้เราต้องการให้เข้า webmail ได้จากการใส่ url http://webmail.my.com/ ตามนี้เท่านั้น ถ้าไม่เลือก option นี้ host header จะกลายเป็น 192.168.0.203 แทน
=> เลือก Requests Appear to come from the ISA Server Computer <- ที่ web server จะเห็น request ว่ามาจาก ISA แทนที่จะเป็น ip ของ client ที่ request เข้ามาจริงๆ
Traffic => HTTP
Listener => สร้าง HTTP Listener ขึ้นมาทาง External Interface
Public Name => เลือก Requests for the following websites เพื่อให้ Listerner ตรวจสอบ host headers ว่าเรียกมายัง website ที่เรา publish เอาไว้จริง
=> ตรง Website and IP address ให้เพิ่มชื่อ website ของเราที่ต้อง publish สามารถเพิ่มได้หลายชื่อตามต้องการ

Friday, April 27, 2007

ประโยชน์ของ IP Alias หรือ Secondary IP ของ Router

Example 1 Bypass Firewall (Basic) Example 2 Bypass Firewall + Separate Network (Complex)

Friday, December 15, 2006

ISA Publish PcAnywhere Host


1. ที่ Router ทำ Port Forward ให้ไปที่ external interface ของ ISA
2. สร้าง New Protocal ขึ้นมาเช่นให้ชื่อว่า PcEveryWhere แล้วกำหนด port ให้กับ protocal ดังนี้


Saturday, August 05, 2006

การกำหนดค่า IP ให้กับ Interface ของ ISA Server



สรุปคือ

1. External Interface เป็น Interface เดียวที่มีการกำหนดค่า Default Gateway ให้
2. External Interface ห้ามใส่ DNS
3. Internal Interface เป็น Interface เดียวที่มีการกำหนดค่า DNS ซึ่งจะชี้ไปยัง DNS Server ที่อยู่ใน Network ภายใน แล้ว DNS Server นั้นค่อยทำ Forwarder ออกไปยัง DNS ข้างนอกอีกที
4. Internal Interface ห้ามใส่ Default Gateway
5. DMZ ห้ามใส่ทั้ง DNS และ Default Gateway

Note - การสร้าง Primary DNS Zone ให้สร้าง Reverse Lookup Zone ก่อนแล้วค่อยสร้าง Forward Lookup Zone ทีหลัง
- ตรงแถบ Interface ใน DNS Server Properties สามารถกำหนดให้ DNS Server ตอบสนองต่อการร้องของเฉพาะบาง Interface ได้
- ISA Server 2004 Enterprise Edition สามารถทำ Site-to-site VPN using IPSec ซึ่ง Standard Edition ทำไม่ได้
- Client ให้ใช้ Mode Web Proxy Client และ Firewall Client
Server ให้ใช้ Mode SecureNAT