Red5 설치가 완료되었으며 본격적인 개발을 위해 개발 환경을 구성해야 함
구성은 당연히 Eclipse를 사용해서
Red5 Plugin URL
http://www.red5.org/downloads/projects/red5plugin/update_0.2.x/
Eclipse plugin 설치
1. Help 메뉴의 Install New Sofrware 선택
2. Add 버튼을 클릭하고 Name, Location을 입력
이후 next버튼 클릭을 통해 plugin 설치 진행
'ººº::Development™:: > ::Media™::' 카테고리의 다른 글
[ Red5] Red5 설치 (0) | 2014.04.23 |
---|
회사 프로젝트로 여러가지 미디어 서버 및 인코더를 확인하는 가운데 오픈소스인 Red5 설치 정리
설치환경
CentOS 5.x
JAVA JDK 6.x
설치
RED5 사이트로부터 Download후 원하는 폴더에 압축 해제
향후 버전 업데이트 등 다른 작업을 위해 link 작업으로 정리
# cd /usr/local
# wget http://red5.org/downloads/red5/1_0/red5-1.0.0.tar.gz
# tar -zxvf red5-1.0.0.tar.gz
압축 해제 이후 관련 폴더를 RED5로 link해준다. 이유는 향후 버전 업데이트시 설정 파일등을 변경해주는
불편함을 조금이라도 해소해 주기 위해
# ln -s red5-1.0.0 RED5
서비스 스크립트 생성
/etc/init.d/red5 에 아래 스크립트를 생성한다. 생성되는 파일명은 원하는대로!!
#!/bin/bash
# chkconfig: 2345 85 85
# description: This is used to start, stop, restart and status of red5
# processname: red5
export JAVA_HOME=[JAVA 설치 경로]
export RED5_HOME=[RED5 설치 경로 : /usr/local/RED5]
PID=0
RTMPPORT=1935
prog="red5"
start(){
status
if [ $PID -eq 0 ] ; then
echo $"Starting $prog..."
nohup $RED5_HOME/red5.sh 1> $RED5_HOME/log/stdout.log 2> $RED5_HOME/log/stderr.log < /dev/null &
PID=$!
echo $"$prog started at port $RTMPPORT and PID[$PID]."
else
echo
fi
return $PID
}
stop(){
status
if [ $PID -eq 0 ] ; then
echo
else
echo $"Stopping $prog..."
$RED5_HOME/red5-shutdown.sh
echo $"PID[$PID] is killed."
fi
return $PID
}
restart(){
stop
sleep 2
start
}
status() {
RTMPPORT=`cat $RED5_HOME/conf/red5.properties | grep -w "rtmp.port" | awk -F= '{print $2}'`
#PID=`lsof -i | grep java | grep *:$RTMPPORT | awk '{print $2}'`
PID=`ps -ef | grep red5 | grep java | awk '{print $2}'`
if [ x"$PID" == "x" ] ; then
PID=0
echo $"$prog is not running."
else
echo $"$prog running on port $RTMPPORT and PID[$PID]."
fi
return $PID
}
# How its called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart)
restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart}"
PID=1
esac
exit $PID
스크립트 생성이 끝났으면 실행 권한 설정
# chmod 755 /etc/init.d/red5
RED5 서비스 Start / Stop
서비스 실행
# /etc/init.d/red5 start 혹은 service red5 start
서비스 종료
# /etc/init.d/red5 stop 혹은 service red5 stop
정상적으로 서비스가 실행되었다면 웹 브라우저를 통해 http://ServerIP:5080 으로 접근이 되면 정상
서비스 등록
서버 리부팅이후에도 자동으로 실행될 수 있도록 서비스 등록
# chkconfig red5 on
정상 등록 여부 확인
# chkconfig --list red5
red5 0:off 1:off 2:on 3:on 4:on 6:off
'ººº::Development™:: > ::Media™::' 카테고리의 다른 글
[Red5] Red5 Eclipse plugin 설치 (1) | 2014.04.23 |
---|
설정 파일의 경로는 rpm으로 설치했을 경우 "/etc/openldap/sldap.conf" 이곳에 존재한다.
위 파일을 vi 혹은 다른 editor로 open 한 다음 아래 라인을 추가한다.
database bdb
suffix "db=example,dc=com"
rootdn "cn=Manager,dc=example,dc=com"
rootpw {SSHA}aaaaaaaaaaaaaaaaaaaaaa
directory /var/lib/ldap/example.com
suffix : openLDAP에서 사용하는 최상위 DN( 이전 database에서 잡아놓은 database name과 동일하게 작성하면 된다.
rootdn : openLDAP의 관리용 DN으로 object, 사용자 추가 삭제 등에 사용되는 DN이다.
rootpw : 해당 DN을 인증하기 위한 root 패스워드로 string으로 작성해도 되고 암호화된 암호로 지정할 수 있다. 이전 slappasswd로 생성된 패스워드를 사용하면 된다. slappasswd 사용은 권장한다.
directory : database의 위치
위와 같은 설정만 해주어도 기본적으로 openLDAP을 사용하는데 문제는 없다. 하지만 실제 사용을 위해서는 아래와 같은 보안 설정을 해주어야 한다고 한다. 나는 아래 일반 사용자가 자신의 패스워드를 변경할 수 있도록 혀용하는 설정만 사용하고 있다
* 일반 사용자가 자신의 패스워드를 변경할 수 있도록 허용한다.
access to attrs=userPassword
by self write
by anonymous read
by * auth
위 설정 이외에도 여러가지 설정들이 있는데 그 부분은 실제 적용하는 가운데 오류를 발생해서 아직까지는 설정에 적용해 보지 못하였다. 내 생각에는 내부적으로 사용하기 위해서는 이정도 설정만으로도 충분히 사용 가능하다는 생각이다.
물론 운영중 추가한 설정 내용은 추후 포스팅을 따로 하겠다. 아직까지는 큰 이슈 사항은 없는 관계로 기본 설정은 이정도에서 마무리... ㅋㅋㅋㅋ
위 내용은 인터넷에 돌아다니는 내용을 내가 따로 수정한 사항입니다. 최대한 출처를 명시하고 트랙백을 달아가겠지만 혹시라도 빠지거나 할 수 있습니다. 내용을 보시고 혹시 동일 내용을 가지고 계신 분이 계시면 연락주시기 바랍니다. 출처를 최대한 밝히도록 하겠습니다.
다시한번 말씀 드리지만 위 내용은 인터넷에 이미 존재하는 글을 제가 보기 편하게 따로 편집하고 설치 및 운영하면서 느끼는 점을 첨부함을 밝힙니다.
'ººº::Development™:: > ::Linux™::' 카테고리의 다른 글
[LDAP] openLDAP 설치 및 Database (0) | 2011.06.21 |
---|---|
[LDAP] LDAP 시작하기 (0) | 2011.06.21 |
[Linux] 특정 계정만 su -(root)를 통한 root접근 허용 (0) | 2011.04.05 |
[Linux] ssh root 접근 금지 (0) | 2011.04.05 |
[Linux] umount시 device is busy (0) | 2010.05.17 |
openLDAP Server Package
openldap
openldap-clients
openldap-devel
nss_ldap
openldap-servers
openLDAP Client Package
openldap
openldap-clients
openldap-devel
nss_ldap
위와 같은 Package를 설치 한 다음에는 Domain 및 ldap root password 등 아주 기본적인 구성을 설정한다.
password 이후의 구성은 다음 포스트에 자세하게 알아보도록 하자(물론 자세해봐야 아주 기초적인거지만! ㅋㅋㅋ)
Create a Database directory
# mkdir /var/lib/ldap/example.com
# chown ldap:ldap /var/lib/ldap/example.com
그리고 ldap계정과 그룹은 LDAP관련 Package를 설치하면 자동으로 생성된다.
자 기본 설정을 위한 마지막 단계로 openLDAP이 사용하는 root password를 설정한다.
Create an LDAP "root" password
# slappasswd
New password:
Re-enter new password:
{SSHA}aaaLa/aaaaaaaaaaaaaaaaaaaa
#
위 내용은 인터넷에 돌아다니는 내용을 내가 따로 수정한 사항입니다. 최대한 출처를 명시하고 트랙백을 달아가겠지만 혹시라도 빠지거나 할 수 있습니다. 내용을 보시고 혹시 동일 내용을 가지고 계신 분이 계시면 연락주시기 바랍니다. 출처를 최대한 밝히도록 하겠습니다.
다시한번 말씀 드리지만 위 내용은 인터넷에 이미 존재하는 글을 제가 보기 편하게 따로 편집하고 설치 및 운영하면서 느끼는 점을 첨부함을 밝힙니다.
'ººº::Development™:: > ::Linux™::' 카테고리의 다른 글
[LDAP] openLDAP 서버 기본 설정 (0) | 2011.06.22 |
---|---|
[LDAP] LDAP 시작하기 (0) | 2011.06.21 |
[Linux] 특정 계정만 su -(root)를 통한 root접근 허용 (0) | 2011.04.05 |
[Linux] ssh root 접근 금지 (0) | 2011.04.05 |
[Linux] umount시 device is busy (0) | 2010.05.17 |
LDAP 연구소에서 관리하는 서버들의 사용자 권한 문제로 시작해서 어떻게 해결을 할까 하다가 지인을 통해서 알기 시작한 LDAP 이제부터 LDAP이 무엇이고 LDAP을 어떻게 사용하는지 아주 기초적인 내용을 정리한다.
그럼 첫번째로 LDAP이란? 무엇일까..??
LDAP(Lightweight Directory Access Protocol, 라이트웨이트 디렉터리 액세스 프로토콜)은 TCP/IP위에서 디렉터리 서비스를 조회하고 수정하는 응용 프로토콜이다.
디렉터리는 논리, 계급 방식 속에서 조직화된, 비슷한 특성을 가진 객체들의 모임이다. 가장 일반적인 예로는 전화 번호부(telephone directory)가 있는데 가나다 순의 일련의 이름을 가지고 있고, 이름마다 전화 번호와 주소가 포함되어 있다. 이러한 기본 설계 때문에 LDAP는 인증을 위한 다른 서비스에 의해 자주 사용된다.
LDAP 디렉터리 트리는 선택된 모델에 따라 다양한 정치적, 지질학적, 조직적 경계를 반영하기도 한다. 오늘날 LDAP의 배치는 최상위 수준의 계급을 구조화하기 위해 도메인 이름 서비스의 이름을 사용하는 경향이 있다. 디렉터리 안에 들어가면 들어갈수록 사람들, 조직, 프린터, 문서, 그룹 등을 대표하는 항목들이 나타난다.
LDAP의 현재 버전은 LDAPv3이다.
위와 같이 정리가 되어 있지만 난 그냥 "계정관리서버", "LoginServer" 등과 같이 아주 간단하게 생각하고 활용하고 있다. 이 이상의 내용은 내 범위를 벗어나는 문제일꺼 같아서!! ㅋㅋㅋㅋ
위와 같은 프로토콜을 기반으로 공개된 엔진이 openLDAP(http://www.openldap.org)이다. 앞으로 이 openLDAP을 설치하고 setting하는 방법을 하나하나 알아가 보도록 하자..
위 내용은 인터넷에 돌아다니는 내용을 내가 따로 수정한 사항입니다. 최대한 출처를 명시하고 트랙백을 달아가겠지만 혹시라도 빠지거나 할 수 있습니다. 내용을 보시고 혹시 동일 내용을 가지고 계신 분이 계시면 연락주시기 바랍니다. 출처를 최대한 밝히도록 하겠습니다.
다시한번 말씀 드리지만 위 내용은 인터넷에 이미 존재하는 글을 제가 보기 편하게 따로 편집하고 설치 및 운영하면서 느끼는 점을 첨부함을 밝힙니다.
'ººº::Development™:: > ::Linux™::' 카테고리의 다른 글
[LDAP] openLDAP 서버 기본 설정 (0) | 2011.06.22 |
---|---|
[LDAP] openLDAP 설치 및 Database (0) | 2011.06.21 |
[Linux] 특정 계정만 su -(root)를 통한 root접근 허용 (0) | 2011.04.05 |
[Linux] ssh root 접근 금지 (0) | 2011.04.05 |
[Linux] umount시 device is busy (0) | 2010.05.17 |
1. 접근을 허용한 group 생성
2. /etc/group 파일을 열어 특정 그룹의 su 접근 계정 추가.
3. su 소유권 변경
4. su 퍼미션 변경
5. ssh 데몬 재시작
위 방법으로 하나하나 설명해보면
$ addgroup sugroup
$ vi /etc/group
=> sugroup:x:1000:root,(su 접근 계정)
: ex) sugroup:x:1000:root => sugroup:x:1000:root,testuser
위와 같이 수정 후 저장한 다음에 su의 소유권과 퍼미션을 변경한다.
$ chown root:sugroup /bin/su
-rwxr-xr-x 1 root sugroup 44444 1월 11 2011 su
$ chmod 4110 /bin/su
---s--x--- 1 root sugroup 44444 1월 11 2011 su
su의 소유권과 퍼미션을 변경한 다음 "service sshd rstart" 혹은 "/etc/init.d/sshd restart"로 ssh 데몬을 재시작 하면 해당 그룹의 사용자만이 su접근을 할 수 있다.
추가적으로 다른 그룹에 소속된 사용자를 su로 추가할 경우 usermod를 통해 사용자 그룹을 추가한 이후 위와 같은 방법으로 추가하면 된다.
$ groups [username] => 소속된 그룹확인
$ usermod -G enwgroup [username] => 그룹 지정
$ id [username] = 해당 id의 속성 확인
'ººº::Development™:: > ::Linux™::' 카테고리의 다른 글
[LDAP] openLDAP 설치 및 Database (0) | 2011.06.21 |
---|---|
[LDAP] LDAP 시작하기 (0) | 2011.06.21 |
[Linux] ssh root 접근 금지 (0) | 2011.04.05 |
[Linux] umount시 device is busy (0) | 2010.05.17 |
[Cluster] rsh 설치 및 설정하기 (0) | 2010.04.08 |
연구소에서도 이러한 문제로 관리하고 있는 모든 서버의 ssh로의 root접근을 제한해야 하는 상황이 발생하였다. 그래서 또다시 기억하고지 아래와 같이 정리를 해본다.
1. /etc/ssh/sshd_config 파일 수정
2. PermitRootLogin을 no로 수정
3. sshd 데몬 restart
vi editor를 통해 /etc/ssh/sshd_config 파일을 열어서 PermitRootLogin 항목을 찾는다. #을 통해 주석처리가 되어있으면 아래와 같이 주석을 해제하고 값을 no로 설정해 준다.
#LoginGraceTime 2m
#PermitRootLogin yes
#StricModes yes
#MaxAuthTries 6
수정 후
#LoginGraceTime 2m
PermitRootLogin no
#StricModes yes
#MaxAuthTries 6
위와 같이 수정 후 저장한 다음 "service sshd restart" 혹은 "/etc/init.d/sshd restart" 로 ssh 데몬을 재시작 해주면 끝
위와 같이 sshd_config 설정을 해놓으면 ssh로 root접근이 제한되고 일반 계정으로 접속하여 "su -"를 통해 root접근을 해야만 한다.
'ººº::Development™:: > ::Linux™::' 카테고리의 다른 글
[LDAP] LDAP 시작하기 (0) | 2011.06.21 |
---|---|
[Linux] 특정 계정만 su -(root)를 통한 root접근 허용 (0) | 2011.04.05 |
[Linux] umount시 device is busy (0) | 2010.05.17 |
[Cluster] rsh 설치 및 설정하기 (0) | 2010.04.08 |
[Cluster] #1 Cluster 만들기 - 설치 (0) | 2010.04.01 |
umount할 디렉토리를 사용하고 있는 사용자 혹은 프로세스를 확인한다.
umount할 디렉토리를 사용하고 있는 사용자 혹은 프로세스를 모두 죽인다.
이후 umount를 진행하면 일사처리로 해결!^^
'ººº::Development™:: > ::Linux™::' 카테고리의 다른 글
[Linux] 특정 계정만 su -(root)를 통한 root접근 허용 (0) | 2011.04.05 |
---|---|
[Linux] ssh root 접근 금지 (0) | 2011.04.05 |
[Cluster] rsh 설치 및 설정하기 (0) | 2010.04.08 |
[Cluster] #1 Cluster 만들기 - 설치 (0) | 2010.04.01 |
[Tip] 하나의 LanCard에 여러 아이피 Setting (0) | 2010.03.01 |
간단하게 rsh란 remote shell로 보면 된다. 원격에서 해당 호스트의 쉘을 이용하여 작업을 진행할 수 있게 해주는것이라고 보면 된다. rsh를 사용하기 위해서는 먼저 rsh client와 server를 front및 compute node에 설치해 줘야 한다. 해당 package는 인터넷 검색을 통하거나 본 포스팅에서 다운받아 설치하면 된다.
#rpm -Uvh rsh-server-*.rpm
rsh 설치가 완료되었으면 아래와 같이 설정을 해주면 된다. 설정은 front및 compute node에 동일하게 해주면 된다.
1. /etc/services에 kshell 544/tcp krcmd # Kerberized 'rsh'(v5)가 들어있는지 확인
2. /etc/xinetd.d/rsh 및 rlogin 에서 desable = yes를 disable = no로 변경
3. /etc/securetty 맨 아랫줄에 rsh와 rlogin 추가.
4. /etc/hosts.equiv 파일을 만들고 rsh접속을 원하는 hostname을 적어준다. 이때 hostname은 /etc/hosts에 명시된 host와 동일해야 한다.
5. /etc/rc.d/inetd.d/xinetd restat로 xinetd demon 재시작
위와 같은 과정으로 설정을 완료하였으면 일반 사용자는 rsh로 원격 호스트로 접속하는데 문제가 없을 것이다.
하지만 root로 접속을 하기 위해서는 몇가지 과정을 더 거쳐야 한다.
1. root 홈디렉토리에 /.rhosts 파일을 생성해서 /etc/hosts.equiv의 내용을 동일하게 써주거나 혹은 별도로 작성해 준다.
만약 위와 같은 방법으로 접속을 시도했을 경우 password를 물어보면
1. /etc/pam.d/rsh 와 /etc/pam.d/rlogin 내용 중 "auth required pam_rhosts_auth.so" 이 부분을 "auth required pam_rhosts_auth.so promiscuous" 와 같이 수정한다.
만약 위와 같은 방법으로도 password를 물어보면 위 내용을 아이에 주석처리해준다.
설정을 모두 바쳤으면 아래 명령으로 rsh가 정상작동하는지 확인해 보면 된다.
Last login: Thu Apr 8 14:44:38 from gmi3
[host1] #
# rsh host1 "ls"
.. host1의 root 디렉토리 내용 출력
rsh 파일 다운로드
'ººº::Development™:: > ::Linux™::' 카테고리의 다른 글
[Linux] ssh root 접근 금지 (0) | 2011.04.05 |
---|---|
[Linux] umount시 device is busy (0) | 2010.05.17 |
[Cluster] #1 Cluster 만들기 - 설치 (0) | 2010.04.01 |
[Tip] 하나의 LanCard에 여러 아이피 Setting (0) | 2010.03.01 |
[Samba] Samba mount #2 (2) | 2009.11.06 |
Cluster를 만들기위한 여러 솔루션들이 있지만 무료이면서도 만힝 사용되고 있는 Torque를 이용해 Cluster를 구성해 본다.
1. Torque Download
Torque는 아래 사이트에서 최신 버전 혹은 원하는 버전을 다운 받도록 한다.
Torque는 PBS를 기반으로 만들어지고 있다고 한다. 그렇기 때문에 PBS에서 사용가능한 명령어는 Torque에서도 사용 가능하다고 되어 있다(만약 이 부분이 틀렸다면 정확한 내용을 알려주세요~~^^)
2. Torque 설치
Torque는 Front 노트와 Compute노드로 이루어져 있다. 간단하게 설명하면 Frontnode는 작업을 최초 생성하고 Compute노드로 작업을 할당해주는 main head node라고 생각하면 간단하고 compute node는 하위 노드로 단순하게 계산을 처리하는 node로 생각하면 쉽다.
그럼 지금부터 Torque를 설치해 보자
1) Frontnode 설치
# ./configure --prefix=/opt/torque --with-server-home-/opt/torque
# make
# make install
다음으로 torque의 기본적은 서버 환경을 설정해 보자
iniializing TORQUE (admin: ......)
PBS_Ser...
do you wish to continue y/(n) ? y
Max open server : 4
...
###### PBS 에서 사용한 기본적은 compute node 등록
# /opt/torque/server_priv/
# vi nodex
###### PBS 에서 사용한 node 등록
node1 np=4
node2 np=4
이 부분에서 유의할 점은 node명을 ip가 아닌 dns명으로 적어주어야 한다(사실 ip로 해보지는 않았음). 보통은 /etc/hosts 파일명에 가상의 cluster ip를 dns명으로 메핑해주고 이곳에 node로 등록해 주면 된다.
2) Compute node 설치
1)에서와 같이 front node를 설치했으면 이제 실제 계산이 이루어지는 compute node를 설치해야 한다. 설치는 아래와 같다. front node 설치는 아주 간단하다.
node1: ...
...
node1: Done
# vi config
########## pbs_mom config
$pbsserver node0
#logever 255
자 이렇게 모든 설치가 완료되었으면 이제 모든 front 및 compute node에서 pbs_mom을 재실해 준다. 실행파일은 /opt/torquq/sbin/pbs_mom, pbs_server 이다.
다음으로 front node에서 pbsnodes -a 명령을 통해 모든 compute node가 정상적으로 올라오는지 확인하면된다.
정상적으로 pbs_mom이 작동하고 있으면 모든 노드에서 state가 free로 되어 있어야 한다.
다음에 torque를 좀더 자세하게 설정해보도록 하겠다.
'ººº::Development™:: > ::Linux™::' 카테고리의 다른 글
[Linux] umount시 device is busy (0) | 2010.05.17 |
---|---|
[Cluster] rsh 설치 및 설정하기 (0) | 2010.04.08 |
[Tip] 하나의 LanCard에 여러 아이피 Setting (0) | 2010.03.01 |
[Samba] Samba mount #2 (2) | 2009.11.06 |
[Linux] Samba mount (0) | 2009.09.01 |