'ITWeb/서버관리'에 해당되는 글 125건

  1. 2012.05.09 [qmail] ucspi-tcp 설치
  2. 2012.05.08 우분투 rpmbuild 설치
  3. 2012.05.08 우분투에 deb 파일 설치 하기.
  4. 2012.05.08 우분투 고정IP 설정
  5. 2012.04.23 git 사내 협업도구 구성.
  6. 2012.04.23 우분투에 크롬 설치하기.
  7. 2012.04.20 git 구성하기.
  8. 2012.04.20 Qmail, pop3, imap 관련.
  9. 2012.04.19 Qmail 라우팅
  10. 2012.04.18 The Qmail Pictures

[qmail] ucspi-tcp 설치

ITWeb/서버관리 2012. 5. 9. 11:51

[원본링크]

http://cr.yp.to/ucspi-tcp.html
http://cr.yp.to/ucspi-tcp/install.html
http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz


[원본글]

D. J. Bernstein 
TCP/IP

ucspi-tcp

How to install ucspi-tcp 
Upgrading from previous versions of ucspi-tcp

The tcpserver program 
The tcprules program 
The tcprulescheck program 
The argv0 program 
The fixcrio program 
The recordio program 
The rblsmtpd program

The tcpclient program 
The who@ program 
The date@ program 
The finger@ program 
The http@ program 
The tcpcat program 
The mconnect program 
The addcr and delcr programs

TCP environment variables


What is it?

tcpserver and tcpclient are easy-to-use command-line tools for building TCP client-server applications.

tcpserver waits for incoming connections and, for each connection, runs a program of your choice. Your program receives environment variables showing the local and remote host names, IP addresses, and port numbers.

tcpserver offers a concurrency limit to protect you from running out of processes and memory. When you are handling 40 (by default) simultaneous connections, tcpserver smoothly defers acceptance of new connections.

tcpserver also provides TCP access control features, similar to tcp-wrappers/tcpd's hosts.allow but much faster. Its access control rules are compiled into a hashed format with cdb, so it can easily deal with thousands of different hosts.

This package includes a recordio tool that monitors all the input and output of a server.

tcpclient makes a TCP connection and runs a program of your choice. It sets up the same environment variables as tcpserver.

This package includes several sample clients built on top of tcpclient: who@, date@, finger@, http@, tcpcat, and mconnect.

tcpserver and tcpclient conform to UCSPI, the UNIX Client-Server Program Interface, using the TCP protocol. UCSPI tools are available for several different networks.

Other command-line TCP tools

The current ucspi-tcp interface is a refinement of the tcpserver/tcpclient interface in my 1991 clientserver package, which replaced the attachport/authtcp interface in my 1989 auth package.

ucspi-tcp now competes with several other programs:

  • inetd, a root-only TCP server supplied by all UNIX vendors;
  • xinetd, a replacement for inetd;
  • the mconnect client supplied as part of SunOS;
  • the socket program;
  • faucet and hose, part of the netpipes package; and
  • the netcat program, which also supports UDP.

Many sites are replacing inetd with tcpserver, for several reasons:

  • inetd is unreliable under high loads. It cuts off service for 10 minutes if it receives ``too many'' connections in 1 minute.
  • inetd does not provide effective resource management. It will happily use up all your memory if you are running a popular service.
  • inetd has trouble with sudden bursts of activity. Its listen() backlog is typically only 5 or 10 and cannot be raised.


D. J. Bernstein 
TCP/IP 
ucspi-tcp

How to install ucspi-tcp

Like any other piece of software (and information generally), ucspi-tcp comes with NO WARRANTY.

System requirements

ucspi-tcp works only under UNIX.

Installation

Download the ucspi-tcp package. The latest published ucspi-tcp package is ucspi-tcp-0.88.tar.gz.

Unpack the ucspi-tcp package:

     gunzip ucspi-tcp-0.88.tar
     tar -xf ucspi-tcp-0.88.tar
     cd ucspi-tcp-0.88

Compile the ucspi-tcp programs:

     make

As root, install the ucspi-tcp programs under /usr/local:

     make setup check

To report success:

     ( echo 'First M. Last'; cat `cat SYSDEPS` ) \
     | mail djb-sysdeps@cr.yp.to 

Replace First M. Last with your name.


ucspi-tcp-0.88.tar.gz


:

우분투 rpmbuild 설치

ITWeb/서버관리 2012. 5. 8. 17:18

우분투에 rpmbuild 를 사용하기 위해서는 rpm 패키지를 설치 하면 됩니다.

sudo apt-get install rpm

:

