태그 글 보관함: 초기 설정

터미널 글자색 컬러로 나오게 하는 방법. 우분투 서버 20.04 LTS

글 제목을 바꾸었다.
터미널 글자색 컬러로 나오게 하는 방법. 우분투 서버 18.04 LTS에서 터미널 글자색 컬러로 나오게 하는 방법. 우분투 서버 20.04 LTS 로.
그렇다. 우분투 서버 20.04 도 터미널 컬러는 아래와 같이 바꾸면 된다.

터미널 컬러는 왜 기본이 아닐까…
우분투 서버 18.04 LTS/우분투 서버 20.04 LTS 설치하고 제일 먼저 해야하는 일.

홈디렉토리 이동 후 .bashrc 를 편집한다.

아래 줄을 찾아서 주석을 해제하자.

.bashrc 파일을 적용.

이전 글 우분투 서버 14.04 에서는 /etc/skel/.bashrc 파일을 가져와서 홈디렉토리의 .bashrc 파일을 덮어 썼는데 18.04 에선 바뀌었나…
어쨋든 위 방법으로 해결했다.

20.04 버전에서 설치하자마자 확인해 봤는데 /etc/skel/.bashrc 파일과 홈의 유저 디렉토리의 .bashrc 파일은 똑같았다.
그냥 force_color_prompt=yes 요걸 주석 해제하는 방법으로 가야한다.
 
 
관련글: 터미널 글자색 컬러가 나오게 하는 방법. 우분투 서버 14.04 LTS

DBeaver 포터블판 jre를 찾지 못해서 실행 안되는 문제

DBeaver(디비버) 포터블판 jre(자바 경로)를 찾지 못하는 문제를 해결해 보자.

디비버는 이클립스와 같은 플랫폼으로 만들어져 있는데, 이클립스도 요즘은 jre를 포함해서 배포되고 해서 안그렇지만, 예전엔 이렇게 자바 경로를 못찾아서 똑같은 에러가 나고 그랬다.
자바 경로를 제대로 찾지 못할 경우에는 디비버를 실행하면 아래와 같은 에러가 표시 된다.

dbeaver jre error

dbeaver.ini 편집

디비버 디렉토리에 있는 dbeaver.ini 파일을 열어서 -vmargs 바로 윗줄에 jre 나 jdk 의 bin 디렉토리까지의 전체경로를 적어준다.

저장하고, 디비버 실행해 보면 잘 실행될 것이다.

별것도 아닌데 검색해 봐도 잘 나오질 않아서 글을 써 본다.

DB툴로 디비버는 추천

블로그에 사용하는 워드프레스는 mysql계열만 지원하고,
나는 개인적으로 postgresql를 선호해서 여러 디비를 사용할 때 디비버 같은 툴이 아주 편하다.

디비버 단점은 메모리를 많이 먹는다는거.
같은 플랫폼에서 개발된 이클립스도 같은 문제인데 요즘은 컴 성능이 상향평준화 되어서 메모리 많이 먹는건 불평거리가 못되는것 같고, 단지 로딩이 좀 느릴뿐이다.

가벼운걸 원하면 일본 개발현장에선 a5m2라고 하는 툴(정식 명칭이 A5:SQL Mk-2. 길다)을 많이 쓰는데 못생기고 기능이 디비버만큼 많지는 않지만,
딱 필요한 기능은 다 있어서 일할 때는 잘 쓰고 있다.

개인PC에서 사용할때는 컴 사양이 좋다보니 그냥 이쁘고 이것저것 다 되는 디비버가 좋은듯하다.
사실 오래전에 설치만 해두고 안쓰고 있다가 요즘 며칠동안 써 봤는데 일단 이쁘고. 화면 구성이 복잡하긴 한데 메뉴들이 직관적이라 헤매지는 않아서 좋다.
 
 
디비버는 커뮤니티 에디션만 무료다. 인터프라이즈 에디션은 시험버전만 사용가능.
DBeaver 다운로드 페이지 – https://dbeaver.io/download/

우분투 18.04 fail2ban 설정 iptables ipset 을 사용한 밴

