Monthly Archives: October 2011

[우분투 서버 설치-04]톰캣 jsp연결

‘sun-java6-jdk’ 패키지는 설치할 수 있는 후보가 없습니다

openjdk로 밀고있는 듯 하다.

partner repository 경로 추가.

sudo add-apt-repository “deb http://archive.canonical.com/ubuntu maverick partner

소스까지 하고싶으면

sudo add-apt-repository “deb-src http://archive.canonical.com/ubuntu maverickpartner

해준뒤

sudo apt-get update

이러면 갱신된 레퍼지토리로 업데이트작업함.

이후에

sudo apt-get install sun-java6-jdk

 

설정파일들

/etc/default/tomcat6

/etc/tomcat6

 

버추어 호스트에서 사용

 

UBUNTU11 Subversion Virtual host 사용하는 경우 sites-available 설정

svn.도메인.com을 주소로 한다고 가정하고 설명한다.

우분투 기본설치 경로인

/etc/apache2/sites-available에서

 

$ sudo cp default svn

$ sudo gedit svn

편집 후

$ sudo a2ensite svn

$ sudo /etc/init.d/apache2 restart

완료… 간단하다. VirtualHost 사용해본분들은 쉽게 할 수 있을듯…

그냥 밑에 //////////////로 둘러싼 부분을 끼워넣으면 된다.

주석 #로 된 부분을 해제하면 svn.도메인.com/svn/OpenRepository로 OpenRepository에 접속이 된다.

 

<VirtualHost *:80>
ServerAdmin webmaster@localhost
////////////////////////////
ServerName svn.도메인.com
#<Location /svn/OpenRepository> (이 부분의 주석을 해제하면 svn.도메인.com/svn/OpenRepository로 접속이 된다)
#    DAV svn
#    SVNPath /home/svn/OpenRepository
#    AuthType Basic
#    AuthName “Welcome  Open Subversion Repository”
#</Location>
#<Location /svn/repository>
<Location /> ( svn.도메인.com/으로 접속이 된다는 소리… ‘/Secure’이라고 해놓으면 svn.도메인.com/Secure’으로 접속할 수 있게된다)

DAV svn
SVNPath /home/svn/repository
AuthType Basic
AuthName “Welcome Secure Subversion Repository”
AuthUserFile /etc/subversion/passwd
Require valid-user
</Location>
////////////////////////////////////////
#    DocumentRoot /home/itvader/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory “/usr/lib/cgi-bin”>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined

Alias /doc/ “/usr/share/doc/”
<Directory “/usr/share/doc/”>
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>

[우분투 서버 설치-03]설정하기 apache2,samba,mysql,postgresql,vsftp,subversion

apache설정

virtualhost설정

cd /etc/apache2/sites-available

sudo cp default www.polypia.net(기본 파일을 복사해서 도메인 주소로)

sudo cp default memo.polypia.net (파일을 만들고)

sudo nano www(에디트)

————————————————-

<VirtualHost *.80>

ServerAdmin 2345jjkljlfkjkl어쩌고 이 밑에

ServerName www.polypia.net ###이건 서버 이름 도메인 주소를 써주면된다

ServerAlias polypia.net ####이건 서버의 별명

DocumentRoot /var/www ##이건 파일의 경로

대강 이 부분만 손보면 된다.

virtualhost를 사용하지 않을 생각이라면 default만 손보면 될까….

————————————————-

에디트 다 했으면

sudo a2ensite www.polypia.net

sudo a2ensite memo.polypia.net(a2ensite를 해야 아파치에서 일을 시작한다)

sudo /etc/init.d/apache2 restart(아파치 재시작 하면 적용됨)

/etc/apache2/httpd.conf 이 파일에는

ServerName localhost

를 추가해주자.  큰 문제가 생기는건 아니고 실행시킬 때 오류가 뜬다

http.conf에 추가하기 싫다면 conf-available에 넣어주고 a2enconf를 해주면 된다

 

samba설정

sudo adduser userid(삼바에서 사용할 우분투 계정을 만든다)

sudo nano /etc/sudoers(수도추가)

root All=(ALL)ALL

[userid] ALL=(ALL)ALL(이거 추가)

