반응형

GNU-Linux 34

GNU/Linux Crypto :: 05 :: Passwords

5. Passwords 추측하기 쉬운 비밀번호를 사용한다든지, 똑같은 비밀번호를 여러 계정에 사용하면 하나의 계정만 뚫려도 여러 계정에 여파가 미치기 때문에 꽤나 심각한 보안 문제라는 것이 알려지고 있다. 만약 해커가 당신의 비밀번호의 hash를 알아냈다면, 당신은 그 hash 값을 통해 본래 비밀번호로 되돌리기가 매우 어렵기를 원한다. 혹여라도 본래 비밀번호로 되돌려졌다면, 그 비밀번호는 다른 계정에도 쓰이지 않아서 다른 곳에 여파가 미치지 말아야 한다. 이러한 인식 덕분에 비밀번호 관리자가 등장하게 되었다. 비밀번호 관리자는 비밀번호를 안전하게 생성 및 저장하고 불러올 수 있으며, 마스터 비밀번호나 passphrase를 통해서 암호화시키는 도구이다. KeePass와 같이 local에 저장하는 프로그램..

GNU-Linux 2019.06.22

GNU/Linux Crypto :: 04 :: Agents

4. Agents 지난 글을 통해 GnuPG와 SSH를 모두 안전하게 설정했다면 이제 우리는 메세지를 암호화, 복호화, 서명하고 이를 증명할 수 있다. 그리고 비밀번호를 노출시킬 일도 없으며 brute-force 공격을 당할 가능성이 현실적으로 0에 가깝게 원격 서버에 인증할 수 있다. 다 좋은데, 여전히 이 연결 고리에서 한 가지 약점이 아직 남아있다 - 바로 우리의 passphrase이다.자주 원격 서버에서 작업을 한다면, 대부분의 작업마다 passphrase를 입력하는 것은 꽤나 귀찮은 일이다. 그래서 passphrase 입력을 자동화한다거나, 아예 당신의 private key를 암호화되지 않은 상태로 두어서 passphrase를 쓰지 않고 싶은 생각이 들 수도 있다. 후자의 경우에, 보안에 많은 ..

GNU-Linux 2019.06.09

GNU/Linux Crypto :: 03 :: SSH Keys

3. SSH Keys 원문 링크 OpenSSH 서버에 접속하기 위해 인증하는 흔한 방법으로 당신의 remote machine의 shell 비밀번호를 입력해서 접속하는 것이 있다. tom@local:~$ ssh remote The authenticity of host 'remote (192.168.0.64)' can't be established. RSA key fingerprint is d1:35:45:a6:d1:b2:e4:08:f8:67:b1:19:fe:04:ca:1c. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'remote,192.168.0.64' (RSA) to the list of kn..

GNU-Linux 2019.03.02

GNU/Linux Crypto :: 02 :: GnuPG 사용법

GnuPG의 기본적인 사용법을 살펴보고 이를 기반으로 SSH, Mutt 등 개발자의 일상 생활에서 생각하는 보안에 대해서 짚어볼 수 있는 좋은 시리즈입니다. 원문 번역에 충실했으며, 제가 사용하는 GPG 버전과 원문에 있는 콘솔 출력 내용이 다르기 때문에, 제가 사용하는 버전에 맞추어 다시 쓴 것임을 알립니다. 본래 콘솔 내용은 당연히 원문에서 볼 수 있습니다. 2. GnuPG 사용법 원문 링크이전 글에서 private key와 public key를 생성하고 저장했으니, 이제 인터넷과 같이 신뢰할 수 없는 곳에 파일을 배포하기 위한 서명(sign), 증명(verify), 암호화(encrypt), 암호 해독(decrypt)를 하기 위한 GnuPG의 몇 기능들을 사용해보자. 텍스트 파일이나 메세지에 서명하기..

GNU-Linux 2019.01.20

GNU/Linux Crypto :: 01 :: GnuPG Keys

GnuPG의 기본적인 사용법을 살펴보고 이를 기반으로 SSH, Mutt 등 개발자의 일상 생활에 걸쳐 있는 보안에 대해서 짚어볼 수 있는 좋은 시리즈입니다. 원문 번역에 충실했으며, 제가 사용하는 GPG 버전과 원문에 있는 콘솔 출력 내용이 다르기 때문에, 제가 사용하는 버전에 맞추어 다시 쓴 것임을 알립니다. 본래 콘솔 내용은 당연히 원문에서 볼 수 있습니다. 1. GnuPG Keys 원문 링크 Keypair 생성하기 첫 걸음으로 4096-bit의 RSA keypair를 생성해볼 건데, 이는 보통 기준보다 훨씬 높은 암호화 수준이다. 여기서는 Debian 개발자들이 추천하는 몇몇 방식을 따라갈 것이다.본인이 개인적인 용도로 쓰는 최신 데스크탑 컴퓨터를 사용해야 엔트로피를 수월하게 생성할 수 있다. 물론..

GNU-Linux 2019.01.13

작지만 강하다, Suckless 소프트웨어

Suckless 데스크탑 환경에 대해 간단하게 설명하고, 그 중 가장 핵심적인 프로그램인 dwm의 설치 과정과 사용법을 정리해본다. 미리보는 Suckless 환경 백문이 불여일견이므로, 서브레딧 r/unixporn에서 Suckless 소프트웨어를 충실히 사용하면서도 가장 예쁜 예시를 꼽아왔다 (홍보 대사 급 무브). [dwm] Cherry and rose from r/unixporn 위에 보이는 전반적인 디스플레이 환경과, 터미널 에뮬레이터, 인터넷 브라우저, 탭 도구 모두 Suckless 소프트웨어이다. 위 예시는 커스터마이징 경험이 꽤 있어야 구축 가능한 환경이고, 초보인 나는 외관 변경 없이 기본적인 기능만을 사용하고 있다. 그래도 기본적으로 웹서핑을 제외한 자신의 대부분의 일이 터미널에서 이루어진..

GNU-Linux 2018.06.16

소소한 사고, sudo rm -rf ~

사고 내용sudo rm -rf ~ 굉장히 불쾌하게 머리가 하얘지는 것을 느꼈다. 사건의 발단pipenv가 문제였다. ESL 공부용 jupyter notebook 환경을 pipenv로 관리하고 있었다. Neural network 체험을 위해 pybrain을 설치했다가, pybrain은 유지가 잘 되지 않고 있다고 하길래 다시 지우고 pytorch를 설치하려고 했다. 그런데 pipenv uninstall pybrain이 끝나는 걸 기다리고 기다리다가 20~30분이 지나도록 dependency lock 작업이 끝나지 않아서 중단했다. "괜찮아, 가상 환경 새로 날리고 다시 설치하지 뭐." 그리곤 pytorch 설치 기다리다가 또 중단. 미친 듯이 느려서 그냥 virtualenv를 쓰기로 결심하게 되었다. 오랜..

GNU-Linux 2018.03.09

pully, Git Repository 몽땅 업그레이드를 위한 Shell Script

다짜고짜 pully의 코드부터 써 본다. #!/bin/sh # Written by Don Kim (dgkimdev@gmail.com) # # It reads "/path/to/repo:branchname" and updates it (via `git up`). # # If you don't have `git up`, check this and consider it; # https://stackoverflow.com/questions/918886 while IFS=':' read -ra PAIR; do echo "${PAIR}" cd ${PAIR[0]} && git checkout ${PAIR[1]} && git up ${PAIR[1]} done 그리고 이 스크립트에게 던져 줄 먹이를 준비한다. # fil..

GNU-Linux 2018.03.01

FreeBSD는 온라인 포옹을 거부한다?

애청하는 YouTube 채널 중 하나인 Bryan Lunduke 채널에서 굉장히 재밌고 간단하지만 뼈 있는 내용을 가진 영상을 보고 기록하고자 한다.최근에 FreeBSD의 Code of Conduct에 추가된 내용 중 "virtual hug를 거부한다"는 것이 있다는 것이 그 요점이다. 뭐가 문제인지 모르겠다면 Bryan Lunduke의 이야기를 더 들어보자. 그의 이야기를 전달하기 전에, 몇 가지 용어 정리. Code of Conduct Code of Conduct (CoC)는 간단히 말해서, 어떤 단체의 정체성을 확립하고 프로젝트 유지를 위한 규칙을 정해놓은 것이다. 또한 소프트웨어 프로젝트에서는 contributor들 간의 협업 매너를 선언하는 것이 그 내용 중 하나다.GNOME 프로젝트의 CoC를..

GNU-Linux 2018.02.19

GNU/Linux를 더 알고 싶다면 Arch Linux

나는 Ubuntu 16.04로 입문해서 뭣도 모르고 윈도우쓰는 것 마냥 쓰다가, 조금씩 경험과 지식이 쌓이면서 Ubuntu가 Linux의 전부인 줄 알았었다. 하지만 지금 생각해보면 그 당시 나는 Ubuntu라는 Linux distro와 Unity 데스크탑 환경이 합쳐져서 내가 사용하는 Ubuntu가 만들어졌다는 개념조차 모르고 있었다 (물론 Unity 데스크탑도 Ubuntu에서 쓰기 위해 만든 것이긴 하지만). 이 것이 사실 Ubuntu가 (그리고 그 이름을 뒷받침하고 있는 Canonical이라는 회사가) 추구하는 목표이다: 누구나 쉽게 접근해서 설치하고, 바로 사용할 수 있는 데스크탑 환경 (It just works). 위에서 생각해 본 내 경험에 따르면 Ubuntu는 그 목표를 꽤나 잘 이루어내고 ..

GNU-Linux 2018.01.29