집에 있는 서버를 사용할 때는 ssh 에 접속하는 22번 포트를 다른 포트 번호로 바꿔서 쓰거나 공유기의 포트포워딩으로 외부 1022번 포트를 내부 22번으로 연결해서 사용하거나 해서 딱히 외부에서 ssh로 무작위 대입 공격 같은건 당하지 않았다.
지금 쓰고 있는 오라클 클라우드 서버에서는 포트포워딩이 되는지도 모르겠고, 방화벽 문제도 있고 해서 ssh 디폴트값인 22번 포트를 사용하고 있는데, 얼마나 많이들 들어오는지… fail2ban을 설치하고 보니 3일 동안 밴한 IP가 천개는 가뿐히 넘었다.
방화벽을 기본 iptables 를 사용하고 있다보니, 밴한 IP 가 전부 iptables 에 저장되어서, iptables 건드리려고 하면 너무 양이 많아서 곤란해졌다.

iptables 가 비대해지면 속도도 느려지고 하니, ipset 을 설치해서 여러 IP를 세트로 묶어서 밴하도록 하자.

먼저 ipset 을 설치

fail2ban 을 설치안했으면 설치하자.

jail.local 파일을 작성 and 편집

jail.local 파일에 아래 내용을 쓴다.

[DEFAULT] 아래는 전체적으로 적용 되는 내용이고 [sshd] 는 ssh 접속에 한해서 적용되는 내용이다.
bantime 은 밴을 할 시간, findtime 은 이 시간 안에 접속 횟수가 초과 되면 밴을 한다.
ignoreip 는 밴을 하지 않을 IP 이다. 가정이라면 IP 가 바뀌기 때문에 소용이 없을테지만, 고정 IP 서버가 있다면 경유해서 접속이 가능하니 적어두면 좋다.
maxretry 는 ssh 공개키를 쓸때는 우리가 틀릴일이 없기 떄문에 0으로 설정해도 되지만, 패스워드를 입력해서 들어갈 경우에는 3이나 5정도로 여유를 두는게 좋다. 본인이 틀려서 밴 먹으면 곤란하겠지?

ipset을 사용해서 iptable로 밴을 하기 위해서 설정하는 것이 banaction 이다.
우분투 18.04 에서 ipset 을 설치하면 ipset -V 명령을 실행하면 표시 되는 프로토콜 버전이 6이기 때문에 iptables-ipset-proto6 을 사용한다. 우분투의 다른 버전이나 다른 리눅스 배포판을 사용하고 있으면 프로토콜 버전을 확인하고 설정하자. (6 이외에는 4 버전이 있다.)
banaction_allports 는 말그대로 모든 포트를 밴해버리는 설정인데, 딱히 다른 곳에서 저걸 사용하도록 설정하지 않는 이상 사용하진 않을 것이다.

jail.local 파일을 저장하고 fail2ban 서비스를 재기동하자.

기존에 iptables 에 밴 되어있는 IP가 있었다면 모두 ipset 에 옮겨서 저장되고, iptables 내용을 확인해 보면.

iptables 에는 아래와 같이 한줄만 들어가있다.

밴 당한 IP 들은 모두 ipset 에 f2b-sshd 라는 세트로 저장되어 있다. 아래 커맨드로 ipset 에 저장된 내용을 전부 확인 가능.

관련글: 우분투 서버 18.04 iptables 서버 재기동으로 초기화 되는 문제

우분투 서버 14.04 LTS 고정 IP 할당

보통은 집안에 공유기를 사용하고 있을텐데 공유기는 보통 DHCP 라는 동적으로 IP 주소를 할당하는 기능(?)으로 공유기에 물려있는 컴퓨터들에게 IP 주소를 할당해 주고 있다.
이렇게 할당 받은 IP는 컴퓨터가 재시작 되거나 공유기에서 설정된 시간이 지나면 바뀔 수가 있기 때문에, 서버의 IP 주소가 바뀌게 된다. 이 때 새로운 IP 주소를 할당 받게 되면 ssh, ftp, http 등으로 서버 외부에서 접속할 때마다 서버의 IP 주소를 알아내야한다.
하지만, 서버의 IP를 고정으로 할당 받게 되면 항상 같은 IP로 접속이 가능하기 때문에 편리하다.
그렇기에 보통 서버의 IP 주소는 고정으로 설정해 둔다. 이제부터 서버의 IP를 고정으로 설정하는 방법에 대해서 설명한다.

먼저 고정으로 할당 받을 IP 주소를 정해야 한다.
우분투 서버에서 아래 명령으로 현재 할당 받은 IP 주소를 확인한다.

