본문 바로가기

Computer Engineering/LINUX

LINUX#2 - Apache

아파치 사용자 인증

[root@localhost conf]# cd /usr/local/apache2/bin
[root@localhost bin]# ls
ab            apu-1-config  dbmmanage    htcacheclean  htpasswd   logresolve
apachectl     apxs          envvars      htdbm         httpd      rotatelogs
apr-1-config  checkgid      envvars-std  htdigest      httxt2dbm

htpasswd
=> 한 번만 만들어야한다.

[root@localhost bin]# ./htpasswd -c /usr/local/apache2/passwords doom
New password:****
Re-type new password:****
Adding password for user doom
[root@localhost bin]# ls -al /usr/local/apache2/passwords
-rw-r--r-- 1 root root 19 10월 30 11:47 /usr/local/apache2/passwords
=> 웹 하위에서는 보이지 않게 상위에서 작업을 하는 것이다.

[root@localhost bin]# cat /usr/local/apache2/passwords
doom:tueD6biVnrIUg
=> 암호화가 되어 있는 것을 확인할 수 있다.

이제 권한을 바꾸자
[root@localhost apache2]# chmod 640 passwords
[root@localhost apache2]# chown root.nobody passwords
=> 갑자기 왜 이렇게 하는가?
아파치는 실행이 될때 노바디 권한으로 데몬이 실행되기 때문이다.
[root@localhost apache2]# ls -al passwords
-rw-r----- 1 root nobody 19 10월 30 11:47 passwords

[root@localhost apache2]# pwd
/usr/local/apache2
[root@localhost apache2]# cd ./htdocs/
=> 여기로 이동해서
[root@localhost htdocs]# vi .htaccess      // 파일을 생성하자
AuthType Basic
AuthName "Everyday SHUFFLE IN!!"
AuthUserFile /usr/local/apache2/passwords
Require user doom

= 백업 하는 방법 =
1. 명령어로 하는 방법
# cp
# tar
# dump

2. 프로그램을 이용하는 방법
 1 - Veritas Netbackup <- 비싸다. 프로그램이 잘 되어 있다.
 유닉스 솔라리스에서 주로 이용된다.
 2 - Time Navigator <- 위보다 싸지만 ,GUI 라던지 약간..
 리눅스에서 주로 이용된다.
 3- Networker <- 위보다 싸지만 ,GUI 라던지 약간...
 리눅스에서 주로 이용된다.
 4- SysmonS

= 로그 설정 및 분석 =
[root@localhost logs]# pwd
/usr/local/apache2/logs
=> 로그가 있는 디렉토리로 이동을 하자

[root@localhost logs]# cat httpd.pid           //pid 를 확인!
15669

[root@localhost logs]# ll
합계 104
-rw-r--r-- 1 root root 75653 10월 30 12:05 access_log
-rw-r--r-- 1 root root 19891 10월 30 12:04 error_log
=> 두 가지 로그를 확인 할 수 있다.

리눅스 시스템 로그 'syslog' 서비스가 있다. 데몬명은 syslogd 라는 녀석인데 위험난이도가 있다.
e - Emergency
a - Alert
c - Critical
e - Error
w - Warning


= 아파치 웹서버의 로그관리
 1. access_log 관리 [회사마다 운영정책이 다르다.
 예) access_log 3시간마다 초기화를 시켰다.

# cp /dev/null access_log
그러면 파일이 삭제가 안되고 그 파일을 용량을 0으로 초기화

<중요!> 아파치 웹서버의 로그의 파일은
# cd /usr/local/apache2/logs
# cp access_log access_log_bak         //백업을 만든다.
# tail -f access_log

= 웹로그 분석 및 통계 =


============================================================
=Swap=

[root@localhost /]# fdisk /dev/sda

The number of cylinders for this disk is set to 1305.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): p

Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          65      522081   83  Linux
/dev/sda2              66         196     1052257+  82  Linux swap / Solaris
/dev/sda3             197        1165     7783492+  83  Linux
/dev/sda4            1166        1305     1124550    5  Extended
/dev/sda5            1166        1229      514048+  83  Linux
/dev/sda6            1230        1254      200781   83  Linux
/dev/sda7            1255        1279      200781   83  Linux
/dev/sda8            1280        1304      200781   83  Linux

