Category Archives: Infra

Ubuntu14.04 원격데스크 접속 설치

윈도우환경에서 리눅스를 돌리는데 버추어박스도 있지만…
여건이 된다면 원격으로 쓰는게 더 좋다.

 

ubuntu 14.04 server lts 환경에서의 설치

필요한거 설치

sudo apt-get install xrdp xfce4 ubuntu-desktop

 

그놈패널 추가설치

 

sudo apt-get install gnome-panel
echo "gnome-session --session=gnome-fallback" > ~/.xsession

 

설정파일

/etc/xrdp/xrdp.ini

윈도우+r -> 명령창 뜨면 -> mstsc -> 윈도우 원격접속프로그램으로 사용 가능

 

위에건 안됨. 글 수정전에 일단 등록.

밑에 참고사이트

Ubuntu 14.04 – How to install xrdp in Ubuntu 14.04

 

[Linux] scp 사용

사용법

 

scp -rpC 계정명@원격서버주소ip:원격서버내부경로 로컬서버경로

 

백그라운드 사용시 앞에 nohup 뒤에 & 붙이면 된다

nohup scp -rpC 계정명@원격서버주소ip:원격서버내부경로 로컬파일디렉토리경로 &

 

https://docs.oracle.com/cd/E37933_01/html/E36613/remotehowtoaccess-55154.html

[Ubuntu] redis 설치

패키지로 설치

sudo add-apt-repository -y ppa:rwky/redis
sudo apt-get update

add-apt-repositoy가 안되면 이거 설치 후 재실행

sudo apt-get install python-software-properties

 

레디스 서버 설치

sudo apt-get install redis-server

설정파일

/etc/redis/redis.conf

소스 설치

다운로드
wget http://download.redis.io/releases/redis-3.0.6.tar.gz
압축해제
tar zxvf redis-3.0.6.tar.gz
이동
cd redis-3.0.6

빌드
make
설치 테스트
make test
설치
make install

설정 도움 스크립트

[redis dir]/utils/install_server.sh

 

설정파일

[redis dir]/redis.conf

 

 

실행모습

127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set mykey somevalue1
OK
127.0.0.1:6379> get mykey
"somevalue1"
127.0.0.1:6379> get mykey
"somevalue1"
127.0.0.1:6379> set mykey newval nx
(nil)
127.0.0.1:6379> set mykey newval nx
(nil)
127.0.0.1:6379> get mykey
"somevalue1"
127.0.0.1:6379> set mykey newval
OK
127.0.0.1:6379> get mykey
"newval"
127.0.0.1:6379> set counter 100
OK
127.0.0.1:6379> get counter
"100"
127.0.0.1:6379> set counter1 100
OK
127.0.0.1:6379> get counter1
"100"
127.0.0.1:6379> incr counter1
(integer) 101
127.0.0.1:6379> get counter1
"101"
127.0.0.1:6379> incrby counter1 50
(integer) 151
127.0.0.1:6379> get counter
"100"
127.0.0.1:6379> get counter1
"151"

 

[Ubuntu] add-apt-repository not found

$ sudo apt-get install python-software-properties

The following extra packages will be installed:
python-pycurl python3-pycurl python3-software-properties unattended-upgrades
Suggested packages:
libcurl4-gnutls-dev python-pycurl-dbg python3-pycurl-dbg bsd-mailx
mail-transport-agent
The following NEW packages will be installed:
python-pycurl python-software-properties python3-pycurl
python3-software-properties software-properties-common unattended-upgrades

$ sudo apt-get install software-properties-common

 

Link

On Ubunbu14.04 configuration file extension is changed from Ub12.

Ubuntu 12.04

# Include generic snippets of statements
Include conf.d/

# Include the virtual host configurations:
Include sites-enabled/

Ubuntu 14.04

# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf

# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf

 

so, you just add ‘.conf’ extension on your virtualhost configuration file.

then problem solved.

 

Script:DDNS로 연결된 도메인 IP에 대해 iptables포트 열기

출처 : http://unix.stackexchange.com/questions/91701/ufw-allow-traffic-only-from-a-domain-with-dynamic-ip-address
IP테이블에서 사용하는 방법

#!/bin/bash
#allow a dyndns name

