RPi를 살펴보면 몇 가지 작업을 수행하는 한 상자에서 상당히 안전한 장치처럼 보입니다.
기본 사용자 / 패스가 변경되어야합니다. 최소한 비밀번호를 변경하십시오. 더 나은 보안을 위해 사용자 이름도 변경하십시오. (새 사용자를 추가 한 다음 PI를 비활성화하십시오. 기본적으로 ROOT도 SSH 로그인에서 비활성화되어 있는지 확인하십시오.)
RPi를 스캔하면 하나의 열린 포트, 22가 SSH 연결이며, 심지어는 연결하기 전에 켜져 있어야합니다 (대부분의 사람들은 모니터, 키보드 및 마우스 대신 사용하지만, 특히 {웹} 서버)
SSH 포트 번호를 변경할 수는 있지만 포트를 쉽게 검색 할 수 있기 때문에 별 문제가되지 않습니다. 대신 SSH 키 인증을 사용하십시오.
이제 올바른 SSH 키, 사용자 이름 및 비밀번호가 없으면 누구나 시스템에 들어갈 수있는 방법이 없습니다.
다음으로 웹 서버를 설정하십시오. 아파치는 거의 어디에 있나. 기본적으로 포트 80을 설치하고 모니터링하며 웹 페이지를 제공하는 브라우저의 연결에 자동으로 응답합니다.
방화벽이나 라우터가있는 경우 RPi 포트를 변경하고 라우터가 한 포트에서 다른 포트로 트래픽을 보내도록 할 수 있습니다. 예를 들어 라우터로 들어오는 포트 80 트래픽은 RPi의 포트 75로 리디렉션되고 22의 SSH는 포트 72로 리디렉션됩니다. 이는 다른 보호 계층을 추가하지만 조금 더 복잡합니다.
분명히 모든 것을 업데이트하고 패치하십시오.
이렇게하면 나중에 추가 할 수있는 Java, 플래시, SQL 서버 등을 악용하는 공격으로부터 사용자를 보호 할 수는 없지만 기본 사항입니다.
방화벽을 추가하여 새 서비스를 설치하면 시스템에 들어오는 사람이 다른 포트로 나가는 것을 늦출 수 있습니다. 라우터가 처리해야하지만 직접 연결되어 있으면 설정하고 시간이 오래 걸리더라도 시스템 리소스를 많이 추가하지는 않습니다.
추가하려는 또 다른 사항은 fail2ban ( http://www.fail2ban.org/wiki/index.php/Main_Page )로 여러 번의 로그인 시도를 차단하는 방화벽 규칙을 추가하여 사전 공격을 방지합니다. 위의 사항을 따른 경우 시스템에서 작동하지 않지만 어떤 이유로 든 비밀번호를 SSH 인증으로 유지 해야하는 경우 (예 : 여러 다른 시스템에서 원격 로그인) 사전 공격을 방지합니다 일에서. 시도 횟수를 지정한 후에는 해당 IP 주소에서 더 이상 시도하지 못하게됩니다. (라우터 / 로컬 IP 주소가 표시되지 않도록주의하고 너무 일찍 또는 너무 오래 금지하십시오!)
추가 편집 : 모든 설정이 완료되면 dd 또는 Win32DiskImager와 같은 도구를 사용하여 SD 카드의 전체 비트 단위 백업을 수행하십시오. 이렇게하면 문제가 발생하면 같은 카드로 복원하거나 새 카드에 기록하고 관계없이 계속 진행할 수 있습니다. (하지만 해킹당한 경우 어떤 구멍이 발견되었는지 먼저 확인하고 그 구멍을 먼저 닫고 싶을 것입니다.)