다음 이전 차례

11. PPP 쓰기와 루트 특권

PPP가 네트워크 장치를 설정해야 하고, 커널 라우팅 테이블을 바꿔야 하는 등등 때문에 루트 특권이 있어야 PPP를 설정할 수 있다.

루트 이외의 사용자들이 PPP 연결을 설정하려면, pppd 프로그램이 일반사용자도 루트로 사용하도록 설정되어야 한다:-

-rwsr-xr-x   1 root     root        95225 Jul 11 00:27 /usr/sbin/pppd

/usr/sbin/pppd가 이런 식으로 설정되어 있지 않다면, 루트로써 다음 명령을 주어야 한다.

chmod u+s /usr/sbin/pppd

이 명령을 주면 일반 사용자라도 pppd를 루트 권한으로 사용할 수 있게 해준다. 이것은 일반 사용자가 네트워크 인터페이스와 커널 라우팅 테이블을 설정하는데 필요한 권한을 가지고 pppd를 실행할 수 있게 해준다.

일반 사용자들이 루트 특권으로 사용할 수 있도록 설정해둔 프로그램은 치명적인 보안 구멍이 될 수 있으므로 프로그램의 루트 특권 공개는 대단히 조심스럽게 해야 한다. 많은 프로그램(pppd를 포함해서) 은 일반사용자들이 루트특권으로 사용할 경우의 위험을 최소화하기 위해 조심스럽게 작성되었으므로 이것을 써도 안전하다(하지만 보장은 없다.).

시스템을 어떻게 운영할지에 따라 - 특별히 시스템의 아무라도 PPP 연결을 초기화할 수 있도록 하기를 원한다면, ppp-on/off 스크립트를 읽고, 실행할 수 있도록 하게 될 것이다.(혼자 쓰는 경우라면 괜찮다)

하지만, 아무나 PPP 연결을 시작하는 것이 달갑지 않다면(예를들어, 아이가 내 리눅스 PC에 계정을 갖고 있고 내 감독없이 인터넷에 연결하는 것이 싫다면), PPP그룹을 만들 필요가 있다.(루트로서, /etc/group 파일을 편집한다) 그리고:-

이렇게 해 두어도 일반 사용자들은 소프트 웨어 제어 상으로 연결을 끊을 수 없다! ppp-off 스크립트를 실행시키려면 여전히 루트 권한이 있어야 한다. 하지만, 어떤 사용자라도 모뎀을 그냥 꺼버릴 수 있다(아니면 내부모뎀의 경우 전화선을 뽑아버릴 수 있다.)

이런 설정의 다른 (그리고 더 나은) 방법은 sudo프로그램을 쓰는 것이다. 이것은 월등한 보안을 주고 대상을 설정해서 어떤 (권한있는) 사용자도 스크립트를 써서 연결을 만들거나/끝내거나 할 수 있도록 한다. sudo를 쓰면 권한있는 사용자를 정해서 PPP 연결을 확실하고 안전하게 만들거나/끝낼 수 있도록 허용할 수 있다.


다음 이전 차례