우분투에 deb 파일 설치 하기.

ITWeb/서버관리 2012. 5. 8. 16:22

deb 파일을 다운로드 받으셨다면.. 아래와 같이 설치 하시면 됩니다.

sudo dpkg -i 패키지.deb

예) 구글 크롬 설치
sudo apt-get install libnss3-1d libxss1
sudo dpkg -i google-chrome-stable_current_i386.deb


:

우분투 고정IP 설정

ITWeb/서버관리 2012. 5. 8. 16:17

우분투에 고정IP 설정하기.

[IP 설정하기]

sudo vi /etc/network/interfaces
#처음 설치 하셨다면 들어 있던 내용 다 삭제 하시고 아래 내용으로 넣으시면 됩니다.


[추가내용]
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 10.67.16.27
netmask 255.255.255.0
gateway 10.67.16.1

[DNS 설정]

sudo vi /etc/resolv.conf
# 처음 설치 하셨으면 있던 내용 다 삭제 하시거나 제일 마지막 줄에 넣어 주심 됩니다.

nameserver 10.22.64.6

[서비스 재시작]
sudo /etc/init.d/networking restart


:

git 사내 협업도구 구성.

ITWeb/서버관리 2012. 4. 23. 19:16

보안 이슈로 인해 사내 소스코드를 github 에 public 하게 못 올리다보니.. private 구성을 해봤습니다.
다들 잘 아시는 내용이라.. 저는 그냥 제가 공부하는 차원에서 remind 합니다.


모두 우분투 환경입니다. ^^*


[필요서버]

master 로 사용할 서버 한 대. (192.168.1.1)

local 개발서버 한 대. (192.168.1.2)

[git install]
이전 글 : http://jjeong.tistory.com/650

sudo apt-get install git git-gui git-doc

[git repository]

mkdir git-test (or test.git, 저장소 생성 할때 나름 만들어진 name rule 같내요)

cd git-test

git init

(or git init --bare, 이건 아래 나오겠지만 git push 했을 때 deny 오류가 나지 않도록 하기 위함 입니다. 저는 실제 이렇게 하지는 않았구요, .git/config 를 수정했습니다.)

vi helloworld.txt // 아무 텍스트나 작성해 보시고 저장 후 나오세요.

git add helloworld.txt

git commit -m "init helloworld.txt"

[git clone]
ssh 를 이용해서 clone 작업했습니다.
svn 의 checkout 과 같다고 보시면 됩니다.

[local 개발서버]

git clone jjeong@192.168.1.1:/home/jjeong/git-test

vi helloworld.txt // checkout 텍스트를 삽입 하고 나오세요.

git commit -m "clone text add checkout"

git push

[error detection]

remote: error: refusing to update checked out branch: refs/heads/master

remote: error: By default, updating the current branch in a non-bare repository

remote: error: is denied, because it will make the index and work tree inconsistent

remote: error: with what you pushed, and will require 'git reset --hard' to match

remote: error: the work tree to HEAD.

remote: error: 

remote: error: You can set 'receive.denyCurrentBranch' configuration variable to

remote: error: 'ignore' or 'warn' in the remote repository to allow pushing into

remote: error: its current branch; however, this is not recommended unless you

remote: error: arranged to update its work tree to match what you pushed in some

remote: error: other way.

remote: error: 

remote: error: To squelch this message and still keep the default behaviour, set

remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.

이런 에러 발생 시 아래 master 서버에 코드 추가

[master 서버]

vi git-test/.git/config
아래 코드 추가 합니다.

[receive]

    denyCurrentBranch = false


[local 개발서버]

git push 

[git master 반영]
이 부분에서 제가 local 에서 push 한 후 master 쪽 파일 업데이트가 잘 되었는지 확인하는 command 를 몰라서
걍 강제로 적용했구요..ㅡ.ㅡ;;
git log 확인 후 git resert --hard 마지막COMMIT.HASHCODE
다른 방법으로는.. 걍 clone 을 한번 더 떠봤습니다.

git clone jjeong@192.168.1.1:/home/jjeong/git-test git-clone
이렇게 하신 후 git-clone 에 들어 가서 바로 직전에 commit 하고 push 한게 잘 반영 되었는지 확인 하면 되겠습니다.

[master 업데이트 된거 반영]

[local 개발서버]

git pull // 하시면 master 꺼로 업데이트 합니다. (pull 은.. merge 가 아닙니다. 그냥 덮어씁니다.)

[branch & merge]
전 그냥 local 개발서버에서 branch 생성하고 걍.. 거기서 merge 까지 테스트 했습니다.