HOSTNAME=HOST_NAME_HERE
LOGFILE=LOGFILE_NAME_HERE

Current_IP=$(host $HOSTNAME | cut -f4 -d' ')

if [ $LOGFILE = "" ] ; then
  iptables -I INPUT -i eth1 -s $Current_IP -j ACCEPT
  echo $Current_IP > $LOGFILE
else

  Old_IP=$(cat $LOGFILE)

  if [ "$Current_IP" = "$Old_IP" ] ; then
    echo IP address has not changed
  else
    iptables -D INPUT -i eth1 -s $Old_IP -j ACCEPT
    iptables -I INPUT -i eth1 -s $Current_IP -j ACCEPT
    echo $Current_IP > $LOGFILE
    echo iptables have been updated
  fi
fi

UFW에서 사용하는 스크립트.. 위의 쉘스크립트에서 명령어만 바꿔줬다.
UFW에서 도메인을 기반으로 등록해주는 기능은 없다. 그럴 수 밖에 없는게… 접속이 들어올 때 마다 도메인의 IP를 확인할수도없는 노릇이니까

#!/bin/bash
#allow a dyndns name

HOSTNAME=HOST_NAME_HERE
LOGFILE=LOGFILE_NAME_HERE

Current_IP=$(host $HOSTNAME | cut -f4 -d' ')

if [ $LOGFILE = "" ] ; then
  ufw allow from $Current_IP
  echo $Current_IP > $LOGFILE
else

  Old_IP=$(cat $LOGFILE)

  if [ "$Current_IP" = "$Old_IP" ] ; then
    echo IP address has not changed
  else
    ufw delete allow from $Old_IP
    ufw allow from $Current_IP
    echo $Current_IP > $LOGFILE
    echo iptables have been updated
  fi
fi

Ubuntu GPT disk 등록하기

파티션 만들기
2T이상은 gpt로 만들어야된다. fdisk로 안된다는 얘기… 설치할 때 한번에 하는게 편하지만 하드를 중간에 추가할 경우에는 이 작업이 필요하다.

$ sudo fdisk -l
$ sudo parted /dev/sdb
(parted) mklabel gpt
(parted) unit TB
(parted) print
1번방법-
(parted) mkpart
name 알아서
filesystem 다시포멧할거니까그냥엔터 아니면 ext4
start 0
end 위에서 print할 때 봤던거 하드끝까지 3.0TB
2번방법-
(parted) mkpart primary 0 0
3번방법-
(parted) mkpart primary 0.00TB 3.00TB
위에1,2,3번방법 아무거나 맘에드는대로 해주면되고
(parted) quit

파일시스템만들기 – 포멧
mkfs –type ext4 /dev/sdXY

마운트하기
$ sudo mkdir /data
$ sudo mount /dev/sdb1 /data
이렇게 하면 부팅할 때 마다 다시 등록해줘야한다.

영구적으로 마운트하기위해서 fstab 등록하기

$ sudo blkid
uuid확인
붙여넣기를 해야되니 ssh로 접속하는게 좋다
/etc/fstab에 위의 정보들을 보고 따라 잘 등록

UUID=39489af1-0f3z-7777c-djen-69a03jf93afd0 /data ext4 errors=remount-ro 0 1
UUID는 blkid했을 때 나온 주소
/data는 파일 마운트 경로
파일시스템타입ext4

$ sudo mount -a
전체 마운트 재등록하라는 뜻. 설정이 제대로 됏다면 오류없이 완료.

끝. 재부팅해본다.
제대로 등록되지 않았다면 컴퓨터가 안 켜질거다. 그렇다면 재설치

GIT 서버 따로 쓰려면

GIT관리 웹서비스가 gitblit,  gitolite,  gitosis 등이 있는데…

gitblit이 그나마 좀 나은데

근데 다 아주 좋지는 않다.

요즘은 네이버에서 yobi라고 나왔는데 권한관리나 보안설정이 잘 되어있는지 모르겠다

이슈트래커는 별도로 쓰고 소스리포지터리는 별도로 생성하는게 나을 것 같다.

 

redmine을 쓴다면 프로젝트 생성부분에 git 리포지터리 생성 정도만 추가하면 되지 않을까?

git 서버는 별도로 생성하고

http://tutorial.polypia.net/index.php/Ubuntu:git_server