일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- gof design pattern
- fan-in fan-out
- 소프트웨어공학 디자인패턴
- usecase description
- 생성패턴 행위패턴 구조패턴
- prototypepattern 예시 example
- 상태다이어그램
- factory metohd pattern
- madia designer ui design
- 객체 상속 속성 인스턴스 메소드 오퍼레이션
- 리버스쉘
- ssh
- telnet
- Bandit
- nc reverse shell
- UseCase
- 암표거래
- bandit21
- strucuture charat
- 클래스 관계
- base64
- 매크로를 바라보는 시각
- 모듈구조도
- 구조적 설계
- cron
- 팬인과 팬아웃
- sofrware architeture
- status diagram
- 디자인패턴
- ui 디자인 기본원칙
- Today
- Total
목록All Contents (53)
2.log
포트포워딩? 네트워크 연결을 설정하여 한 컴퓨터나 기기에서 다른 컴퓨터나 기기로 연결을 전달(forwarding)하는 기술로, 주로 외부 네트워크에서 내부 네트워크로의 접속을 가능하게 해주는데 사용 되며(ex, 인터넷 공유기), 서버 간 원격 접속에서도 사용 가능. 만약 2대의 pc 를 같은 포트로 포트포워딩 할 경우 우선순위가 높은 쪽으로 적용 됨 포트포워딩을 하는 이유? IP 주소의 부족과 관리 관점 전 세계 모든 컴퓨터에 고유한 IP 주소를 모두 부여하는 것은 불가능 하기에 IP 할당을 효율적으로 관리하기 위해 공인 IP 주소와 사설 IP 주소로 나누어 사용하게 됨. 이 때, 공인 IP 주소는 인터넷 서비스 제공자(ISP)로 부터 할당받은 IP 주소로, 이를 통해 인터넷에 접속이 가능한데, 이러한 ..
1. SSH 로 서버에 로그인 $ ssh @ 2. 관리자 권한으로 sshd_config 파일 열기 $ sudo vim /etc/ssh/sshd_config 3. 포트를 변경 / 추가 하려면 해당하는 줄의 주석(#) 제거하고 포트 번호 입력 / 다른 포트 번호 추가 (기본 : 22) #port 22 Port [바꿀 포트번호] 4. SSH 서비스 재시작 $ sudo service ssh restart #or $ sudo systemctl restart sshd
Bash Unix/Llinux 시스템에서 사용되는 기본 shell 중 하나로, 사용자와 컴퓨터 간 상호작용을 도와주는 인터페이스 command line을 통해 사용자의 입력내용을 컴퓨터가 해석 및 실행할 수 있게 도와주는 프로그램 SSH 접속 시 bash 를 사용하면 어떻게 되는가 ssh 접속 시 bash 를 실행하는 경우, 원격 서버에 로그인 할 때 로그인한 사용자 계정으로 직접 bash shell을 실행하게 됨 즉, 일반적인 ssh 접속과 달리 로그인한 사용자의 '로그인 셸' 과 상관없이 'bash 셸'을 실행 할 수 있고 이에 따라, 접속 후 새로운 bash 셸 을 실행하게 되므로, 기본 로그인 셸에 비해 다양한 기능을 사용할 수 있게 됨 이 때 로그인 셸에서 제공하지 않는 기능이란, 사용자가 일반..
sudo, su, chmod ... 이 모든 명령어가 먹히지 않아 파일 권한변경을 할 수 없을 때 install 명령을 통해 권한변경을 시도해 볼 수 있음 install 명령어파일 복사, 파일 소유자, 그룹 및 권한 변경에 사용되는 명령어로, install 명령어 사용하여 파일 복사하면, 복사된 파일이 기존 파일과 동일한 권한을 상속함. 즉, 복사된 파일은 복사를 수행한 사용자 및 그룹에 대한 권한을 가지게 됨 사용법-m 옵션을 사용하여 권한 지정하고 파일과 경로 지정$ install -m 4755(권한설정) file.txt /path/to/destination 예를들어 기존 bandit20-do 파일은 소유자가 bandit20 이지만 install 명령으로 복사를 수행한 /tmp/bandit20-do ..
setuid? UNIX/Linux 시스템의 파일 특별 권한 중 하나로, setuid 가 설정된 프로그램 / 파일 실행 시, 실행한 사용자 대신 파일 소유자의 권한으로 실행이 이루어짐. 이는 권한 없는 사용자가 권한을 부여받을 시 root 권한으로 실행되어 악용될 수 있기에 주의 필요함 설정방법 #문자모드 $ chmod u+s [파일명] #숫자모드 $ chmod 4755 [파일명] bit 모드로 설정 시 4는 setuid(4000), 755 는 rwx (4,2,1) 권한 조합을 나타내며, setuid 설정이 되면 파일 소유자 권한이 x 대신 s 로 표시됨 예를들어 해당 파일의 경우 소유자에게 rwx 권한이 있는데 setuid 가 설정되어 x 대신 s 가 부여되었고, 나머지 그룹과 기타 사용자에게는 r-x ..
Shell 사용자(user)와 커널(Kernel) 사이에서 매개체 역할하는 프로그램 사용자로부터 명령을 받아 프로세싱 하기 위해 커널에 넘겨주어 사용자가 커널에 직접 명령 내릴 수 있게 함 bashrc Bourne Again Shell 의 축약어로, 리눅스에서 가장 널리 사용되는 쉘 보통 5개의 공통된 설정 파일 가지며 일반적으로 전역 파일은 /etc 디렉토리, 지역 파일(특정 사용자에게만 영향 끼치는 파일)은 사용자의 홈 디렉토리에서 숨김파일( ' . ' 으로 시작) 형태로 존재함 파일종류 /etc/profile ~/.bash_profile ~/.bashrc /etc/bashrc ~/.bash_logout 파일설명 /etc/profile 환경변수와 bash 가 수행될 때 실행되는 프로그램 제어하는 전역..
원인 키 권한 관련 에러 개인키는 소유자 외의 사용자가 접근/수정하면 안되기 때문에 권한이 너무 open 되어있으면 permission deny 뜸 solution : chmod 400 권한 축소시켜서 사용 # chmod 400 [경로]/{key_name} $ chmod 400 /tmp/private
diff (differences) 두 파일 사이 내용 비교하는 명령어로 cmp 보다 직관적인 정보 보여주며, 문서의 줄 사이 변경 사항 보여줌 (+ diff3 : 3개의 파일 비교 가능) 명령어 #diff $ diff [option] [file1] [file2] #diff3 $ diff [option] [file1] [file2] [file3] 옵션 -c 두 파일 간 차이점 출력 -d 상세 출력 -r 두 디렉토리간 차이점 출력, 서브디렉토리까지 비교 -i 대소문자 차이 무시 -w 모든 공백 차이 무시 -s 두 파일이 같을 때 알림 -u 두 파일의 변경되는 부분과 근처 내용까지 함께 출력 [ex] -c option [ex] -d option [출처] https://m.blog.naver.com/PostVi..
URL 접속 시 리다이렉트 or 포워드가 일어나면 작업중인 페이지가 전환되는데 리다이렉트는 페이지 전환 주체가 클라이언트, 포워드는 서버임 이 때, 클라이언트가 주체가 되면 처음 접속 요청한 URL이 아닌 서버에서 응답받은 다른 URL로 재요청을 보내야 하지만 서버가 주체가 되면 클라이언트측에서 요청정보 변경 할 필요 없이 서버측 내부 동작을 통해 최종 응답 바로 받을 수 있음 Redirect 서버에서 클라이언트가 요청한 URL에 대한 응답으로 다른 URL로의 재접속 명령(300번대 코드) 보냄 [ex] - 클라이언트가(브라우저) a 를 요청하면 서버는 redirect b 를 응답함 - 클라이언트는 b 로 다시 요청 날리고 서버는 c라는 결과 응답 >> 클라이언트 측에서 요청이 총 2번 발생, 리소스 변..
OpenSSL SSL/TLS 프로토콜을 구현한 라이브러리 중 하나로, 통신전문과 문서를 암호화 할 수 있음 s_client (SSL/TLS client program) SSL/TLS 를 사용하는 원격 호스트에 접속하기 위한 일반적인 SSL/TLS client를 구현하는 명령어 openssl 로 운영중인 웹서버의 SSL 인증서 정보 살펴볼 수 있음 사용법 $ openssl s_client [옵션] s_client 옵션 -connect host:port 접속할 host, port / 기본값은 localhost:443 -ssl2, -ssl3, -tls1, -dtls1 설정한 프로토콜만 통신 no_를 앞에 붙이면 설정한 프로토콜 제외하고 통신 (ex. -no_ssl2) -msg 프로토콜 메시지 출력 -CAfil..