sudo smbpasswd -a userid (계정을 삼바에 셋팅)

sudo nano /etc/samba/smb.conf(설정파일 에디트)

적당한데다가 이런식으로 써넣는다.

————————————-

[공유명]

comment=코멘트겄지여

path=/home/너님의아이디/공유할폴더 (이런식으로 공유할경로를 넣어줌)

guest ok = yes(이렇게 하면 계정도 필요없음 계정을 만들었으면 no)

browseable=yes(파일을 볼 수 있을까? 예스)

writeable=yes(쓰는것도 예스)

————————————-

방화벽을 잘 막아놨다면 이 부분을 게스트 ok로 해놔도 되긴되는데..

막아놓는게 나을 것 같다.

sudo /etc/init.d/smbd restart

mysql설정

이건 그냥 됐던것같다. 기본 비밀번호설정은 설치시 자동으로 된다. 따로 하려묜

sudo mysql -u

postgresql설정

local에서라면 별 설정이  필요없다. pgadmin3라던가 깔아쓰면된다

$sudo nano /etc/postgresql/8.4/main/postgresql.conf

————————————

listen_addresses = ‘*’
password_encryption = on

————————————

/etc/postgresql/8.4/main/pg_hba.conf

—————————————-

# TYPE DATABASE USER CIDR-ADDRESS METHOD
host all all ip.ip.ip.ip/32 md5

—————————————-

$sudo -u postgres psql postgres

postgres=# ALTER USER postgres WITH ENCRYPTED PASSWORD ‘설정할패스워드’;

postgres=# q

사용자추가

http://www.postgresql.org/docs/8.4/interactive/app-createuser.html

 

DB추가

http://www.postgresql.org/docs/8.4/interactive/app-createdb.html

vsftp설정

/etc/vsftpd/vsftpd.conf

변경–
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO

local_enable=YES
local_umask=022

ftp는 간단하다 이정도만으로 접속은 된다. 상세 설정은 좀 성가시겠지만…

로그인은 우분투 계정으로

subversion설정

 

적당한 위치에 가서

 

$sudo svnadmin create /home/svn

 

$sudo chown www-data:www-data /home/svn -R

그 다음 블로그를 따라 설정..

http://lethean.pe.kr/2009/07/16/manage-subversion-repositories-in-ubuntu/

추가로subversion virtual host로 설정하기

버추어호스트는 윗쪽의 설정을 다 한 후에 해야된다.

http://itvader1.tistory.com/4

구글에서 한참 검색하니 나오는건 내 블로그 ㅋㅋ

 

 

 

[우분투 서버 설치-02]APM과 방화벽설치

이걸 소스코드로 설치하려면 라이브러리만 수백개다.

우분투는 그냥 패키지로 설치하면 편하다.

패키지는 우분투에서 설치하기 편하게 컴파일 해서 제공하는 패키지다.

 

패키지 is 패키지

 

sudo apt-get install 설치할패키지명

sudo apt-get install 패키지 패키지 패키지 (띄어쓰기로 여러개 입력가능)

설치된거 또 입력한다고 두번 깔리지는 않는다.

패키지명만 나열한다.

openssh-server

openssh-client

ssh-askpass-gnome

apache2

libapache2-mod-auth-mysql

mysql

mysql-client

mysql-server

php5

php5-common

libapache2-mod-php5

php5-mysql

(mono를 설치할 경우)

mono-apache-server

libapache2-mod-mono

(톱캣jsp용)

tomcat6

tomcat6-common

tomcat6-admin

libapache2-mod-jk

(ftp서버)

vsftp

(쌈바)

samba

smbfs

(php DB관리툴)

phpmyadmin

phppgadmin(postgresql용인데 phpmyadmin만큼 좋지는 않음)

(postgresql DB)

postgresql-8.4

(svn 서버)

subversion

이거말고는 패키지명을 까먹었는데….5개정도 되는거 있다.

 

설치끝…

이제 설정

/etc/mysql/my.cnf

/etc/apache2/apache2.conf(이 파일을 직접 편집하는 것은 권장하지 않는다)

