# 흔한 13번 패키지 오류
rm /var/lib/dpkg/lock
rm /etc/apt/lists/lock

# 한글 설치
1. sudo apt-get install fcitx-hangul로 한글을 설치
2. System Settings > Language Support를 실행해서 아직 완전히 설치되지 않다고 표시되는데 잠시 기다려서 모두 설치
3. Keyboard input method system:을 ibus가 아닌 fcitx로 변경
4. 재부팅

# 한영 전환 설정
Shortcut 설정
1. AllSettings > Keyboard > Shortcuts Tab > Typing을 선택
2. Switch to Next source, Switch to Previous sourc, Compose Key, Alternative Characters Key를 모두 Disabled로 선택한다. Disabled로 선택하기 위해서는 backspace를 누르면 된다.
3. Compose Key의 Disabled를 길게 눌러 Right Alt를 선택한다.
4. Switch to next source는 한영키를 눌러 Multikey를 선택한다. 반드시 Compose Key 설정이 먼저되어야 Multikey를 선택할 수 있다.
5. AllSetting 윈도우를 닫고 상단 메뉴바 오른쪽의 입력기 선택하는 것을 본다. 키보드 표시가 된 것이 fcitx이다. fcitx아이콘을 눌러서 Configure Current Input Method를 선택한다.
6. Keyboard-English(US)가 있다면 +를 눌러 Hangul을 추가한다. (Uncheck “Only Show Current Language”). Korean이 아닌 Hangul이여야 한다.
7. Global Config tab에서 Trigger Input Method는 한/영키를 눌러 Multikey로 설정(왼쪽 오른쪽 모두)하고 Extrakey for trigger input method는 Disabled로 설정한다. (Mac에서는 command key이므로 대신 shift+space를 선택한다.)
8. Global Config tab에서 Program > Share State Among Window > All을 선택한다.

# 테스트
1. log out을 한후 다시 log in을 한다.
2. 한글/영어가 한영키로 전환되는지 확인한다.


메타스플로잇 다운로드

chmod +x metasploit-latest-linux-x64-installer.run
./metasploit-latest-linux-x64-installer.run


1. 설치하기

# 업데이트
apt-get update

# 배포판 찾아주는 스크립트 지정(?)
wget -qO- https://get.docker.com/ | sh

# get.docker.com 스크립트로 Docker를 설치하면 hello-world 이미지도 자동으로 설치되는데
# hello-world 이미지는 사용하지 않을 것이므로 모두 삭제
docker rm `sudo docker ps -aq`
docker rmi hello-world

# 패키지 본격 설치
apt-get install docker.io
ln -sf /usr/bin/docker.io /usr/local/bin/docker



2. 사용하기

# Docker는 Docker Hub를 통해 이미지를 공유하는데, search 명령으로 Docker Hub에서 이미지를 검색 가능
docker search ubuntu

# Docker에서 Ubuntu 이미지를 받음(docker pull <이미지이름>:<태그>)
docker pull ubuntu:latest
< ※ 이미지 이름에서 pyrasis/ubuntu처럼 / 앞에 사용자명을 지정하면 Docker Hub에서 해당 사용자가 올린 이미지를 받습니다. 공식 이미지는 사용자명이 붙지 않습니다.>

# 받은 이미지 목록 출력
docker images

# 이미지를 컨테이너로 생성하고 bash shell 실행
-i(interactive), -t(Pseudo-tty) 옵션을 사용하면 실행된 Bash Shell에 입력 및 출력 가능
--name옵션으로 컨테이너의 이름을 지정
docker run -i -t --name hello ubuntu /bin/bash

# 도커 컨테이너 상태 출력
docker ps -a

# 컨테이너 시작하기
docker start <컨테이너 이름> 형식.
컨테이너 이름 대신 컨테이너 ID를 사용해도 됨

# 컨테이너 목록 출력
docker ps

# 컨테이너 재시작
docker restart <컨테이너 이름>

# 컨테이너에 붙어보기
docker attach <컨테이너 이름>

# 컨테이너 종료하기
docker stop <컨테이너 이름>

