'리눅스' 카테고리의 다른 글
nfs 설치 설정 (0) | 2015.04.24 |
---|---|
mod-cband 설치 (0) | 2015.04.23 |
파일시스템 오류 give root password for maintenance (0) | 2015.04.20 |
ssl 인증서 갱신 (0) | 2015.04.20 |
freetds 설치 (0) | 2015.04.15 |
nfs 설치 설정 (0) | 2015.04.24 |
---|---|
mod-cband 설치 (0) | 2015.04.23 |
파일시스템 오류 give root password for maintenance (0) | 2015.04.20 |
ssl 인증서 갱신 (0) | 2015.04.20 |
freetds 설치 (0) | 2015.04.15 |
하드나 커널쪽 문제라고 하는데 정확히는....
Give root password for maintenance
(or type Control -D for normal startup):
root 패스워드를 입력하고, fsck 로 체크하는 방법이 있다.
부팅하는 방법
1. mount -o remount,rw / 읽기,쓰기로 다시 마운트
2. vi /etc/fstab 1 1 로 파일시스템 체크를 하게 되있는 부분을 0 0으로 변경하여 체크하지 않고 넘어가게 한다.
3. reboot
mod-cband 설치 (0) | 2015.04.23 |
---|---|
캐릭터셋 변경하기 (0) | 2015.04.20 |
ssl 인증서 갱신 (0) | 2015.04.20 |
freetds 설치 (0) | 2015.04.15 |
HDD 파티션, 마운트, 포멧 (0) | 2015.04.15 |
1. key 값 생성
openssl genrsa -des3 -out DOMAINNAME.key 2048
확인
openssl rsa -noout -text -in DOMAINNAME.key
2. csr 생성
openssl req -new -key DOMAINNAME.key -out DOMAINNAME.csr
Country Name (2 letter code) [GB]:KR #나라를 나타내는 2문자의 ISO약어
State or Province Name (full name) [Berkshire]:Seoul #조직이 있는 시도
Locality Name (eg, city) [Newbury]:Seocho-gu #조직이 있는 구동
Organization Name (eg, company) [My Company Ltd]:DMI #조직의 법률상의 정식명칭
Organizational Unit Name (eg, section) []: #조직의 부서명
Common Name (eg, your name or your server's hostname) []: #발급받을 정확한 FQDN의 도메인
Email Address []: #이메일 주소
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: #엔터로 다음로 넘어간다, 생략 가능
An optional company name []: #엔터로 다음로 넘어간다, 생략 가능
csr 확인
openssl req -noout -text -in DOMAINNAME.csr
-이제 생성된 key와 csr을 인증업체에 보내면 인증서 설치를 위한 crt를 발급해준다.
3. 설치
ssl.conf에 인증서 위치에 발급받은 값을 넣어주자/
100 # Server Certificate:
101 # Point SSLCertificateFile at a PEM encoded certificate. If
102 # the certificate is encrypted, then you will be prompted for a
103 # pass phrase. Note that a kill -HUP will prompt again. A new
104 # certificate can be generated using the genkey(1) command.
105 SSLCertificateFile /etc/httpd/ssl/jh.felix123.kr.crt
106
107 # Server Private Key:
108 # If the key is not combined with the certificate, use this
109 # directive to point at the key file. Keep in mind that if
110 # you've both a RSA and a DSA private key you can configure
111 # both in parallel (to also allow the use of DSA ciphers, etc.)
112 SSLCertificateKeyFile /etc/httpd/ssl/jh.felix123.kr.key
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
인증서 패스워드 제거
openssl rsa -in jh.felix123.kr.key -out jh.felix123.kr.key
writing RSA key
요런 메시지가 뜨고 용량을 확인하면 줄어들어있는걸 알 수 있다.
crt 생성
-인증업체가 발급해주니 필요는 없지만...
openssl req -x509 -days 365 -key -DOMAINNAME.key -in -DOMAINNAME.csr > -DOMAINNAME.crt
키값 확인 명령어
openssl x509 -noout -modulus -in ssl.crt | openssl md5
openssl rsa -noout -modulus -in ssl.key | openssl md5
openssl req -noout -modulus -in ssl.csr | openssl md5
각 값의 md5가 일치해야 동일 인증서
인증서 확인
openssl x509 -in /app/apache/conf/server.crt -noout -text
캐릭터셋 변경하기 (0) | 2015.04.20 |
---|---|
파일시스템 오류 give root password for maintenance (0) | 2015.04.20 |
freetds 설치 (0) | 2015.04.15 |
HDD 파티션, 마운트, 포멧 (0) | 2015.04.15 |
configure 옵션 확인 (0) | 2015.04.15 |
freetds 다운로드
http://mirrors.ibiblio.org/freetds/stable/freetds-0.91.tar.gz
# ./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --disable-odbc --disable-debug --enable-msdblib
(freetds-0.82 버전의 경우 --enable-dbmfix 옵션 추가)
mssql 2008 의 경우 옵션을 제외
mssql 2005 의 경우 --with-tdsver=8.0
mssql 2000 의 경우 --with-tdsver=8.0
mssql 7.0 의 경우 --with-tdsver=7.0
mssql 6.0 의 경우 --with-tdsver=4.2
make
make install
php를 재컴파일 하는게 속이 편하고, 전에 있던 파일 백업후 다시 작업
--with-sybase=/usr/local/freetds --with-mssql=/usr/local/freetds
기존 php configure에 추가
php 5.2.x
--prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/apache/conf --with-mysql=/usr/local/mysql --enable-mod-charset --enable-safe-mode --enable-sigchild --enable-magic-quotes --with-libxml-dir --with-openssl --with-zlib --with-zlib-dir --with-bz2 --enable-calendar --with-curl --enable-dba --with-gdbm --enable-exif --enable-ftp --with-gd --with-jpeg-dir --with-png-dir --with-ttf --with-freetype-dir --enable-gd-native-ttf --with-gettext --with-imap --with-imap-ssl --with-kerberos --enable-mbstring --with-mhash --with-mcrypt --enable-sockets --with-regex=php --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --enable-zend-multibyte --enable-zip --with-sybase=/usr/local/freetds --with-mssql=/usr/local/freetds
# cd /usr/local/src/php-5.2.9/ext/mssql php를 설치한 소스폴더
# /usr/local/php/bin/phpize
# ./configure --with-mssql=/usr/local/freetds --with-php-config=/usr/local/php/bin/php-config
# make
# make install
# cd /usr/local/src/php-5.2.9/ext/pdo_dblib
# /usr/local/php/bin/phpize
# ./configure --with-pdo-dblib=/usr/local/freetds --with-php-config=/usr/local/php/bin/php-config
# make
# make install
# mv /usr/local/php/lib/php/extensions/no-debug-zts-20060613/* /usr/local/php/lib/
# /usr/local/Zend/etc/php.ini
아래 내용 추가합니다.
extension=mssql.so
extension=pdo_dblib.so
2. 설정
아래 파일을 수정하여 한글 깨짐을 막고 해당 서버로 연결가능하도록 추가 설정합니다.
# vi /usr/local/freetds/etc/freetds.conf
[global]
client charset = EUC-KR
[192.168.10.2]
host = 192.168.10.2
port = 1433
tds version = 8.0 mssql 버전에 맞춰서 넣어주거나 삭제
3. 확인
아래 명령어를 통해서 접속이 잘 되는지 확인할 수 있습니다.
# /usr/local/freetds/bin/tsql -H 192.168.10.2 -p 1433 -U neulwon -P 12345678
configure 단계에서 'Directory /usr/local/freetds is not a FreeTDS installation directory' 라는 메시지가 나올경우
# cp /usr/local/src/freetds/include/tds.h /usr/local/freetds/include/
또는
# cp /usr/local/src/freetds/src/tds/.libs/tds.h /usr/local/freetds/include/
tds.h 파일을 설치된 디렉토리에 복사한다.
*php 5.X --with-mssql 오류시 해결 방안
php 5.X에서 mssql연동을 위해 freetds를 설치할 경우에 php configure에 --with-mssql=/usr/local/freetds로 주었을때 해당 경로에 설치가 되어있음에도 불구하고 해당 경로에 설치가 되어있지 않다고 나오는 경우가 발생합니다.
에러 메세지
error Directory /usr/local/freetds is not a FreeTDS installation directory
해당 문제는 tds.h, libtds.a가 해당 설치경로에 있지 않아 설치되어 있는데도 설치되어 있지 않은것으로 인식되는 문제로 보입니다.
아래와 같이 해당 파일들을 경로로 복사해 주면 문제가 해결 됩니다.
cp /usr/local/src/freetds-xxx/include/tds.h /usr/local/freetds/include
cp /usr/local/src/freetds-xxx/src/tds/.libs/libtds.a /usr/local/freetds/lib
위와 같이 한 후에 make 과정중에 sysbase 오류가 발생한다면 configure 시에 --with-mssql과 --with-sybase를 같이 넣어 줍니다.
[PHP와 MS-SQL연동을 위해 odbc를 이용한 방법 - 오래된메뉴얼]
http://cafe.naver.com/webmas.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=1000
*php - mssql 연동 테스트 소스
putenv("TDSVER=80"); <- 이거는 사용하지마시고 혹시 mssql 2008 이나 연결이 안될경우 추가해보세요.
$hostname = "";
$username = "";
$password = "";
$connection = mssql_connect($hostname,$username,$password)
or die("데이타 베이스에 연결 할수 없습니다.");
print ("데이타 베이스에 연결되었습니다.");
mssql_close($connection);
print ("데이타 베이스의 연결이 해지 되었습니다.");
?>
출처 http://sosnote.com/search/freetds
파일시스템 오류 give root password for maintenance (0) | 2015.04.20 |
---|---|
ssl 인증서 갱신 (0) | 2015.04.20 |
HDD 파티션, 마운트, 포멧 (0) | 2015.04.15 |
configure 옵션 확인 (0) | 2015.04.15 |
우분투 싱글모드 접속 (0) | 2015.04.14 |
파일시스템
-window - NTFS
-linux - ext
5.X - ext3
6.X, 7.X - ext4
-리눅스 버전정보 확인 - rpm -qa *-release
-HDD 추가
#fdisk -l
Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 64 514048+ 83 Linux
/dev/sda2 65 586 4192965 82 Linux swap / Solaris
/dev/sda3 587 15566 120326850 83 Linux
WARNING: The size of this disk is 8.0 TB (7999955402752 bytes).
DOS partition table format can not be used on drives for volumes
larger than 2.2 TB (2199023255040 bytes). Use parted(1) and GUID
partition table format (GPT).
Disk /dev/sdb: 7999.9 GB, 7999955402752 bytes
255 heads, 63 sectors/track, 972605 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
-파티션 생성
#fdisk /dev/sdb
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-972605, default 1): 1
Last cylinder or +size or +sizeM or +sizeK (1-267349, default 267349):
Using default value 267349
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.
-포멧
#mkfs.ext3 /dev/sdb
작업 확인
#disk -l
Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 64 514048+ 83 Linux
/dev/sda2 65 586 4192965 82 Linux swap / Solaris
/dev/sda3 587 15566 120326850 83 Linux
WARNING: The size of this disk is 8.0 TB (7999955402752 bytes).
DOS partition table format can not be used on drives for volumes
larger than 2.2 TB (2199023255040 bytes). Use parted(1) and GUID
partition table format (GPT).
Disk /dev/sdb: 7999.9 GB, 7999955402752 bytes
255 heads, 63 sectors/track, 972605 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 267349 2147480811 83 Linux
-마운트
#mount /dev/sdb1 /data
-부팅시 마운트 정보 입력
#vi /etc/fatab
#/dev/sdb1 /data ext3 defaults 1 2
맨아래 추가
-리마운트
mount -o remount r,w /
vi /etc/fstab
ssl 인증서 갱신 (0) | 2015.04.20 |
---|---|
freetds 설치 (0) | 2015.04.15 |
configure 옵션 확인 (0) | 2015.04.15 |
우분투 싱글모드 접속 (0) | 2015.04.14 |
raid 구성 (0) | 2015.04.13 |
아파치 폴더에 config.nice
./build 에 있다
열어보면 configure 옵션이 들어있다.
각 소스 폴더에 들어가면
apache cofnig.log
mysql config.status
php config.log
freetds 설치 (0) | 2015.04.15 |
---|---|
HDD 파티션, 마운트, 포멧 (0) | 2015.04.15 |
우분투 싱글모드 접속 (0) | 2015.04.14 |
raid 구성 (0) | 2015.04.13 |
ftp user 폴더변경 접속제한 사용권한 (0) | 2015.04.13 |
grub모드에서 e 키 입력
linux /boot/vmlinuz...~ ro
ro 를 변경한다
rw single init=/bin/bash 입력후 ctrl+x
HDD 파티션, 마운트, 포멧 (0) | 2015.04.15 |
---|---|
configure 옵션 확인 (0) | 2015.04.15 |
raid 구성 (0) | 2015.04.13 |
ftp user 폴더변경 접속제한 사용권한 (0) | 2015.04.13 |
Apache : CSR 생성 및 SSL 인증서 적용 (0) | 2015.04.13 |
디스크를 묶어서 하나처럼 쓴다 (100+100=200)
디스크 하나는 원본 하드의 백업용 (100+100=100)
최소 3개 이상의 하드디스크로 구성되며, 레이드0처럼 데이터 저장시 각 디스크에 쪼개져서 저장되지만, 패리티 정보란 것이 각각의 디스크에 번갈아가면서 저장되는데, 디스크 하나 고장시 옆 디스크에 있는 패리티 정보로 고장난 디스크를 복구할 수 있다. 즉, 패리티 정보란 다른 디스크에 저장될 정보가 분산되어서 저장이 되므로, 하나의 디스크가 고장나도 분산되어 저장된 패리티 정보로 복구를 시킬수 있다는 것인데, 두개이상의 디스크가 고장나버리면 이또한 황천길.. 그래서, 스패어 디스크를 추가로 장착하기도 한다. / 하드디스크 용량의 총합의 70% 정도로만 사용됨( 나머지 30% 정도는 패리티 정보로 저장 )
데이터는 많은 조직에서 가장 중요하고 요즘 같은 인터넷 시대에는 데이터를 빠르고 믿을 수 있게 접근하는 것이 매우 중요하다. 그렇게 조직은 대부분 데이터를 무결하게 유지하기 위해 RAID의 어떤 레벨을 사용한다.
요즘은 대부분 그렇지만 RAID 5가 쉽고 최선일 것 같기 때문에 얼마나 많은 서버에 RAID 5를 적용하고 있을까? 대부분의 경우 RAID 5가 옳은 선택이지만 쓰기 성능을 고려한다면 다른 RAID 레벨이 최선일지도 모른다.
지금 얼마나 많은 사람들이 RAID 10과 50를 즉석해서 설명할 수 있을까? 새로 발명된 RAID 레벨이 RAID 5의 단점을 보완할 수 있고 아직도 스토리지 시스템에서는 많은 것을 예비용으로 사용한다. 이 글에서 기본적인 RAID 레벨의 장단점을 소개하고 다음 글에서 나는 RAID 10같이 네스티드(nested)라고 불리는 좀 더 복잡한 RAID 레벨을 소개하려고 한다. (주: http://www.acnc.com/04_00.html에서 각 RAID 레벨의 그림을 볼 수 있다.)
RAID 0(디스크 스트라이핑)
* 최소 드라이브 개수 : 2
* 최대 용량 : 디스크의 수 x 디스크의 용량
* 설명 : 데이터를 블럭으로 쪼개서 저장하는데 각 블럭은 다른 디스크로 나뉘어 저장된다.
* 장점 : 매우 빠르다. 데이터는 여러 개의 "모터(spindles)"로 스토리지에서 읽고 쓴다. 즉, I/O 로드가 분산되는 것을 의미하기 때문에 매우 빠르다. 이론적으로 디스크를 추가하는 족족 성능은 향상된다. 보통 엄청난 성능이 필요할 때 사용하는데 성능이 정말 좋은지 알아 보기 위해 스토리지를 아이오미터(IOmeter)같은 도구를 사용하여 확인한다.
* 단점 : 드라이브 하나가 고장 나면 이 RAID 레벨은 어떤 안전장치도 없기 때문에 천체 어레이가 고장 날 수 있고 디스크를 추가할 수록 위험이 증가한다.(주: 어레이는 여러 개의 디스크 배열을 의미)
RAID 1 (디스크 미러링)
* 최소 드라이브 개수 : 2
* 최대 용량 : (디스크의 수/2) x 디스크의 용량
* 설명 : 스토리지에 저장되는 모든 데이터는 두 개의 물리적인 디스크에 각각 저장되고 모든 데이터는 중복된다.
* 장점 : 드라이브 하나가 고장 나면 똑같은 내용의 다른 드라이브가 하나 더 있기 때문에 매우 안전하다. RAID 1은 읽기 성능이 단일 드라이브에서의 성능과 같거나 훨씬 좋다.
* 단점 : 각 드라이브는 미러링되기 때문에 전체 용량의 절반밖에 사용하지 못한다. 드라이브 두 개에 동일한 데이터를 써야 하기 때문에 쓰기 성능이 나빠질 수 있지만 아직 다른 RAID 레벨의 쓰기 성능보다는 훨씬 낫다.
RAID 2: 이 레벨은 더 이상 사용되지 않는다
RAID 3(패리티를 사용하고 디스크를 병렬로 처리한다)
* 최소 드라이브 개수 : 3
* 최대 용량 : (디스크의 수 - 1) x 각 디스크의 용량
* 설명 : 데이터는 바이트 단위로 쪼개져서 모든 디스크에 균등하게 나뉘어 저장되고 패리티 정보는 별도의 전용 디스크에 저장된다.
* 장점 : 한 개의 드라이브가 고장 나는 것을 허용하며 순차적 쓰기(sequential write) 성능과 순차적 읽기(sequential read) 성능이 우수하다.
* 단점 : 잘 사용되지 않고 문제를 해결하는 것이 어려울 수 있다. 하드웨어 RAID가 되어야 실제로 쓸만하다. RAID 3은 보통 매우 효율적이지만 임의 쓰기(random write) 성능이 나쁘고 임의 읽기(random read) 성능은 꽤 좋다. .
RAID 4 (각 디스크는 패리티 블럭을 공유한다)
* 최소 드라이브 개수 : 3
* 최대 용량 : (디스크의 수 - 1) x 디스크의 용량
* 설명 : 모든 파일은 블럭으로 쪼개지고 각 블럭은 여러 디스크에 저장되지만 균등하진 않다. RAID 3처럼 RAID 4도 패리티를 처리하기 위해 별도의 디스크를 사용한다. 동시 트랜잭션 사용량이 많은 시스템에서 읽기 속도는 매우 중요한데 이런 시스템에 적합하다.
* 장점 : 드라이브 하나가 고장 나는 것을 허용하고 읽기 성능이 매우 좋다.
* 단점 : 쓰기 성능이 나쁘지만 블럭 읽기(block read) 성능은 괜찮다.
RAID 5(패리티를 순환시키는 것 없이 각 어레이에 접근한다)
* 최소 드라이브 개수 : 3
* 최대 용량 : (디스크의 수 - 1) x 디스크의 용량
* 설명 : RAID 4처럼 데이터의 블럭은 모든 디스크에 나뉘어 저장되지만 항상 균등하진 않고 패리티 정보도 모든 디스크에 나뉘어 저장된다.
* 장점 : 지원하는 회사가 많고 한 개의 드라이브가 고장 나는 것을 허용한다.
* 단점 : 디스크 재구성(rebuild)이 매우 느리고 쓰기 성능은 패리티 정보를 끊임없이 갱신해야 하기 때문에 우수하다고 할 수는 없다.
RAID 6(각 디스크에 패리티 정보가 두 번 독립적으로 분산된다)
* 최소 드라이브 개수 : 3
* 최대 용량 : (디스크의 수 - 2) x 디스크의 용량
* 설명 : RAID 4처럼 데이터의 블럭은 모든 디스크에 나뉘어 저장되지만 항상 균등하진 않고 패리티 정보도 모든 디스크에 나뉘어 저장된다.
* 장점 : 두 개의 드라이브까지 고장 나는 것을 허용하고 읽기 성능이 우수하고 매우 중요한 경우에 적합하다.
* 단점 : 쓰기 성능은 패리티를 여러 번 갱신해야 하기 때문에 RAID 5보다 매우 나쁘다. 디스크를 재구성하는 동안에 성능이 매우 나빠질 수 있다.
configure 옵션 확인 (0) | 2015.04.15 |
---|---|
우분투 싱글모드 접속 (0) | 2015.04.14 |
ftp user 폴더변경 접속제한 사용권한 (0) | 2015.04.13 |
Apache : CSR 생성 및 SSL 인증서 적용 (0) | 2015.04.13 |
sftp (0) | 2015.04.09 |
유저 폴더 변경
1.
ex) vi /etc/passwd
2.
test 계정에 해당하는 라인으로 이동
ex) test:x:1111:1111::/home/test:/bin/bash
3.
test 계정에 해당하는 라인 중 홈디렉토리 부분을 /data 로 수정
ex) test:x:1111:1111::/data:bin/bash
4.
이제 ftp 로 test 계정에 접속하면 /data 가 홈디렉토리가 됩니다.
5.
test계정으로 /data 디렉토리를 사용할 수 있도록
chown 명령으로 /data 디렉토리의 소유권을 test로 변경해 줍니다.
ex) chown test /data
chown -R test /data (하위 폴더 까지 모두 소유권 변경)
vi /etc/vsftpd.conf
#접속 제한 및 사용권한
listen=YES #standalone 으로 서비스여부(아닐경우 inetd에 수동추가)
#다수의 사용자시 standalone가 유리하다.
anonymous_enable=YES #익명연결을 허용하려면 주석제거
local_enable=YES #로컬계정 사용자들의 접속 허용
write_enable=YES #FTP 전송명령어 중 write를 허용여부
local_umask=022 #같은그룹과 Others 그룹의 쓰기권한 금지
ascii_upload_enable=YES #ASCII 파일 업로드 가능
ascii_download_enable=YES #ASCII 파일 다운로드 가능
dirmessage_enable=YES #디렉토리 이동시 메세지 표시여부
xferlog_enable=YES #트레이스 로그여부
#환영 메세지
ftpd_banner=Welcome to Damul Project baikal FTP service.
#파일시스템 접근제한 설정
chroot_local_user=YES #계정 홈디렉토리 상위폴더 이동제한
chroot_list_enable=YES #아래 파일을 사용여부
# (default follows)
#위의 값이 모두 YES이면,아래파일을 생성하여 제한풀어줄 대상자의 id를 1행당 1개씩 기술.
#파일질라가 자체 캐싱을 하는건지,바로 적용은 안되고 몇번이고 데몬을 restart한
#후에 반영이 되는듯 하다.
#반대로 chroot_local_user=NO이면
#아래 파일의 내용은 계정 상위폴더 이동 제한을 걸 사용자들을 기술한다.
chroot_list_file=/etc/vsftpd.chroot_list
#재시작
sudo service vsftpd restart
★usermod
사용자의 정보를 변경하는 명령이다.
- 사용법
usermod [옵션] 홈디렉토리 계정
- 옵션
-c : 사용자의 설명을 수정한다.
-d 홈 디렉토리 : 사용자의 홈 디렉토리를 변경한다.
-G 그룹 : 사용자의 그룹을 변경한다.
-s shell : 사용자의 로그인 셀을 변경한다.
webdev 사용자의 홈디렉토리를 변경해보자.
[root@host3 root]# usermod -d /usr/java/apache-tomcat-7.0.53/webapps/ROOT webdev
홈디렉토리 변경.
[root@host3 root]# chmod a-w /usr/java/apache-tomcat-7.0.53/webapps/ROOT
vsftpd 상위 디렉토리 접근을 막기위해 폴더 권한 설정
/etc/init.d/xinetd restart
우분투 싱글모드 접속 (0) | 2015.04.14 |
---|---|
raid 구성 (0) | 2015.04.13 |
Apache : CSR 생성 및 SSL 인증서 적용 (0) | 2015.04.13 |
sftp (0) | 2015.04.09 |
sendmail + dovecot (0) | 2015.04.09 |
Apache 설치방법 보기 | |
Apache 웹서버에 SSL를 적용하기 위해 아래 두 항목이 웹서버에 설치되어 있어야 합니다. - Openssl 암호화 라이브러리 | |
| |
![]() |
먼저 SSL를 설치하고자 하는 웹서버에 openssl 라이브러리 설치상태를 find 명령어를 활용하여 아래와 같이 확인합니다. ![]() 위와 같은 값을 보인다면 openssl 라이브러리 모듈은 rpm으로 설치된것입니다. 만약에 경로가 /usr/local 아래 있다면 모듈은 소스로 설치된 것입니다. rpm으로 설치된 것이라면 rpm -qa 명령어를 사용하여 openssl-devel 설치여부도 함께 점검합니다. 버전에 따라 라이브러리 버전이 아래보이는 값과 차이가 있을수 있습니다. ![]() Openssl 은 암호화 처리를 위한 독립 모듈로 최신버젼으로 설치하는 것을 권장합니다.
Openssl 과 마찬가지로 웹서버의 mod_ssl 설치여부를 점검합니다. Apache 웹서버는 두가지 방식으로 모듈설치를 지원하고 있습니다. 정적과 동적인 방식으로 정적으로 설치된 경우는 아파치의 재설치까지 요구되며 동적인 경우는 손쉽게 모듈 설치가 가능합니다. Apache 가 /usr/local 아래 설치된 것을 기준으로 아래와 같은 방식으로 확인합니다. 정적으로 설치된 mod_ssl 모듈확인 ![]() 동적으로 설치된 mod_ssl 모듈확인 웹서버에 설치된 모듈중 mod_so.c 를 먼저 확인후 동적으로 설치된 모듈중 mod_ssl.so 를 확인합니다.
Openssl 명령어를 이용하여 웹서버의 RSA키( 2048비트 암호화 )를 생성합니다. ( sslhanbiro.key 는 임의로 지정된 키값입니다. 원하는 이름으로 키를 생성합니다. ) 패스워드를 지정하게 됩니다. 이때 입력된 패스워드는 차후 여러차례 사용되므로 본인만이 알 수 있는 패스워드로 지정해 주시는 것이 좋습니다. ![]() 윈도우 아파치 이용하실 경우 '-des3' 구문은 제외하시기 바랍니다. 이때 생성되는 개인키는 반드시 백업을 받아놓고 사용하는 것이 좋습니다. 생성된 키는 아래와 같이 확인이 가능합니다. 패스워드를 확인 하는데 이때는 키생성시 입력한 패스워드를 입력합니다. 개인키 생성까지 완료되면 이제 CSR 생성을 하게됩니다. ![]()
*발급이 완료된 인증서는 재발급 또는 변경이 불가하므로 CSR 생성시 절대 주의 바랍니다. ☞ CSR ( Certificate Signing Request ) 이란? SSL 서버를 운영하는 회사의 정보를 암호화하여 인증기관으로 보내 인증서를 발급받게 하는 일종의 신청서입니다. CSR은 ASCII 텍스트 화일로 생성됩니다. CSR을 생성할 때 서버의 식별명을 입력하게 됩니다. 식별명은 각 서버를 공유하게 나타내는 이름으로 다음과 같은 정보를 포함합니다. Country Name ( 국가코드) [] : KR State or Province Name ( 지역 ) [] : Seoul Locality Name ( 시/군/구 ) [] : Seocho Organization Name ( 회사명 ) [] : Hanbiro Inc Organizational Unit Name ( 부서명 ) [] : Linux Team Common Name ( 서비스도메인명 ) [] : www.hanbiro.com Email Address [] : hanbiro@hanbiro.com ☞ CSR 항목에 대한 설명 Country Name : 이것은 두 자로 된 ISO 형식의 국가 코드입니다. State or Province Name : 시 이름을 입력해야 하며 약어를 사용할 수 없습니다. Locality Name : 이 필드는 대부분의 경우 생략이 가능하며 업체가 위치한 곳를 나타냅니다. Organization : 사업자 등록증에 있는 회사명과 일치되는 영문회사명을 입력하시면 됩니다. Organization Unit : "리눅스 관리팀", "윈도우 관리팀" 등과 같이 업체의 부서를 입력할 수 있습니다. Common Name : 인증받을 도메인주소를 입력하시면 됩니다. 이 정보로 웹 사이트를 식별하므로 호스트 이름을 변경할 경우 다른 디지털 ID를 요청해야 합니다. 호스트에 연결하는 클라이언트 브라우저가 디지털 ID의 이름과 URL이 일치하는지를 확인합니다. ☞ CSR 항목 입력시 주의사항
↘ 위 주의사항을 유의하여 아래와 같은 절차로 CSR 생성을 진행합니다. ↘ 생성된 CSR 정보는 아래처럼 확인이 가능합니다.
생성된 CSR 을 출력하면 아래와 같은 base64 형식의 문서를 볼 수 있습니다. 이문서의 첫 줄 -----BEGIN … 부터 마지막 줄 -----END … 까지 복사하여 지정된 SSL 접수페이지에 복사하여 붙여 넣은 뒤 입력정보와 함께 전송하면 접수가 완료됩니다.
접수한 CSR 파일이 정상적으로 생성되었다면 별다른 문제없이 인증서를 발급 받을 수 있습니다. ① 인증서 서버에 복사 메일로 받은 인증서 파일을 압축을 해제하시면 AddTrustExternalCARoot.crt,COMODOHigh-AssureanceSecureServerCA.crt, 도메인.crt 3개의 파일을 보실 수 있습니다. ② 웹서버 환경설정 아파치가 설치된 디렉토리로 이동하여 conf 디렉토리내의 httpd.conf 파일의 복사본을 만들어 둡니다. httpd.conf 예문 [ InstantSSL , InstantProSSL , PremiumSSL , Premium Wildcard , Multi DomainProSSL 인 경우 ] ![]() [ FreeSSL , PositiveSSL , MultiDomain SSL 인 경우 ] ![]() 1. <VirtualHost 127.0.0.1:443> 127.0.0.1 를 사용하는 장비의 아이피로 변경 ③ root 인증서 경로설정 ④ 웹서버 재실행 설정파일의 정상적인 수정여부를 점검하기 위한 체크 ./httpd -t 초기 개인키 생성시 입력했던 패스워드를 기억하시고 계실겁니다. SSL 실행을 위해 패스워드를 물어보는데 이때 개인키 생성시 입력했던 패스워드를 입력하시면 SSL 웹데몬이 활성화 됩니다. ⑤ 웹서버 포트점검 아래와 같이 활성화된 데몬의 포트를 점검해 봅니다. ⑥ 웹서비스 동작상태 점검 인터넷 주소창에 https://사용도메인 와 입력후 해당 페이지의 정상적인 동작 여부를 점검합니다. 페이지 하단을 보시면 열쇠 아이콘이 보이게 됩니다. 아이콘을 클릭하게 되면 위와 같이 인증서 정보를 확인하실수 있습니다. |
raid 구성 (0) | 2015.04.13 |
---|---|
ftp user 폴더변경 접속제한 사용권한 (0) | 2015.04.13 |
sftp (0) | 2015.04.09 |
sendmail + dovecot (0) | 2015.04.09 |
톰캣 아파치 연동하기 (0) | 2015.04.08 |