Linux에서 고가용성 원격 로그인(예: SSH 및 Telnet)을 구성하는 방법

王林
풀어 주다: 2023-07-05 11:10:49
원래의
1374명이 탐색했습니다.

Linux에서 고가용성 원격 로그인(예: SSH 및 Telnet)을 구성하는 방법

요약: 원격 로그인은 Linux 시스템에서 가장 일반적으로 사용되는 기능 중 하나입니다. 이를 통해 네트워크를 통해 원격 호스트에 연결하고 작업을 수행할 수 있습니다. 운영. 실제 응용 프로그램에서 시스템 가용성과 보안을 보장하려면 원격 로그인 서비스를 고가용성 모드로 구성해야 합니다. 이 기사에서는 SSH 및 Telnet을 포함하여 Linux에서 가용성이 높은 원격 로그인을 구성하는 방법을 소개하고 관련 코드 예제를 제공합니다.

1. SSH 구성

SSH(Secure Shell)는 암호화 기술을 기반으로 하는 원격 로그인 프로토콜로 SSH를 통해 보안되지 않은 네트워크에서 안전한 원격 로그인이 가능합니다. 다음은 SSH 고가용성을 구성하는 단계입니다.

  1. SSH 서버 설치 및 구성
    Linux 시스템에서 SSH 서버에 일반적으로 사용되는 소프트웨어 패키지는 OpenSSH입니다. 먼저 OpenSSH 패키지가 호스트 시스템에 설치되어 있는지 확인해야 합니다.

$ sudo apt-get install openssh-server # Ubuntu/Debian
$ sudo yum install openssh-server # CentOS/RHEL

설치 후 SSH 서버가 자동으로 시작되고 기본 포트 22를 수신합니다.

  1. SSH 통신 키 구성
    고가용성을 달성하기 위해 기존 사용자 이름/비밀번호를 사용하는 대신 SSH 통신 키 쌍을 사용하여 인증할 수 있습니다.

먼저 SSH 키 쌍을 생성해야 합니다:

$ ssh-keygen -t rsa

그런 다음 공개 키를 모든 원격 호스트에 복사합니다:

$ ssh-copy-id Remote_host

  1. SSH 구성 로드 밸런싱
    SSH의 고가용성을 달성하기 위해 로드 밸런싱을 사용하여 원격 로그인 요청을 여러 호스트에 분산할 수 있습니다. 일반적으로 사용되는 로드 밸런싱 소프트웨어에는 HAProxy 및 Nginx가 있습니다.

HAProxy를 예로 들어 먼저 HAProxy를 설치합니다.

$ sudo apt-get install haproxy # Ubuntu/Debian
$ sudo yum install haproxy # CentOS/RHEL

그런 다음 HAProxy 구성 파일을 편집합니다.

$ sudo vi / etc/haproxy/haproxy.cfg

다음 구성 블록을 파일에 추가합니다:

frontend ssh

bind *:22
mode tcp
default_backend ssh_servers
로그인 후 복사

backend ssh_servers

mode tcp
balance roundrobin
server ssh1 192.168.1.101:22 check
server ssh2 192.168.1.102:22 check
server ssh3 192.168.1.103:22 check
로그인 후 복사

파일을 저장하고 종료한 후 HAProxy 서비스를 다시 시작합니다.

$ sudo systemctl restart haproxy

이제 HAProxy에서 제공하는 IP 주소를 사용하여 SSH 서버에 연결할 수 있습니다.

2. Telnet 구성

Telnet은 원격 로그인에 사용되는 프로토콜이지만 SSH와 같은 암호화 기능이 없으므로 보안되지 않은 네트워크에서는 사용하기에 적합하지 않습니다. 다음은 Telnet 고가용성을 구성하는 단계입니다.

  1. Telnet 서버 설치 및 구성
    Linux 시스템에서 Telnet 서버에 일반적으로 사용되는 소프트웨어 패키지는 telnetd입니다. 먼저 telnetd 패키지가 호스트에 설치되어 있는지 확인해야 합니다(예: CentOS/RHEL):

$ sudo yum install telnet-server

설치가 완료되면 Telnet 서버가 자동으로 시작되고 수신됩니다. 기본 포트 23으로.

  1. 텔넷 로드 밸런싱 구성
    SSH와 마찬가지로 로드 밸런싱을 사용하여 텔넷의 고가용성을 달성할 수 있습니다. Linux에서는 iptables와 netfilter를 사용하여 로드 밸런싱을 달성할 수 있습니다.

먼저 iptables 구성 파일을 편집합니다:

$ sudo vi /etc/sysctl.conf

파일 끝에 다음 구성을 추가합니다:

net.ipv4.ip_forward = 1

저장하고 종료합니다. 파일을 로드한 후 구성 파일을 로드합니다.

$ sudo sysctl -p

다음으로 다음 명령을 실행하여 로드 밸런싱을 구성합니다.

$ sudo iptables -t nat -A PREROUTING -p tcp --dport 23 -j DNAT - -to-destination $ sudo iptables -t nat -A POSTROUTING -j MASQUERADE

여기서 는 대상 텔넷 서버의 IP 주소입니다.

  1. 서비스 검색 구성
    고가용성을 달성하려면 클라이언트 요청을 여러 Telnet 서버에 배포하는 방법을 찾아야 합니다. 일반적으로 사용되는 서비스 검색 소프트웨어에는 ZooKeeper 및 Consul이 있습니다.

ZooKeeper를 예로 들어 먼저 ZooKeeper를 설치합니다.

$ sudo apt-get install Zookeeperd # Ubuntu/Debian
$ sudo yum install Zookeeper # CentOS/RHEL

그런 다음 ZooKeeper 구성 파일을 편집합니다.

$ sudo vi / etc/zookeeper/conf/zoo.cfg

파일에 다음 구성을 추가하십시오:

server.1=zoo1:2888:3888
server.2=zoo2:2888:3888
server.3=zoo3:2888 :3888

그 중 Zoo1, Zoo2, Zoo3은 ZooKeeper 서버의 호스트 이름입니다.

파일을 저장하고 종료한 후 ZooKeeper 서비스를 다시 시작하세요.

$ sudo service Zookeeper restart

이제 ZooKeeper에서 제공하는 IP 주소를 사용하여 Telnet 서버에 연결할 수 있습니다.

결론
고가용성 원격 로그인 서비스를 구성함으로써 시스템의 가용성과 보안을 보장할 수 있습니다. 이 문서에서는 Linux에서 SSH 및 Telnet의 고가용성을 구성하는 방법을 설명하고 관련 코드 예제를 제공합니다. 이 글이 여러분에게 도움이 되기를 바랍니다. 읽어주셔서 감사합니다!

위 내용은 Linux에서 고가용성 원격 로그인(예: SSH 및 Telnet)을 구성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