SSH, Telnet을 이용한 원격 접속 설정
1. 개요
Buildroot를 이용하여 임베디드 시스템을 구축할 때, 원격에서 접근하여 시스템을 관리하고 디버깅하는 기능은 매우 중요합니다. 이를 위해 SSH 및 Telnet을 설정하면 네트워크를 통해 임베디드 장치에 접속하여 파일을 전송하거나 터미널을 활용한 다양한 작업을 수행할 수 있습니다. 본 포스팅에서는 Buildroot를 이용하여 SSH 및 Telnet을 활성화하고 설정하는 방법에 대해 설명하겠습니다.
2. SSH 설정
SSH(Secure Shell)는 보안이 강화된 원격 접속 방식으로, OpenSSH를 사용하여 설정할 수 있습니다.
2.1 OpenSSH 패키지 추가
Buildroot에서 OpenSSH를 활성화하려면 Buildroot의 설정 메뉴에서 관련 패키지를 선택해야 합니다.
make menuconfig
다음 경로에서 OpenSSH를 활성화합니다.
Target packages --->
Networking applications --->
openssh --->
[*] openssh
[*] scp
[*] sftp-server
이후 설정을 저장하고 Buildroot를 다시 빌드합니다.
make
2.2 SSH 서버 설정
빌드가 완료되면, /etc/ssh/sshd_config
파일을 수정하여 SSH 서버 설정을 변경할 수 있습니다. 기본적으로 다음과 같은 설정을 적용합니다.
PermitRootLogin yes
PasswordAuthentication yes
이제 SSH 서버를 실행할 수 있습니다.
/etc/init.d/S50sshd start
이제 원격에서 SSH를 사용하여 접속할 수 있습니다.
ssh root@<보드의 IP 주소>
3. Telnet 설정
Telnet은 SSH보다 보안성이 떨어지지만, 빠른 디버깅을 위해 사용할 수 있습니다.
3.1 Telnet 패키지 추가
Buildroot의 busybox
를 사용하여 Telnet을 활성화할 수 있습니다.
make menuconfig
다음 옵션을 활성화합니다.
Target packages --->
Networking applications --->
[*] busybox --->
Networking Utilities --->
[*] telnetd
[*] telnet
이후 빌드를 수행합니다.
make
3.2 Telnet 서버 실행
빌드가 완료되면 Telnet 데몬을 실행할 수 있습니다.
/usr/sbin/telnetd -l /bin/sh
이제 원격에서 Telnet을 사용하여 접속할 수 있습니다.
telnet <보드의 IP 주소>
4. 방화벽 및 포트 설정
SSH 및 Telnet을 원활하게 사용하려면 해당 포트를 열어야 합니다. 기본적으로 SSH는 22
번 포트, Telnet은 23
번 포트를 사용합니다.
iptables를 사용하여 포트를 열 수 있습니다.
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 23 -j ACCEPT
이제 시스템을 재부팅한 후 SSH 및 Telnet 접속이 정상적으로 동작하는지 확인합니다.
reboot
5. 결론
본 포스팅에서는 Buildroot를 이용하여 SSH 및 Telnet을 설정하는 방법을 설명하였습니다. SSH는 보안성이 높아 실제 운영 환경에서 권장되며, Telnet은 간단한 디버깅 목적으로 활용할 수 있습니다. 이를 통해 원격에서 장치를 관리하고 디버깅하는 기능을 보다 편리하게 사용할 수 있습니다.
'Linux > buildroot' 카테고리의 다른 글
Buildroot에서 네트워크 패키지 추가 및 설정 (0) | 2025.04.23 |
---|---|
gdbserver를 활용한 원격 디버깅 (0) | 2025.04.22 |
Buildroot 패키지 빌드 및 디버깅 (0) | 2025.04.20 |
새로운 패키지 작성법 (.mk 파일 작성) (0) | 2025.04.19 |
Buildroot에서 패키지 추가하는 방법 (package/ 디렉터리 활용) (0) | 2025.04.17 |