Çarşamba, Kasım 21, 2007

Örnek Shell Betikleri

#!/bin/bash
#
# Betik verilen dosyadaki ifadeleri ters cevirir
# ve son boslukla ayrilmis son ifadeyi (;) ile
# ayirir.
#
# Betik Erol Kahraman tarafindan 21-11-2007 tarihinde
# olusturuldu


if [ $# = 0 ] ; then
echo "Dosyanin kullanimi asagidaki gibidir..."
echo ""
echo "sh rev.sh dosya_adi.csv"
exit 0
else
rm -f sonuc.csv
cat $1 | while read L
do
rev=""
len=`echo -n $L |wc -c`
while test $len -gt 0
do
rev=$rev`echo $L |cut -c $len`
len=`expr $len - 1`
done

rrev=`echo $rev|sed 's/\(\w*\)\W*\(\w*\)/\1;\2/'`
rrrev=""
len=`echo -n $rrev |wc -c`
while test $len -gt 0
do
rrrev=$rrrev`echo $rrev |cut -c $len`
len=`expr $len - 1`
done
echo $rrrev >> sonuc.csv
done
fi

Kaynaklar:
1. kaynak1

Dosyalar:
1. dosya1

Pazartesi, Ekim 29, 2007

Hastaneler

1. SSK Bakırköy Doğumevi Kadın ve Çocuk Hastalıkları
Adres : Bakırköy İstanbul Caddesi No:95 Bakırköy
Tel : 0 212 543 62 70
Randevu Tel : 0 212 543 41 10
Eposta :
Randevu Web :
http://www.bakirkoydogumevi.gov.tr
Web : http://www.kolayrandevu.com

2. Bakırköy Dr. Sadi Konuk Eğitim ve Araştırma Hastanesi
Tel : 0 212 414 71 71
Randevu Tel : 0 212 414 28 28
Web : http://www.beah.gov.tr/

3.
Avcılar Murat KÖLÜK Devlet Hastanesi
Hastane Tel : 0212 509 7979
Randevu Tel : 0212 414 2878
Çocuk Pol4 Tel : 0212 414 7362
Çocuk Pol1 Tel : 0212 414 7358

4. İstanbul Eğitim ve Araştırma Hastanesi (Osmaniye)
Web : http://www.istanbuleah.gov.tr/iletisim/

Perşembe, Ekim 25, 2007

HP-UX LAN Komutları

1. Ağ ayarlarını görüntülemek
# lanscan
# netstat -in
# netstat -rvn

2. Ağ ayarlarını değiştirmek
* Ağ ayarları aşağıdaki dosyalarda değiştirilebilir.
/etc/rc.conf.d/netconf
/etc/resolv.conf
/etc/hosts

3. Ağ servisini açıp kapatmak
# /etc/init.d/net stop/start

HP-UX Disk Komutları

1. Hangi VG'lerin olduğunu ve hangi disklerin bu VG'lerde yer aldığnı kontrol eder.
# vgscan -av

2. LVM yapısında yer alan VG'leri ve diskleri gösterir
# strings /etc/lvmtab

3. LVM ayarlarında tanımlanmasını yada daha önce alınmış olan harita (map) dosyasını girilmesini sağlar.
# vgimport /dev/VG_NAME /dev/dsk/DISK1 /dev/dsk/DISK2 ...
# vgimport -s -v -m HARITA.map VG_NAME

4. LVM ayarlarının sıfırlamak için yada (-p parametresi ile) harita (map) dosyasının oluşuturulması
# vgexport -s -p -v -m HARITA.map VG_NAME (disk haritasını oluşturur)
# vgexprot -v VG_NAME (VG tanımını /etc/lvmtab dosyasından kaldırır)

5. LVM ayarlarını yedeklemek (/etc/lvmtab/ dizininde VG'lerin yedekleri oluşturur)
# vgcfgbackup VG_NAME

Cuma, Ekim 19, 2007

PS1

PS1="[\u@\h:\W]#"

Kaynaklar:
1. kaynak

HP-UX te / (root) ve /stand Dizinlerini Genişletme

HP-UX işletim sisteminde disk yönetimi genelde LVM mimarisinde yapılmaktadır. Varsayılan değerler ile kurulmuş olan bir HP-UX;
/ lvol1
/stand lvol3
/swap lvol2
olarak kurulmaktadır.
Bu iki dizinin genişletilmesindeki sıkıntı, bu dizinleri oluşturan uzantı(extend) lerin sürekli/kesintisiz olmasından ileri gelmektedir. Bu sebepten dolayı diğer dizinlerde yapıldığı gibi (/tmp, /var vb) / ve /stand genişletilemiyor. Bu işlem için birden çok yöntem vardır. Bunlardan ilki ve HP nin de onyladığı yöntem Ignite UX yöntemidir.

Ignite UX Yöntemi
Bu işleme başlamadan önce Ingite UX yedekleme yazılımı ile sistemin imajı alınır. İmaj alındıktan sonra izlenecek yöntem şöyle;
1. Sistem kapatıp açılır.
# shutdown -ry now
2. Sistsem açılırken, açılma işlemi durdurulur
3. Burda sanki imajdan kurulum yapılacak gibi işlem yapılacağı için imajın tutulduğu sürücü seçilir
> SEArch
4. Arama işlemi tamamlandıktan sonra uygun cihaz seçilir (teyp sürücü için sequential media)
> BOoot PN
5. Kurulum başladıktan sonra işlem tekrar kesilerek (not-interactive mode kesilir), kullanıcının müdahalesine izin veren (user interactive mode) moda geçilir.
6. Gelen ekranda Install OS seçilir.
7. Gelen seçeneklerden Advanced Install olanı seçilir.
8. Gelen menü bazlı ekrandan

Kaynaklar;
1. Kaynak
2. Kaynak

HP-UX [x/m/c]stm Komutu

stm (Support Tool Manager) komutu sistem hakkında bilgi elde etme, değişik testler yapabilme olanağı sağlayan bir araçtır. stm komutu çalıştırıldında herhangi bir parametre verilmez ise (ve DISPLAY değeri set edilmediyse), mstm olarak çalışır.
xstm : X olarak çalışır
mstm : vt100 terminalde menü modta çalışır.
cstm : komut satırı olarak çalışır.

Örnek Kullanımlar:

1. DEV_NO ile tanımlanan cihazın bilgilerine erişmek için aşağıdaki komut dizisi kullanılabilir.
cstm > help
cstm > map
cstm > sel dev DEV_NO
cstm > info
cstm > il

Salı, Ekim 09, 2007

Linux NTPD Sunucusu

Sorgulamada Elde Edilen Değerlerin Anlamları:
remote : NTP servisi alınan sunucu
refid : Zaman sunucusunun zaman bilgisinin nereden aldığını gösterir. Bir başka suncu olabilir, .GPS. yada .PPS. gibi farklı kaynaklar olabilir.
st (stratum) : Zaman sunucunun kaynaya olan uzaklığını gösterir. Küçük değerler tercih edilir. 16 değeri ulaşılamaz anlamına gelir.
poll : Saat bilgisini alma sıklığı (sn). İlk başta küçüktür ancak zaman içerisinde senkronizasyon arttığı için ve trafik akışını optimize etmek için bu değer artar.
reach : Erişim bilgisini kontrol etmek için kullanılan 8 bitlik bir dizidir. Her başarılı erişim sonrasında dizinin 1 biti ötelenir. Bu alanın alabileceği değerler 0,1,3,7,17,37,77,177,377 dir.
delay : Zaman bilgisinin alma süresi. İsteğin istemciden çıkıp geri dönme süresi.
offset : Referans zaman bilgisi ile system saati arasındaki zaman sapmasını gösterir.
jitter (dispersion) : Sinyalin salınımıdır. Yada zaman içerisinde yayılmasıdır. Salınım ne kadar küçükse o kadar kesin zaman bilgisi elde edilir.

Sunucuların Durumlarını Tanımlayan İşaretler
- : Geçersiz zaman sunucusu
* : Geçerli zaman sunucusu
+ : Zaman sunucusu adayı
x : Başarısız zaman sunucusu


Faydalı Komutlar:

1. Sunucuların genel durumunu gösterir:
# ntpq -pn
remote refid st t when poll reach delay offset jitter
==================================================
SERVER1 .PPS. 1 u 3 64 1 0.386 88.062 0.004
SERVER2 .PPS. 1 u 2 64 1 0.399 6.407 0.004

yada
# ntpq -c pe
yada
# ntpdc -c peers

2. Sunucu kimliklerini (ID), durumlarını ve erişilebilirliklerini gösterir.
# ntpq -c as

ind assID status conf reach auth condition last_event cnt
===========================================================
1 8356 9614 yes yes none sys.peer reachable 1
2 8357 9414 yes yes none candidat reachable 1

3. rv komutu belirtilen sunucu(ların) değerlerini gösteriri. Eğer bir değer girilmediyse system değerlerini gösterir.
# ntpq -c "rv assID"
yada
# ntpdc -c "showpeer SUNUCU1"

# ntpq -c "rv assID"
assID=31660 status=9124 reach, conf, sel_falsetick, 2 events, event_reach,
srcadr=10.1.10.7, srcport=123, dstadr=10.1.1.62, dstport=123, leap=00,
stratum=1, precision=-20, rootdelay=0.000, rootdispersion=1.190,
refid=PPS, reach=377, unreach=0, hmode=3, pmode=4, hpoll=6, ppoll=6,
flash=00 ok, keyid=0, ttl=0, offset=63.538, delay=0.293,
dispersion=4.631, jitter=14.925,
reftime=cab5c0f9.06108c3f Tue, Oct 9 2007 11:57:29.023,
org=cab5c100.b0fa3769 Tue, Oct 9 2007 11:57:36.691,
rec=cab5c100.9eededae Tue, Oct 9 2007 11:57:36.620,
xmt=cab5c100.9ed1287c Tue, Oct 9 2007 11:57:36.620,
filtdelay= 0.42 0.40 0.46 0.41 0.29 0.39 0.31 0.37,
filtoffset= 70.71 82.87 64.77 51.34 63.54 75.72 87.48 47.35,
filtdisp= 0.00 0.98 1.94 2.91 3.89 4.86 5.81 6.77

Kaynaklar
1. NTP Support

Perşembe, Eylül 20, 2007

Juniper Komutlar

Router> monitor traffic interface ge-1/3/0.0 no-resolve matching "host 193.140.86.3"
Router> monitor traffic interface ge-1/3/0.0 no-resolve matching "not port 2244"

Perşembe, Eylül 06, 2007

Sıkıştırma ve Dosya Bölme

RAR Komutunu Kullanarak

1. Dosya yada dizinleri 20Mb boyutunda sıkıştırır.

$ rar a -v20M ARSIV.rar DOSYA_ADI
$ rar a -v20M ARSIV.rar DIZIN_ADI


2. Kendi kendini açan arşiv oluşturmak

$ rar a -sfx DOSYA_ADI.rar DOSYA_ADI yada DIZIN_ADI

Cuma, Ağustos 10, 2007

Perl Modüllerini CPAN'dan Yüklemek

perl -MCPAN -e 'shell'

Linux Terminal Renkleri

Terminal renkleri
LS_COLORS değişkeni ile tanımlanmıştır. Bu değerler;

$ echo $LS_COLORS

ile görülebilir. Renk ayarları /etc/profile or /etc/csh.cshrc dosyaları ile çağırılır. Bunlar içerisinde tanımlanmadıysa /etc/DIR_COLORS dosyası ile çağırılır. /etc/DIR_COLORS dosyasındaki ayarlar kullanıcı ev dizininde yer alan yada ayarlanan ~/.dir_colors dosyası ile ayarlanır.

Kaynak1

Çarşamba, Ağustos 08, 2007

Excel Fonksiyonları

1. Her iki satırdan birini renklendirir. Format/Conditional Formatting/
=MOD(ROW();2)

2. VLOOKUP (DIKEYAR)
=VLOOKUP

3. COUNTIF Foksiyonu;
3.1 Çift kayıtları bulmak için;
=COUNTIF(A:A;A1) # A sütununda A1 değerinden kaç tane olduğunu gösterir

3.2 Belli bir değerden büykleri bulmak için;
=COUNTIF(A:A;">10") # Asütununda 10'dan büyük değerlerin sayısını gösterir

Çarşamba, Ağustos 01, 2007

OCSP Sorgusu

$openssl ocsp -url http://ocsp_server_ip -issuer NESHS.v2.pem -VAfile OCSP.pem -cert KULLANICI_CERT.pem -req_text

Salı, Temmuz 31, 2007

Oracle Faydalı Komutlar

Listener

$ lsnrctl status/stop/start

RMAN
$ rman target sys@SID nocatalog
$ rman>crosscheck archivelog all
$ rman>delete expired archivelog all

SID bilgisini verir;
$select name from v$database;

Perşembe, Haziran 28, 2007

Cisco IOS VPN Sertifika İşlemleri

1. Anahtar Çiftini Üretmek

(config)# crypto key generate rsa general-keys label ANAHTAR_CIFTI modulus 2048 storage nvram:

2. Trust Point Tanımlamak

(config)#crypto pki trustpoint TP
(ca-trustpoint)#enrollment terminal
(ca-trustpoint)#serial-number none
(ca-trustpoint)#fqdn none
(ca-trustpoint)#ip-address none
(ca-trustpoint)#password
(ca-trustpoint)#subject-name O="Microsoft", OU=Office, CN=vpnserver.microsoft.com.tr, C=TR
(ca-trustpoint)#revocation-check none
(ca-trustpoint)#rsakeypair ANAHTAR_CIFTI

3. İstek Üretmek

(config)#crypto ca enroll TP
% Start certificate enrollment ..

% The subject name in the certificate will include: O="Microsoft", OU=Office, CN=vpnsunucu.microsoft.com.tr, C=TR
% The fully-qualified domain name will not be included in the certificateCertificate Request follows:

MIICwTCCAakCAQAwWzELMAkGA1UEBhMCVFIxIDAeBgNVBAMTF3ZwbnNlcnZlci5h
...
...
hEODrs+ppTPsT0IUHRbT4EoH9FMgwyAqiAVwQZgI9XStRqhI4g==

---End - This line not part of the certificate request---

Redisplay enrollment request? [yes/no]: no

Yükarıda elde edilen çıktı bu vpnsunucunun isteğidir. Bu istek kopyalanır ve ilgili sertifika makamına imzalanması için gönderilir.

4. Yardımcı Komutlar
# show crypto key mypubkey rsa ANAHTAR_CIFTI
# show crypto ca trustpoint ADALET status
# show crypto pki trustpoints
# show crypto pki trustpoints status
# show crypto pki certificates
# show crypto pki certificates verbose

(config)#no crypto key zeroize rsa ANAHTAR_CIFTI
(config)#no crypto pki trustpoint TP

Cisco IOS VPN Ayarları

1. Öncelikle aaa new-model özelliği aktif edilir; erişim ve yetkilendirme yapılır:
aaa new-model
! Istemci için tanımlanacak erişim izinlerinin yerel kullanıcılardan yapılacağı belirtilir.
aaa authentication login Istmci_Erisimi local
! Istemci yetkilerinin yerel kullanıcılardan yapılacağı belirtilir.
aaa authorization network Istemci_Yetkileri local

2.
crypto isakmp policy 1
encr 3des
authentication pre-share
group 2

3.
ip local pool IP_HAVUZU 172.16.1.1 172.16.1.10
!
crypto isakmp client configuration group ERISIM_GRUBU
dns 10.10.10.2
pool IP_HAVUZU

4.
crypto ipsec transform-set ESP-3DES-SHA esp-3des esp-sha-hmac

5.
crypto dynamic-map DMAP 1
set transform-set ESP-3DES-SHA
reverse-route

6.
crypto map VPN client authentication list Istemci_Erisim
crypto map VPN isakmp authorization list Istemci_Yetkileri
crypto map VPN client configuration address respond
crypto map VPN 100 ipsec-isakmp dynamic DMAP

Çarşamba, Haziran 13, 2007

Tarayıcıdan FTP Yapmak

Şifre Sorularak
ftp://kullanici_adi@ftp.sunucusu.com

Şifre Sormadan
ftp://kullanıcı_adi:sifre@ftp.sunucusu.com

Perşembe, Mayıs 17, 2007

PostgreSQL

SELECT * FORM tablo_adi WHERE kolon1 IN ('deger1','deger2',...);
SELECT * FORM tablo_adi WHERE kolon1 IN ('deger1','deger2',...) ORDER BY kolon1 ASC ORDER BY kolon2 ASC

SELECT DISTINCT ON (kolon1,kolon2) kolon1,kolon2,... from tablo_adi
SELECT DISTINCT ON (kolon1) * from tablo_adi

SELECT kolon1,COUNT(*) as isim FROM tablo_adi GROUP BY kolon1 HAVING COUNT(*)>deger ORDER BY COUNT(*)

Salı, Mart 13, 2007

Snort Barnyard Kullanımı

Barnyard snort saldırı tespit sistemi ile tespit edilen kayıtların daha hızlı bir şekilde veritabanına aktarılmasını sağlayan bir ara uygulamadır.
Öncelikle barnyard uygulamasını snort.org sayfasından indirilir.
Daha sonra;
# ./configure --enable-mysql
# make
# make install
ile kurulum gerçekleştirilir.

Dana sonra snort.conf dosyasında;

# output database: log, mysql, user=snort password=PASSWORD dbname=snort host=localhost
output alert_unified: filename snort.alert, limit 128
output log_unified: filename snort.log, limit 128

satırları yukarıdaki gibi olacak şekilde değiştirlir.
Bir sonraki adımda barnyard.conf dosyasında ;

config hostname: sensor
config interface: eth0
config filter: not port 2244
...
output log_acid_db: mysql, database snort, server localhost, user snort, detail full, password PASSWORD

yukarıdaki değişiklikler yapılır.

MySQL Komutları

Tablodaki satır sayısını bulmak;
> select count(*) from TABLO;

Belli satırların görüntülenmesi;
> select * from TABLO limit 100,10;

100 : listelenecek satırların başlangıç numarası
10 : başlangıçtan itibaren kaç satır görüntülenecek

Perşembe, Mart 01, 2007

Ezmlm E-posta Grub Yöneticisi

Kullanıcı Eklemek

# cd /liste/yolu
# ezmlm-sub `pwd` < /eposta/adres/listesi.txt
# ezmlm-list `pwd`

Pazartesi, Ocak 22, 2007

HP-UX Faydalı Komutlar

Donanım model bilgisini verir;
# model
# getconf MACHINE_VERSION

Donanım değişkenleri ile ilgili bilgi verir;
# getconf CPU_CHIP_TYPE
# getconf HW_CPU_SUPP_BITS
# getconf
KERNEL_BITS

Uygulama versiyonu öğrenme;
swlist -a revision -l fileset

İşletim sistemi versiyonunu öğrenme;
swlist HPUX*OE*

Perşembe, Ocak 18, 2007

DATE Komutu

date -I -d "yesterday"
2007-01-17

date -I -d "1 days ago"
2007-01-17

date -d "1 days ago"
Wed Jan 17 15:48:55 EET 2007

date -I -d "1 weeks ago"
2007-01-11

date +%Y-%m-%d
2007-01-18

date +%Y-%d-%b
2007-18-Jan


date -d '1970-01-01 1221131050 sec' +"%Y-%m-%d %T %z"
date --date='@2147483647'

http://www.epochconverter.com/

Postfix

Postfix'te e-postaların yönlendirilmsi;

/etc/postfix/transport disyasında
* smtp:mail.server : tüm istekler mail.server sunucusuna yönlendirilir.

Not:mail.server sunucusunun da postfix sunucusuna RELAY vermiş olması gerekir.

Bugzilla

1. Bugzilla Logosunu Değiştirmek
  • $BUGZILLA_HOME/skins/standard/index dizinindeki front.png dosyasını kendi logonuz ile yerdeğiştirmek yada adını değiştirerek ana sayfada görünmesini engellemek.

2. Bugzilla Versiyon Bilgisini Değiştirmek
  • $BUGZILLA_HOME/Bugzilla/Config.pm dosyasında $Bugzilla::Config::VERSION = "2.22.1"; satırı bulup versiyon bilgisi silinir yada değiştirilir.
3. Bugzilla veritabanından kayıt silmek

# mysql -u root -p
mysql > use BUGZILLA_DB;
mysql > DELETE FROM bugs WHERE bug_id="1";
mysql > DELETE FROM bugs WHERE bug_id IN (2,3,4,5);
mysql > DELETE FROM bugs WHERE bug_status="CLOSED" ;

4. Değişen Dosyalar
$BUGZILLA_HOME/template/en/default/account/auth/login-small.html.tmpl dosyasında action="https://sunucu_adi/index.cgi" olarak değiştirildi.