/etc/apache2/sites-available(버추어호스트를 쓸거라면 이쪽으로….

이건 아는사람만 아는건데….

사실 설정파일 속에 설정을 어떻게 해야하는지 다 설명이 돼 있다.

잘 모르겠으면 구글검색하면 나오기도 하고…

설정까지 한 페이지에 하는것은 무리인 것 같다.

3편이후 추가해야할 포스트

apache설정

samba설정

mysql설정

postgresql설정

vsftp설정

subversion설정

사실 패키지로 설치하면 거의 자동으로 셋팅이 끝나서 손볼게 거의 없다.

 

설치할거 설치했으니 이제 보안설정

iptables를 직접 손대면 힘드니까 ufw라는 방화벽 어플을 사용한다.

 

sudo ufw enable

sudo ufw allow from 333.333.33.33 to port 22(원격으로 접속하고 있다면 본인의 ip 지정)

sudo ufw default deny

sudo ufw allow 80/tcp

뭐 이런식으로 치면 되는데 자세한 명령은 이쪽을 참고

http://www.ubuntu.or.kr/wiki/doku.php?id=program:ufw%EC%84%A4%EC%A0%95

 

네트워크 환경에 따라 다른 설정을 해 줘야된다.

http포트인 80/tcp는 개방되어야하고

ftp인 21은 사람에 따라 다르고

ssh포트인 22는 역시 환경에 따라 다르다.

samba인 겨우 137 138 udp 139 445 tcp가 열려있어야된다.

mysql 3306

postgresql 5432

db는 원격접속을 안할거라면 로컬로 지정해놓으면 된다.

돈이 많아서 db서버를 별도로 운영한다면 별도 지정해놓으면 되고….

내부네트워크에서만 원격이라면 내부네트워크 주소만 적어주면 된다.

방화벽은 조금 고민이 필요하다.

공통적으로 외부에 노출되는것은 80포트…

 

이정도쯤이다. 처음부터 깔끔하게 완성시킬 필요는 없다. 하나하나 안될때마다 고쳐가면 편하다.

 

이야 우분투라서 이정도지… centos정도였으면 몇년 걸렸을 것 같다.

설치순서 메뉴얼이 완성되면 스크립트로 만드는 것도 가능할 것 같다.

 

 

[우분투 서버 설치-01]다운로드 및 준비과정-os설치

www.ubuntu.com

http://ftp.daum.net/ubuntu-releases/

둘중 한곳으로 가서 원하는 버전을 다운로드 받는다.

 

desktop 또는 server 아무 버전이나 상관없지만 개인적으로 데스크탑 버전을 선호한다.

본격적으로 서버를 운영하기로 맘 먹었기 때문에 이번에는 나중에 isp센터에 입주할것까지 생각해서 연습삼아 server로 설치했다.

server버전이 효율도 더 좋지 않을까 생각한다.

 

www.ubuntu.com에 가면 설치 usb만들기 방법이 나오는데 윈도우에서는 서버용 usb가 잘 안되는 것 같다.

결국 데스크탑에 깔려있는 리눅스로 설치 usb를 만들어 설치했다.

그냥 cd로 설치하면 제일 속편하다.

 

서버용으로 하면 설치과정에 헷갈리는 부분이 조금 있다.

 

LVM이라는게 있는데 논리적으로 여러개의 하드를 한개 하드처럼 쓸 수 있게 해 주는 것 같다.

내가 이것을 기술적으로 제대로 이해를 하고 있는지는 모르겠지만 하드가 날라가면 위험하지 않을까 하는 생각이 든다. 이것보다는 그냥 raid를 사용하는게 나을 것 같다.

하드가 여러개라면 그냥 폴더에 마운트 시켜서 쓰면 된다.

 

설치중에 서버용 어플리케이션들 선택하는 부분이 있는데 적당히 선택해주면 된다.

http/ftp/samba/openssh/apache/tomcat6 이정도였나…?

여기서 선택 못하면 나중에 설치하면 된다.

 

그리고 하나 더 있었는데 우분투 클라우드 어쩌고로 설치하는게 있는데… 정확히 모르겠다. 아직 실험단계인듯하니 …

나중에 한번 여유가 되면 설치 해 봐야겠다