Данная статья является моим вольным переводом статьи, с дополнениями и пояснениями по ходу текста. Материал на работоспособность проверен лично, баги учтены и по возможности отловлены... Если у кого чего не получается - в каменты, будем вместе решать :)
Итак....
Для начала создаем скрипт, скажем install.sh, и запихиваем в него следующий текст:
echo **
echo *FreeNX Setup Script*
echo **
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:freenx-team
sudo apt-get update
sudo apt-get install freenx -y
sleep 5
echo **
echo *The End*
echo **
Делаем файл исполняемым:
sudo chmod +x install.sh
Этот простенький скрипт добавит репозиторий в ваш sources.list и скачает и установки все необходимое, а то-есть: минимальный (совсем) gnome2 и сам, собственно, freenx-server. Если вас это устраивает, то запускаем скрипт установки. Если же нет, то сами ставим графику с софтом по своему усмотрению, а только затем запускаем скрипт.
sudo bash ./install.sh
По окончанию процесса установки меняем файл node.conf по пути /etc/nxserver:
sudo nano /etc/nxserve/node.conf
Находим строчку:
#ENABLE_PASSDB_AUTHENTICATION="0"
и меняем на:
ENABLE_PASSDB_AUTHENTICATION="1"
Далее нужно установить права пользователям на доступ к NX-серверу по ssh. Для этого нужно в файле:
sudo nano /etc/ssh/sshd_config
после строк:
Итак....
Для начала создаем скрипт, скажем install.sh, и запихиваем в него следующий текст:
echo **
echo *FreeNX Setup Script*
echo **
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:freenx-team
sudo apt-get update
sudo apt-get install freenx -y
sleep 5
echo **
echo *The End*
echo **
Делаем файл исполняемым:
sudo chmod +x install.sh
Этот простенький скрипт добавит репозиторий в ваш sources.list и скачает и установки все необходимое, а то-есть: минимальный (совсем) gnome2 и сам, собственно, freenx-server. Если вас это устраивает, то запускаем скрипт установки. Если же нет, то сами ставим графику с софтом по своему усмотрению, а только затем запускаем скрипт.
sudo bash ./install.sh
По окончанию процесса установки меняем файл node.conf по пути /etc/nxserver:
sudo nano /etc/nxserve/node.conf
Находим строчку:
#ENABLE_PASSDB_AUTHENTICATION="0"
и меняем на:
ENABLE_PASSDB_AUTHENTICATION="1"
Далее нужно установить права пользователям на доступ к NX-серверу по ssh. Для этого нужно в файле:
sudo nano /etc/ssh/sshd_config
после строк:
RSAAuthentication yes
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys2
PubkeyAuthentication yes
#AuthorizedKeysFile %h/.ssh/authorized_keys2
Добавить:
AllowUsers nx your*user*name
Где nx - системный юзверь (на сколько я понимаю), без которого вообще ничего работать удаленно не будет, а your*user*name - имена пользователей, учетные записи которых будут на сервере, и которым вы хотите дать доступ к NX-серверу.
Далее создаем так называемый client id dsa - ключ, который будет использоваться для проверки доступа подключаюегося серверу пользователя. Для этого:
sudo /usr/lib/nx/nxkeygen
Если все ок, то выхлоп будет следующим:
Unique key generated; your users must install
/var/lib/nxserver/home/.ssh/client.id_dsa.key
on their computers.
Что значит, что нужно скопировать сгенеренный ключ на клиентские машины из указанной папки.
Далее создаем файл users.id_dsa в папке /etc/nxserver, и копируем в него содержимое файлика /var/lib/nxserver/home/.ssh/client.id_dsa.key.
Далее добавляем юзверя в юзер-лист NX-сервера. Пользователь, соответственно, должен был быть зарегистрирован в самой системе.
sudo nxserver --adduser chris
Если выхлоп получился подобный:
NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.4.0)
egrep: /etc/nxserver/passwords: No such file or directory
cp: cannot stat `/etc/nxserver/passwords': No such file or directory
NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: 3.4.0)
cat: /etc/nxserver/users.id_dsa.pub: No such file or directory
cat: /etc/nxserver/users.id_dsa.pub: No such file or directory
NX> 716 Public key added to: /home/chris/.ssh/authorized_keys2
NX> 1001 Bye.
NX> 999 Bye
то все ОК, если нет - ищем ошибку.
Далее устанавливаем пользователю пароль для входа. Рекомендую не морочить голову ни себе ни людям и ставить пароль такой же, как от входа в систему.
sudo nxserver --passwd chris
Если выхлоп такой:
NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.4.0)
New password:
Password changed.
NX> 999 Bye
то все ОК, если нет - ищем ошибку.
Далее выдаем разрешения системному пользователю на пользование папочкой и всем её содержимым:
sudo chown nx:root /var/lib/nxserver/db/*
Перезагружаем ssh-сервер и freenx-сервер:
sudo /etc/init.d/ssh restart
sudo nxserver --restart
Далее через NX-Client коннектимся к серверу, не забыв указать путь к скопированному ключу. Если коннект прошел успешно - радуемся жизни, играемся дальше.
sudo /usr/lib/nx/nxkeygen
Если все ок, то выхлоп будет следующим:
Unique key generated; your users must install
/var/lib/nxserver/home/.ssh/client.id_dsa.key
on their computers.
Что значит, что нужно скопировать сгенеренный ключ на клиентские машины из указанной папки.
Далее создаем файл users.id_dsa в папке /etc/nxserver, и копируем в него содержимое файлика /var/lib/nxserver/home/.ssh/client.id_dsa.key.
Далее добавляем юзверя в юзер-лист NX-сервера. Пользователь, соответственно, должен был быть зарегистрирован в самой системе.
sudo nxserver --adduser chris
Если выхлоп получился подобный:
NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.4.0)
egrep: /etc/nxserver/passwords: No such file or directory
cp: cannot stat `/etc/nxserver/passwords': No such file or directory
NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: 3.4.0)
cat: /etc/nxserver/users.id_dsa.pub: No such file or directory
cat: /etc/nxserver/users.id_dsa.pub: No such file or directory
NX> 716 Public key added to: /home/chris/.ssh/authorized_keys2
NX> 1001 Bye.
NX> 999 Bye
то все ОК, если нет - ищем ошибку.
Далее устанавливаем пользователю пароль для входа. Рекомендую не морочить голову ни себе ни людям и ставить пароль такой же, как от входа в систему.
sudo nxserver --passwd chris
Если выхлоп такой:
NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.4.0)
New password:
Password changed.
NX> 999 Bye
то все ОК, если нет - ищем ошибку.
Далее выдаем разрешения системному пользователю на пользование папочкой и всем её содержимым:
sudo chown nx:root /var/lib/nxserver/db/*
Перезагружаем ssh-сервер и freenx-сервер:
sudo /etc/init.d/ssh restart
sudo nxserver --restart
Далее через NX-Client коннектимся к серверу, не забыв указать путь к скопированному ключу. Если коннект прошел успешно - радуемся жизни, играемся дальше.
Все, that's all toons, kids :)
Комментариев нет:
Отправить комментарий