Command (m for help): t
Partition number (1-8): 6
Hex code (type L to list codes): l

 0  Empty           1e  Hidden W95 FAT1 80  Old Minix       bf  Solaris
 1  FAT12           24  NEC DOS         81  Minix / old Lin c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          82  Linux swap / So c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  83  Linux           c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     84  OS/2 hidden C:  c7  Syrinx
 5  Extended        41  PPC PReP Boot   85  Linux extended  da  Non-FS data
 6  FAT16           42  SFS             86  NTFS volume set db  CP/M / CTOS / .
 7  HPFS/NTFS       4d  QNX4.x          87  NTFS volume set de  Dell Utility
 8  AIX             4e  QNX4.x 2nd part 88  Linux plaintext df  BootIt
 9  AIX bootable    4f  QNX4.x 3rd part 8e  Linux LVM       e1  DOS access
 a  OS/2 Boot Manag 50  OnTrack DM      93  Amoeba          e3  DOS R/O
 b  W95 FAT32       51  OnTrack DM6 Aux 94  Amoeba BBT      e4  SpeedStor
 c  W95 FAT32 (LBA) 52  CP/M            9f  BSD/OS          eb  BeOS fs
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a0  IBM Thinkpad hi ee  EFI GPT
 f  W95 Ext'd (LBA) 54  OnTrackDM6      a5  FreeBSD         ef  EFI (FAT-12/16/
10  OPUS            55  EZ-Drive        a6  OpenBSD         f0  Linux/PA-RISC b
11  Hidden FAT12    56  Golden Bow      a7  NeXTSTEP        f1  SpeedStor
12  Compaq diagnost 5c  Priam Edisk     a8  Darwin UFS      f4  SpeedStor
14  Hidden FAT16 <3 61  SpeedStor       a9  NetBSD          f2  DOS secondary
16  Hidden FAT16    63  GNU HURD or Sys ab  Darwin boot     fb  VMware VMFS
17  Hidden HPFS/NTF 64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE
18  AST SmartSleep  65  Novell Netware  b8  BSDI swap       fd  Linux raid auto
1b  Hidden W95 FAT3 70  DiskSecure Mult bb  Boot Wizard hid fe  LANstep
1c  Hidden W95 FAT3 75  PC/IX           be  Solaris boot    ff  BBT
Hex code (type L to list codes): 82
Changed system type of partition 6 to 82 (Linux swap / Solaris)
=> 6번 파티션이 82번(스왑)전형으로 바뀐 것을 확인할 수 있다.

Command (m for help): p

Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          65      522081   83  Linux
/dev/sda2              66         196     1052257+  82  Linux swap / Solaris
/dev/sda3             197        1165     7783492+  83  Linux
/dev/sda4            1166        1305     1124550    5  Extended
/dev/sda5            1166        1229      514048+  83  Linux
/dev/sda6            1230        1254      200781   82  Linux swap / Solaris
/dev/sda7            1255        1279      200781   83  Linux
/dev/sda8            1280        1304      200781   83  Linux

Command (m for help): w
=> 저장시키자!!
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 장치나 자원이 동작 중.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.

[root@localhost ~]# mkswap /dev/sda6
mkswap: error: /dev/sda6 is mounted; will not make swapspace.
=> 지금 사용중이기 때문에 Unmount 시켜야 한다.

[root@localhost ~]# umount /dev/sda6
[root@localhost ~]# mkswap /dev/sda6
Setting up swapspace version 1, size = 205594 kB
=> 이제 정상적으로 동작하는 것을 확인할 수 있다.

[root@localhost ~]# swapon /dev/sda6
[root@localhost ~]# free
             total       used       free     shared    buffers     cached
Mem:        574852     543208      31644          0      55500     388212
-/+ buffers/cache:      99496     475356
Swap:      1253020          0    1253020
[root@localhost ~]# swapon -s
Filename                                Type            Size    Used    Priority
/dev/sda2                               partition       1052248 0       -1
/dev/sda6                               partition       200772  0       -2
=> sda6이 파일시스템에 추가 된 것을 확인할 수 있다.






'Computer Engineering > LINUX' 카테고리의 다른 글

LINUX#2  (0) 2011.11.06
LINUX#2  (0) 2011.11.05
LINUX#2  (0) 2011.10.29
LINUX#2 -  (0) 2011.10.23
LINUX#2 - SAMBA  (0) 2011.10.22