# 컨테이너 삭제
docker rm <컨테이너 이름>

# 컨테이너 이미지 삭제
docker rmi ubuntu:latest
docker rmi <이미지이름>:<태그>










# ufw 활성화
ufw enable

# ufw 비활성화
ufw disable

# ufw 상태확인
ufw status verbose



# 기본 룰 확인
ufw show raw

# 기본 정책 차단
ufw default deny

# 기본 정책 허용
ufw default allow



# SSH 포트 22번 허용(tcp/udp 22번 포트를 모두 허용)
ufw allow 22

# tcp 22번 포트만을 허용 - SSH는 tcp 22번 포트만 허용하는게 정답
ufw allow 22/tcp

# udp 22번 포트만을 허용
ufw allow 22/udp



# ssh 포트 22번 거부(tcp/udp 22번 포트를 모두 거부)
ufw deny 22

# tcp 22번 포트만을 거부
ufw deny 22/tcp

# udp 22번 포트만을 거부
ufw deny 22/udp



# UFW 룰의 삭제
ufw deny 22/tcp 설정이 되어있다고 가정
ufw delete deny 22/tcp



# SSH 서비스
ufw allow sshsudo ufw deny ssh

# UFW 로그 기록
ufw logging on
ufw logging off



특정한 IP 주소 허가/거부

특정한 IP주소 허용
ufw allow from <ip address>

예) 192.168.0.100 주소 허용(IP 주소192.168.0.100 에서만 접속이 가능해진다)
ufw allow from 192.168.0.100

네트워크 단위로 지정하여 같은 네트워크 상에 있는 컴퓨터들은 접속가능해진다.
ufw allow from 192.168.0.0/24



특정 IP 주소와 일치하는 포트 허용
ufw allow from <ip address> to <protocol> port <port number>

예) 192.168.0.100 주소와 포트, 프로토콜 허용
ufw allow from 192.168.0.100 to any port 22



특정 IP 주소와 프로토콜, 포트 허용
$ ufw allow from <ip address> to <protocol> port <port number> proto <protocol name>

예) 192.168.0.100 주소와 tcp 프로토콜 22번 포트 허용
sudo ufw allow from 192.168.0.100 to any port 22 proto tcp
위의 예제들에서 allow 대신 deny를 입력하면 거부가 된다.



ping (icmp) 허용/거부

UFW 기본설정은 ping 요청을 허용하도록 되어있다.
sudo vi /etc/ufw/before.rules
  # ok icmp codes
  -A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT
  -A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT
  -A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT
  -A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT
  -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT
위 코드들의 ACCEPT 부분을 모두 DROP으로 변경하거나 삭제하면 ping 요청을 거부하게 된다.



가디언즈에 적용할 화이트리스트 (동방 공유기 ip가 125)
ufw enable
ufw allow from 223.194.105.125 to any port 22
ufw allow from 27.117.241.240 to any port 22
ufw deny 80/tcp
ufw deny 3306/tcp
ufw status
1. 커널 다운로드 및 설치
apt-get install -y aptitude
aptitude search linux-image
apt-cache policy linux-image-[원하는버젼]
aptitude install linux-image-[원하는버젼]=[위에 올라온 후보]
vi /etc/default/grub
> #GRUB_HIDDEN_TIMEOUT=0 GRUB_TIMEOUT=4
update-grub
reboot

2. 기존 커널 삭제
dpkg -l| grep linux-[image,header]
apt-get purge linux-headers-(삭제 대상 커널) linux-headers-(삭제 대상 커널)-generic
apt-get purge linux-image-(삭제 대상 커널) linux-image-extra-(삭제 대상 커널)-generic



apt-get purge linux-headers-4.4.0-31 linux-headers-4.4.0-31-generic linux-headers-4.4.0-81 linux-headers-4.4.0-81-generic linux-image-4.4.0-31-generic linux-image-4.4.0-31-generic linux-image-4.4.0-62-generic linux-image-4.4.0-81-generic linux-image-extra-4.4.0-31-generic linux-image-extra-4.4.0-81-generic

+ Recent posts