2008.05.19 20:36
SSH 서버 설정
리눅스가 설치된 서버에는 기본적으로 telnet이나, ssh를 설치해서 원격으로 서버를 관리하게 된다.
telnet이나 ssh가 설치되어 있는지 확인하려면, 아래와 같이 확인할 수 있다. 물론, source 버전을 컴파일해서 사용하는 경우도 있겠지만, 특별한 경우를 제외하고는 기본 제공되는 rpm 버전을 사용하면 된다.
telnet의 경우는 패킷을 전송할 때 평문으로 전송을하며, ssh는 패킷을 암호화 해서 전송을 하게 된다. telnet의 경우는 보안상 취약하기 때문에 ssh를 사용할 것을 권장한다.
[root@localhost root]# rpm -qa | grep telnet telnet-server-0.17-20 telnet-0.17-20 [root@localhost root]# rpm -qa | grep ssh openssh-askpass-3.1p1-3 openssh-clients-3.1p1-3 openssh-3.1p1-3 openssh-server-3.1p1-3 openssh-askpass-gnome-3.1p1-3 [root@localhost root]# |
ssh의 기본 설정 파일은 /etc/ssh/sshd_config 파일이다. 설정파일에서 ssh가 사용할 포트, 접속 가능한 계정이나, ip주소 등을 제한 할 수도 있지만, default 설정사항을 그대로 사용해도 무방하다.
ssh로 원격지 서버에 접속을 하려면 우선 서버상에 아래와 같이 ssh 데몬이 정상적으로 떠 있어야 한다.
[root@localhost xinetd.d]# netstat -natp | grep LISTEN tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 1487/proftpd: (accept) tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1794/sshd [root@localhost xinetd.d]# ps aux | grep ssh root 1723 0.0 0.7 3636 1800 ? S root 1794 0.0 0.4 2696 1072 ? S |
만약 ssh데몬이 떠있지 않다면, 원격으로 서버에 접속할 수 없으며, 콘솔상에서 아래와 같은 명령으로 ssh 데몬을 실행해야 한다.
[root@localhost xinetd.d]# /etc/rc.d/init.d/sshd start Starting sshd: [ OK ] 또는 [root@localhost xinetd.d]# service sshd start Starting sshd: [ OK ] |
위와 같이 ssh 데몬이 정상적으로 구동이 되었다면, 원격으로 ssh를 통해서 접속이 가능하다.
만약 서버 부팅시 ssh데몬이 자동으로 뜨도록 설정이 되어 있지 않다면, 아래와 같은 방법으로 ssh 데몬이 자동 구동되도록 설정 할 수 있다.
[root@localhost xinetd.d]# chkconfig --list | grep ssh sshd 0:off 1:off 2:off 3:off 4:off 5:off 6:off [root@localhost xinetd.d]# chkconfig --level 345 sshd on à 런레벨 3,4,5로 부팅시에 ssh 데몬 실행 [root@localhost xinetd.d]# chkconfig --list | grep ssh sshd 0:off 1:off 2:off 3:on 4:on 5:on 6:off |
chkconfig 명령 이외에 ntsysv 명령어를 사용해도 부팅시에 자동으로 실행될 데몬을 선택할 수 있다.
명령 프롬프트 상에서 ntsysv 명령을 입력하고 sshd 데몬을 선택후 빠져나오면 재부팅시에 자동으로 ssh데몬이 실행되게 된다.
ssh 프로그램으로 서버에 접속하기
윈도우에서 리눅스 서버로 ssh 접속을 하기 위해서는 ssh 접속 프로그램을 이용해야 한다. 일반적으로 putty, zterm, sshwin,
1. putty 사용하기.
- putty를 실행하고, host name에 접속할 서버의 주소를 입력하고, protocol 부분에 ssh를 선택한 후 port 번호를 확인하고 open을 클릭하여 접속한다.