Заголовок
2012-03-24 13:49:53 (читать в оригинале)
Содержание
Формируем RSS канал на ASP.NET
2012-03-21 16:47:00 (читать в оригинале)

Однажды потребовалось на одном из сайтов сформировать RSS-канал, причем это дело было в командировке, где небыло возможности подключится к SQL серверу хостинга. Если бы была такая возможность, то это можно было бы сделать с помощью самого SQL сервера у которого есть неплохие фозможности форирования XML файлов. Но поскольку такой возможности небыло, то вот и родился такой небольшой aspx файл написаный на VB.NET в виде ASP.NET приложения. При обращении к сайту файл обращается к базе данных MS SQL где размещаются новости сайта и на основе этих данных на лету формирут необходимый XML файл в формате RSS-ленты.
<%@ Page Language="VB" AutoEventWireup="false" Debug="False" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Web.UI.Page" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim RSS As New StringBuilder
Dim DBConn as SqlConnection
Dim DBCommand As SqlDataAdapter
Dim DSPageData as New DataSet
DBConn = New SqlConnection(ConfigurationSettings.AppSettings("CnnSQL"))
DBCommand = New SqlDataAdapter _
("Select TOP 10 id, data, text, foto From table ORDER BY data DESC", DBConn)
DBCommand.Fill(DSPageData, "Table")
RSS.AppendLine("<?xml version=""1.0"" encoding=""windows-1251"" ?>")
RSS.AppendLine("<rss version=""2.0"" xmlns:atom=""http://www.w3.org/2005/Atom"" >")
RSS.AppendLine("<channel>")
RSS.AppendLine("<title>Новости сайта </title>")
RSS.AppendLine("<link></link>")
RSS.AppendLine("<description>Новости сайта</description>")
If DSPageData.Tables("Table").Rows.Count > 0 Then
For i As Integer = 0 To DSPageData.Tables("Table").Rows.Count - 1
RSS.AppendLine("<item>")
RSS.AppendLine("<title>" & _
DSPageData.Tables("Table").Rows(i).Item("id").ToString & "</title>")
RSS.AppendLine("<link>http://site.ru/default.aspx?id=" & _
DSPageData.Tables("Table").Rows(i).Item("id").ToString & "</link>")
RSS.AppendLine("<description><p><img src=""http://site.ru/files/" & DSPageData.Tables("Table").Rows(i).Item("foto").ToString & """/></p> " & _
DSPageData.Tables("Table").Rows(i).Item("text").ToString & _
"</description>")
RSS.AppendLine("<pubDate>" & _
Format(CDate(DSPageData.Tables("Table").Rows(i).Item("data").ToString), "r") & "</pubDate>")
RSS.AppendLine("</item>")
Next
End If
RSS.AppendLine("</channel>")
RSS.AppendLine("</rss>")
Response.Write(RSS.ToString)
End Sub
</script>
Конфигурация HTTP сервера на Cisco.
2012-02-22 16:38:00 (читать в оригинале)
Конфигурация HTTP сервера на Cisco.
Применяется для управления коммутаторами через веб-морду а также с помощью Security Device Manager
Создаем access-list, в котором разрешаем доступ с IP адресов 172.16.3.10 и 172.16.3.11
Router(config)# access-list 1 permit 172.16.3.10
Router(config)# access-list 1 permit 172.16.3.11
Создаем пользователей richard и natalie и назначаем им пароли bigXdogYlover и BIGxDOGyLOVER соответственно
Router(config)# username richard privilege 15 secret bigXdogYlover
Router(config)# username natalie privilege 15 secret BIGxDOGyLOVER
Разрешаем работу HTTP сервера
Router(config)# ip http server
Указываем на аутентификацию локально
Router(config)# ip http authentication local
Разрешаем коннектиться с IP адресов 172.16.3.10 и 172.16.3.11
Router(config)# ip http access-class 1
HTTPS Server Configuration
Назначаем роутеру имя bullmastiff
Router(config)# hostname Bullmastiff
Назначаем роутеру доменное имя quizware.com
Bullmastiff(config)# ip domain-name quizware.com
Создаем access-list , в котором разрешаем доступ с IP адресов 172.16.3.10 и 172.16.3.11
Bullmastiff(config)# access-list 1 permit 172.16.3.10
Bullmastiff(config)# access-list 1 permit 172.16.3.11
Создаем пользователей richard и natalie и назначаем им максимальный уровень привилегий и пароли
Bullmastiff(config)# username richard privilege 15 secret bigXdogYlover
Bullmastiff(config)# username natalie privilege 15 secret BIGxDOGyLOVER
Запрещаем http server
Bullmastiff(config)# no ip http server
Разрешаем HTTPS server
Bullmastiff(config)# ip http secure-server
Указываем на аутентификацию локально
Bullmastiff(config)# ip http authentication local
Разрешаем коннектиться с IP адресов 172.16.3.10 и 172.16.3.11
Bullmastiff(config)# ip http access-class 1
Создание VLAN на коммутаторе Cisco 2950
2012-02-22 16:30:00 (читать в оригинале)
S1#config t
S1(config)#vlan ?
WORD ISL VLAN IDs 1-4094
internal internal VLAN
S1(config)#vlan 2 (Назначаем Vlan 2)
S1(config-vlan)#name Sales (Именуем Vlan 2. Даем название Sales.)
S1(config-vlan)#vlan 3 (Назначаем Vlan)
S1(config-vlan)#name Marketing (Именуем Vlan 2. Даем название Marketing.)
S1(config-vlan)#vlan 4 (Назначаем Vlan)
S1(config-vlan)#name Accounting (Именуем Vlan 2. Даем название Accounting.)
S1(config-vlan)#^Z
S1#
Смотрим, что получилось.
S1#sh vlan
VLAN Name Status Ports
---- -----------------------------------------------------------
1 default active Fa0/3, Fa0/4, Fa0/5, Fa0/6 Fa0/7, Fa0/8, Gi0/1
2 Sales active
3 Marketing active
4 Accounting active
...
Т.е., все порты свича по-умолчанию принадлежат VLAN 1.
S1#config t
S1(config)#int fa0/3
S1(config-if)#switchport ?
access Set access mode characteristics of the interface
backup Set backup for the interface
block Disable forwarding of unknown uni/multi cast addresses
host Set port host
mode Set trunking mode of the interface
nonegotiate Device will not engage in negotiation protocol on this interface
port-security Security related command
priority Set appliance 802.1p priority
protected Configure an interface to be a protected port
trunk Set trunking characteristics of the interface
voice Voice appliance attributes?
Назначаем интерфейс членом VLAN.
S1(config-if)#switchport mode ?
access Set trunking mode to ACCESS unconditionally
dynamic Set trunking mode to dynamically negotiate access or trunk mode
trunk Set trunking mode to TRUNK unconditionally
S1(config-if)#switchport mode access (Назначаем режим Access)
S1(config-if)#switchport access vlan 3 (Назначаем интерфейс членом VLAN 3)
Пример настройки Cisco ASA 5510 с DMZ
2012-02-22 16:25:00 (читать в оригинале)
ASA Version 8.2(1)
!
! Имя Cisco
hostname asa
!Домен . Нужно для SSH
domain-name strui.ru
!Пароль для enable.
enable password 4аееoLOxxxxxxjMx encrypted
passwd k0a6sN9ExxxxxxxxzV encrypted
names
! Описание интерфейса, смотрящего в Internet.
interface Ethernet0/0
description Internet
nameif outside
security-level 0
ip address 213.xxx.xxx.194 255.255.255.240
! Описание интерфейса, смотрящего в локальную сеть.
interface Ethernet0/1
description Local
nameif inside
security-level 100
ip address 10.10.10.20 255.255.255.0
!
! Описание интерфейса, смотрящего в сеть серверов (DMZ)
interface Ethernet0/2
description DMZ
nameif dmz
security-level 50
ip address 62.xxx.xxx.177 255.255.255.240
!Этот интерфейс выключен
interface Ethernet0/3
shutdown
no nameif
no security-level
no ip address
!Этот интерфейс выключен( не привязан к локальной сети). Использовался при
!первоначальной настройке Cisco
interface Management0/0
nameif management
security-level 100
ip address 192.168.1.1 255.255.255.0
management-only
!
ftp mode passive
! Выставляем зону и время. Необходимо для логов.
clock timezone MSK/MDD 3
clock summer-time MSK/MDD recurring last Sun Mar 2:00 last Sun Oct 3:00
dns server-group DefaultDNS
! Лист доступа в демилиторизованную зону к серверам. Входящий трафик.
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.180 eq www
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.180 eq ftp
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.180 eq ftp-data
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.181 eq www
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.181 eq ftp
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.181 eq ftp-data
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.178 eq domain
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.179 eq smtp
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.179 eq pop3
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.179 eq imap4
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.184 eq 8081
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.184 eq www
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.185 eq www
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.186 eq ftp
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.186 eq ftp-data
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.186 eq www
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.189 eq www
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.179 eq domain
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.179 eq https
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.182 eq smtp
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.182 eq pop3
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.182 eq imap4
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.184 eq rtsp
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.187 eq www
access-list acl_in_dmz extended permit tcp any host 62.xxx.xxx.188 eq www
! Лист доступа для серверов из демилиторизованной зоны. Исходящий трафик.
access-list acl_out_dmz extended permit tcp any any
access-list acl_out_dmz extended permit udp any any
access-list acl_out_dmz extended permit icmp any any
access-list acl_out_dmz extended deny tcp host 62.xxx.19.76 host 213.xxx.36.194 eq 135
access-list acl_out_dmz extended deny tcp host 87.xxx.95.11 host 213.xxx.36.194 eq ftp
!Лист доступа для пользователей локальной сети.
! Разрешено все для исходящего трафика.
access-list acl_out_inside extended permit tcp 10.10.10.0 255.255.255.0 any
access-list acl_out_inside extended permit tcp 10.10.20.0 255.255.255.0 any
access-list acl_out_inside extended permit tcp 10.10.40.0 255.255.255.0 any
access-list acl_out_inside extended permit tcp 10.10.50.0 255.255.255.0 any
access-list acl_out_inside extended permit tcp 10.10.110.0 255.255.255.0 any
access-list acl_out_inside extended permit icmp 10.10.10.0 255.255.255.0 any
access-list acl_out_inside extended permit icmp 10.10.110.0 255.255.255.0 any
access-list acl_out_inside extended permit icmp 10.10.20.0 255.255.255.0 any
access-list acl_out_inside extended permit icmp 10.10.50.0 255.255.255.0 any
access-list acl_out_inside extended permit udp 10.10.10.0 255.255.255.0 any
access-list acl_out_inside extended permit udp 10.10.20.0 255.255.255.0 any
access-list acl_out_inside extended permit udp 10.10.110.0 255.255.255.0 any
access-list acl_out_inside extended permit udp 10.10.50.0 255.255.255.0 any
access-list acl_out_inside extended permit udp 10.10.40.0 255.255.255.0 any
pager lines 24
! Настройка логирования
logging enable
logging timestamp
logging trap notifications
logging asdm informational
logging host inside 10.10.10.4
mtu outside 1500
mtu inside 1500
mtu dmz 1500
mtu management 1500
no failover
icmp unreachable rate-limit 1 burst-size 1
no asdm history enable
arp timeout 14400
! Настройка global
global (outside) 1 interface
! Настройка NAT для локальной сети
nat (inside) 1 0.0.0.0 0.0.0.0
! Настройка static для серверов
nat (dmz) 0 0.0.0.0 0.0.0.0
static (dmz,outside) 62.xxx.xxx.180 62.xxx.xxx.180 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.181 62.xxx.xxx.181 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.178 62.xxx.xxx.178 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.179 62.xxx.xxx.179 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.184 62.xxx.xxx.184 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.185 62.xxx.xxx.185 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.186 62.xxx.xxx.186 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.189 62.xxx.xxx.189 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.187 62.xxx.xxx.187 netmask 255.255.255.255
static (dmz,outside) 62.xxx.xxx.188 62.xxx.xxx.188 netmask 255.255.255.255
! Привязываем access-list через access-group к интерфейсам.
access-group acl_in_dmz in interface outside
access-group acl_out_inside in interface inside
access-group acl_out_dmz in interface dmz
! Прописываем маршрутизацию для интерфейсов.
route outside 0.0.0.0 0.0.0.0 213.xxx.xxx.193 1
route inside 10.10.20.0 255.255.255.0 10.10.10.10 1
route inside 10.10.40.0 255.255.255.0 10.10.10.10 1
route inside 10.10.50.0 255.255.255.0 10.10.10.10 1
route inside 10.10.110.0 255.255.255.0 10.10.10.10 1
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00
timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00
timeout sip-provisional-media 0:02:00 uauth 0:05:00 absolute
timeout tcp-proxy-reassembly 0:01:00
dynamic-access-policy-record DfltAccessPolicy
! Разрешаем работу через WEB морду из локальной сети.
http server enable
http 10.10.10.0 255.255.255.0 inside
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart
crypto ipsec security-association lifetime seconds 28800
crypto ipsec security-association lifetime kilobytes 4608000
! Разрешаем работу telnet и ssh по локальной сети.
telnet 10.10.10.0 255.255.255.0 inside
telnet timeout 5
ssh 10.10.10.0 255.255.255.0 inside
ssh 10.10.10.71 255.255.255.255 inside
ssh timeout 30
console timeout 0
dhcpd address 192.168.1.2-192.168.1.254 management
!
threat-detection basic-threat
threat-detection statistics access-list
no threat-detection statistics tcp-intercept
! Сервер времени и пользователь для WEB морды.
ntp server 10.10.10.3 source inside
webvpn
username admin password trAp5eVxxxxxxnv encrypted privilege 15
!
class-map inspection_default
match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
parameters
message-length maximum 512
policy-map global_policy
class inspection_default
inspect dns preset_dns_map
inspect ftp
inspect h323 h225
inspect h323 ras
inspect rsh
inspect rtsp
inspect esmtp
inspect sqlnet
inspect skinny
inspect sunrpc
inspect xdmcp
inspect sip
inspect netbios
inspect tftp
!
service-policy global_policy global
prompt hostname context
Cryptochecksum:58da28923df5a5f8d5192125f9b1796f
: end
Страницы:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18