eth0 이라는 것은 이더넷(ethernet) 0번이라는 것으로 랜카드0번을 뜻한다. 만약 서버에 랜카드가 두개 이상이라면 eth1, eth2도 보일 것이다. 이 eth0에 inet addr 뒤에 192.168로 시작되는 주소가 공유기에서 할당 받은 IP 주소이다.
주소 가장 마지막 .(점) 뒤의 숫자를 바꿔서 고정 IP로 정해야 되는데, 집안의 공유기로 접속하는 장치를 생각해서 여유를 두고 잡는게 좋다. 다른 장치, 예를 들어 스마트폰이 서버가 사용할 IP 주소를 선점해 버리게 되면 서버는 IP 주소 충돌로 인해서 인터넷 연결을 사용할 수 없게 된다.

이런 문제를 해결할 수 있는 공유기의 기능이 있는데 ‘DHCP 고정 할당 설정’ 이라던가, ‘수동 IP 할당 설정’ 이라던가 하는 이름으로 존재한다. 이 기능을 사용하면 특정 컴퓨터는 미리 정해둔 IP 주소만을 할당 받게 된다.

공유기에 그런 기능이 어디있는지 모르겠다거나 설정 방법이 너무 어렵다고 하면 그냥 IP 주소를 뒷번호에서 고르면 충돌할 일이 없다. 50번 정도?
위에서 확인한 할당받은 IP 주소가 192.168.1.xxx 라면 192.168.1.50 으로 하자.

우분투 서버 터미널에서 아래 명령으로 IP 주소를 포함한 네트워크 정보를 편집한다.

기본 설정은 아래와 같다.

DHCP 로 IP 주소를 설정 받는다는 내용이다.
고정으로 IP 주소를 설정하기 위해서는 아래와 같이 내용을 바꾼다.

address 에는 고정으로 설정할 IP 주소를 적는다.
gateway는 공유기의 IP 주소를 적는데 보통 해당 IP 주소의 마지막 번호가 1번이 공유기의 주소이다. 공유기 설정 화면을 띄울때 사용하는 IP 주소와 같은 IP 이다.
dns-nameservers도 공유기의 IP 주소를 적으면 된다.
저장하고 편집기를 닫자.

서버를 재기동 한다.

재기동 후에는 SSH 접속 IP 주소가 고정으로 정한 IP 주소로 바뀌어 있으니 주의 할것.

바뀐 IP 주소를 확인

이제 고정된 IP 주소로 SSH 접속이나 FTP, 웹서버 설정을 하면 된다.

테라텀을 이용한 SSH 접속

이전 글에 이어서

하이퍼v에 우분투 서버를 설치하게 되면 여러가지 이유로 (하이퍼v가 설치된 컴퓨터를 포함한) 원격 컴퓨터에서 SSH 를 이용해서 서버를 관리하게 된다.
이 글에서는 SSH 접속 프로그램인 테라텀(teraterm)을 이용한 접속 방법에 대해서 설명한다.
이 글에서는 테라텀으로 접속하는 방법만을 설명하지만, 다른 접속 프로그램도 기본적으로 내용은 같다.

먼저 소스포지 사이트에서 테라텀을 다운로드 받는다.
테라텀 다운로드 링크
exe 파일을 다운로드 받아서 설치하면 된다.

SSH 접속에 필요한 정보는 아래 네가지이다.
-접속할 서버의 IP 주소
-접속할 서버의 SSH 포트
-접속할 서버에 등록 되어 있는 계정명
-계정의 패스워드

먼저 접속할 서버의 IP는 우분투 서버에서 아래의 명령으로 확인할 수 있다.

inet addr 뒤에 192.168로 시작하는 주소가 현재 우분투가 할당 받은 IP이다.

SSH 포트번호는 sshd_config 파일에 적혀있다.

테라텀을 실행한다.
호스트명에 서버의 IP를, TCP 포트#에 포트 번호를 입력하고, 서비스는 SSH를 선택하고 확인/OK 버튼을 누른다.

여기서 우분투 서버의 로그인 프롬프트가 나오면 성공이다. 계정명과 패스워드를 입력하면 된다.

접속이 안될 경우에는 우분투 서버에서 netstat로 설정된 포트가 제대로 열려 있는지 확인해 본다.

sshd_config 파일에 설정된 포트가 1022일때 아래와 같은 줄이 나와야한다.

1022가 아니라 22로 나울때는 ssh 서비스가 제대로 재기동 되지 않았거나 sshd_config 파일에서 설정한 내용이 제대로 반영되지 않은 경우이니 설정을 확인해 봐야한다.

외부에서 접속 했을 경우에는 공유기의 방화벽으로 포트가 막혀 있을 가능성이 가장 큰데, 공유기 설정 화면에서 포트 포워딩이나 포트 맵핑으로 포트를 열어주면 된다.