[local 개발서버]

git branch git-branch

git checkout git-branch

vi helloworld.txt // 그냥 수정해 보세요.

git add helloworld.txt

git commit helloworld.txt -m "오타 내기"

git checkout origin/master

git merge git-branch

기타 git 매뉴얼은 git 사이트에서 참고 하시면 됩니다.

:

우분투에 크롬 설치하기.

ITWeb/서버관리 2012. 4. 23. 17:11

우분투 소프트웨어 센터에서 검색 해서 설치 하시면 되는데요.
저는 404 not found 나서 그냥 구글 크롬 직접 다운로드 받아 설치 했습니다.
다운받은 파일을 그냥 더블클릭 하면 설치가 되어야 하는데.. 또 설치가 안되더라구요.
그래서 걍 터미널 에서 아래와 같이 설치 했습니다.

설치 시 패키지 Dependency 가 있습니다.
아래 패키지 먼저 설치 한 후 설치 하시면 됩니다.

[Dependency Packages]

libxss1, libcurl3

sudo apt-get install libxss1 libcurl3

[Chrome Install]

cd 다운로드

sudo dpkg -i google-chrome-stable_current_i386.deb


:

git 구성하기.

ITWeb/서버관리 2012. 4. 20. 16:49

코드머지 어쩌구 땜시.. git 까지 왔내요.. ^^;

구성, 설치 등등 모든 정보는 사이트에 잘 나와 있습니다.

처음 하시는 분은 beginner 참고 하시면 될 것 같구요.

추천할만한 사이트 링크 공유 합니다.

git 는 설치하게 되면 내가 repository 다. 라고 합니다.
위에 slideshare 문서 보시면.. 그렇다고 하지요.. ^^
만약 사내에서 git 를 이용해서 개발자간 프로젝트를 수행해야 한다면 github.com 과 같은 역할을 하는 서버 하나 구성하고 git 올리고 그넘한테서 clone 받아 push, pull 하면 사내용 github 를 구성할 수 있는게 아닌가 싶내요.

(git clone git@HostName:repository/Project)

뭐, 오늘은 걍.. 우분투에 git 설치 하고 repository 생성하고 파일 올리고 수정하고 등등만 해봤으니, 담주에 위에 이야기 한거 함 해봐야 겠내요.

:

Qmail, pop3, imap 관련.

ITWeb/서버관리 2012. 4. 20. 10:44


MTA : SMTP 지원 서버 sendmail , qmail 등 ...
MUA : outlook 등
MDA : MTA 가 메일을 수신받아 메일함에 저장하는 agent ex) vpopmail , qmail-local....
MRA : 리모트 서버에 있는 우편함으로부터 사용자의 MUA로 메시지를 가져오는 프로그램 ex) dovecot , courier-imap , qmail-pop3d ....

1. qmail에서 pop3 는 기본 패키지

http://www.nrg4u.com/qmail/the-big-qmail-picture-103-a4.pdf

여기서 보통 qmail 사용시 vpopmail 을 함께 연동해서 가상도메인(/etc/passwd에 계정 생성하지 않아도됨)을 사용해서
계정/도메인을 관리할수 있음
vpopmail 용도는? http://qmail.kldp.net/phpbb/viewtopic.php?f=2&t=4502&start=0

vpopmail을 사용하게 되면 qmail 기본 패키지 checkpassword 대신 vchkpw 사용하게됨

결론적으로 pop3는 기본 qmail 패키지 이용하는게 일반적임

2. imap 경우 기본 qmail 에서 제공하지 않고 여러 오픈소스가 있음 구글링해보면 주로 qmail + dovecot 와 qmail+ courier-imap 을 많이 검색됨

   (꼭 imap 뿐아니라 설정에 따라 pop3 도 지원함)

 
dovecot를 설치 : http://community.365managed.com/?document_srl=191, http://www.dovecot.org/download.html

:

Qmail 라우팅

ITWeb/서버관리 2012. 4. 19. 15:51

Qmail smtproutes 설정 글들 링크 두개 추가 합니다.


[원본링크]

http://community.365managed.com/?document_srl=843&mid=server

[원본글]


[원본링크]

http://community.365managed.com/?document_srl=857

[원본글]


:

The Qmail Pictures

ITWeb/서버관리 2012. 4. 18. 22:53

[원본링크]

http://cr.yp.to/qmail/pictures.html

[Local to local]

[Local to local extension]

[Local to virtual]

[Local to local alias]

[Local to remote]

[Null Client]

[Remote to local]

[Unauthorized relaying]

[Authorized relaying]


: