
보안을 난독화로 한 단계 더 발전시키세요 (이것은 나쁜 생각입니다, 실제로 사용하지 마세요)
일부 사람들은 서버의 SSH 포트를 변경하여 봇이나 다른 악성 프로그램이 찾기 어렵게 만듭니다. 이는 일반적으로 보안을 통한 모호성의 행위로 간주되지만, /var/log/auth.log에서 항상 볼 수 있는 자동화된 로그인 시도를 상당히 줄이는 데 효과적입니다.
하지만 이 개념을 극단적으로 발전시킬 수 있다면 어떨까요? 일반적으로 웹사이트 로그인 시 2차 인증 코드로 사용되는 TOTP 코드를 사용하여 sshd 서버가 수신 대기 중인 포트를 실제로 알 수 있다면 어떨까요?
이를 위해 totp-ssh-flux를 소개합니다. 이는 SSH 포트가 30초마다 변경되도록 하여 공격자에게 약간의 좌절감을 안겨줄 수 있는 방법입니다.
데모:

위에서 볼 수 있는 것은 제 휴대폰(일반 TOTP 클라이언트 사용)이 코드를 생성하고, 그 코드를 SSH로 서버에 접속할 포트로 사용하는 모습입니다.
이 소프트웨어의 작동 방식은 매우 간단합니다. 다음 작업을 반복하는 루프로 실행됩니다:
멋진 점은 이 작업이 PREROUTING에서 수행되므로 코드가 만료되어도 설정된 연결은 계속 유지된다는 것입니다.
현재 이 프로젝트는 단일 파일로 구성되어 있습니다. golang을 설치한 후 go get 및 go build를 실행해야 합니다.
루트 권한으로 프로그램을 실행하세요 (iptables를 수정해야 하므로 필요합니다. 죄송합니다.)
처음 실행 시 프로그램은 /etc/ssh-flux-key에 호스트용 토큰을 생성합니다 (-keypath 옵션으로 변경 가능). 이 토큰을 휴대폰이나 다른 클라이언트에 입력할 수 있습니다.
watch iptables -vL -t nat을 실행하여 iptables 규칙이 삽입되고 제거되는 것을 확인하면 작동 여부를 확인할 수 있습니다.
이와 같은 더 많은 엽기적인 내용을 보고 싶으신가요? 트위터에서 @benjojo12를 팔로우하세요.