Мануал этот — полностью отсебятина, по-моему ничего не забыл. На момент написания версия FreeBSD 8.2

Создаём нового пользователя

adduser
И заполняем необходимые поля (пока так), не забываем добавить его в группу wheel чтобы он мог выполнять sudo
те поля, что не знаете как заполнить — оставлять по умолчанию.

Делаем резервную копию файла автозапуска
cp /etc/rc.conf /etc/rc.conf.bak

начинаем его редактировать
ee /etc/rc.conf

добавляем строку, которая будет запускать демон sshd при старте системы
sshd_enable=”YES”

КАК НАСТРОИТЬ ПОДКЛЮЧЕНИЕ ПО SSH для Root в среде FreeBSD

Для начала делаем резервную копию файла конфига sshd:
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

теперь редактируем сам конфиг
ee /etc/ssh/sshd_config

Раскомментируем строки
Port 22
PasswordAuthentication yes
PermitEmptyPasswords no

запускаем службу sshd
/etc/rc.d/sshd start
Обновляем порты:
portsnap fetch extract
Перейдем к установке sudo из портов FreeBSD. Выполняем:
cd /usr/ports/security/sudo

Устанавливаем:
make install clean

После того как встало, редактируем файлик конфигурации:
ee /usr/local/etc/sudoers

подробнее про установку прав в sudoers можно почитать на сайте http://www.nibbl.ru/freebsd/sudo

Создание каталога для исходниковft
mkdir -p /usr/local/src
-p <- этот параметр создаёт недостающие каталоги по пути к конечному

Переходим в созданную директорию
cd /usr/local/src

Скачиваем proftpd исходник
fetch ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.4a.tar.gz
Распаковываем
tar xfz proftpd-1.3.4a.tar.gz
Переходим в директорию куда распаковались исходники
cd proftpd-1.3.4a
Запускаем конфигурирование
./configure
Запускаем компиляцию
make
Запускаем установку в директории
make install clean

Создаём группу для proftpd
pw groupadd ftp
Создаём пользователя для proftpd
pw useradd ftp -c “FTP Server” -d /dev/null -g ftp -s /sbin/nologin
-c создаёт комментарий
-d домашняя директория пользователя /dev/null — её нету
-g группа, к которой будет принадлежать пользователь
-s шелл, /sbin/nologin не позволит залогиниваться под этим пользователем

указываем что нужно запускать proftpd при старте системы
ee /etc/rc.conf

добавляем строчку
proftpd_enable=”YES”

редактируем конфиг proftpd
ee /usr/local/etc/proftpd.conf

находим строки
User nobody
Group nogroup

изменяем на
User ftp
Group ftp

Сделаем чтобы каждый пользователь мог попадать в свою домашнюю директорию при подключении — раскомментируем
#DefaultRoot ~
меняем на
DefaultRoot ~

в файл /etc/shells добавляем строчку чтобы не могли логиниться по ssh фтп-пользователи
/ftponly

создаём директорию для нового пользователя
mkdir -p /home/test

создаём пользователя для доступа по фтп
pw user add test -s /ftponly -d /home/test

меняем владельца каталога пользователя, чтобы он мог туда записать файлы
chown test:test /home/test
где 1-ый test — логин
test после знака двоеточия — группа пользователя (как и везде в никсах).

задаём созданному пользователю пароль
passwd test

запускаем сервер proftpd
/usr/local/sbin/proftpd

Сервер может выдать ошибку о том, что не может определить IP адрес для localhost.localdomain (или другого доменного имени вашей машины), для этого мы просто пропишем его в файле /etc/hosts
ee /etc/hosts
дописываем строку
нужный айпи (например 127.0.0.1) имя_хоста.имя_домена, например
127.0.0.1 localhost.localdomain
но если установлен на адрес 127.0.0.1, то из внешнего мира виден сервер не будет. поэтому я например сделал так:
myvhost.localdomain 192.168.32.132 (это айпи этой машины, на которой крутится бсд)

 

УСТАНОВКА ВЕБ СЕРВЕРА APACHE

переходим в директорию для исходников
cd /usr/local/src

запускаем скачивание
fetch http://apache.strygunov.com//httpd/httpd-2.2.21.tar.gz
http://mirrors.besplatnyeprogrammy.ru/apache//httpd/httpd-2.2.21.tar.gz
tar xfz httpd-2.2.21.tar.gz
cd httpd-2.2.21
ee apache.sh
добавляем строки для конфигурирования
./configure -prefix=/usr/local/apache2
-enable-so
-with-mpm=prefork
make
make install clean
сохраняемся, запускаем ./apache.sh

Добавляем демон httpd в автозагрузку
ee /etc/rc.conf
apache_enable=”YES”

Создаём группу и пользователя от имени которго будет запущен apache.
pw groupadd apache
pw useradd apache -c “Apache Server” -d /dev/null -g apache -s /sbin/nologin

ee /usr/local/apache2/conf/httpd.conf
User daemon
Group daemon
изменяем на
User apache
Group apache

для нормальной установки PHP требуется библиотеки mysql-client
mysql устанавливаем из портов:

cd /usr/ports/databases/mysql51-server
make install clean

ee /etc/rc.conf
Прописываем в /etc/rc.conf следующие строчки для автоматического запуска mysql-сервера

mysql_enable=”YES”

Создаём таблицы
cd /usr/local; mysql_install_db

Присваиваем каталогу с базами данных mysql права пользователя mysql
chown -R mysql:mysql /usr/home/mysql

запускаем мускл-сервер
/usr/local/etc/rc.d/mysql-server start

Устанавливаем базовый пароль на рута
mysqladmin -u root password ‘p@$$w0rd’

подключаемся к мускл-серверу
mysql -p

создаём базу данных
create database test_wp;

создаём пользователя и даём ему все привелегии на эту базу данных
GRANT ALL PRIVILEGES ON test_wp.* TO ‘test_user_wp’@’localhost’ IDENTIFIED BY ‘TeST1234’ WITH GRANT OPTION;

Дальше устанавливаем сам PHP

fetch http://ua2.php.net/get/php-5.3.8.tar.gz/from/this/mirror
tar xfz
cd php-5.3.8.tar.gz
ee php.sh

./configure —prefix=/usr/local/php5
-with-mysql=/usr/local
-with-apxs2=/usr/local/apache2/bin/apxs
sh php.sh
make
make install

Редактируем конфиг апача

Изменяем
DirectoryIndex index.html index.php

добавляем тип пхп
AddHandler php5-script .php
AddType text/html .php
AddType application/x-httpd-php-source phps

раскоментируем
include conf/extra/httpd-vhosts.conf

закомментируем все <Directory …>

И пишем свой
<Directory />
Options Includes Indexes FollowSymLinks
AllowOverride All
Allow from all
</Directory>

That’s all folks!

Чаще всего, рекламу вроде шаблоны wordpress скачать оставляют в открытом виде в исходных кодах шаблона в файлах .php или .html, и достаточно их просто стереть и сохранить файл, как надпись исчезает. Но сегодня наткнулся на более хитрый, на первый взгляд, способ, зашифрованный в php функцию base64, причём зашифрован был с одним тэгом html, и при удалении этой функции плыл дизайн, именно из-за того, что был сохранён всего лишь один закрывающий html-тэг.

Код выглядит примерно так: PGEgaHJlZj0iaHR0cDovL3d3dy53cHRoZW1lLnVzLyI+0YjQsNCx0LvQvtC90Ysgd29yZHByZXNzINGB0LrQsNGH0LDRgtGMPC9hPgo8L2Rpdj4=
и расшифровать его можно как теми же средствами PHP, которыми он и был зашифрован, так и воспользоваться онлайн-шифровщиками/расшифровщиками вроде base64.ru.

Функция эта выглядела так:
string base64_encode ( string $data )
вместо $data и был тот самый шифр выше, заметьте, он может быть объявлен и где-то выше, или же вовсе отдельно в другом файле, и быть подключен с помощью include(), правда тогда вы найдёте некий подобный шифр там, но там не будет написано base64. есть и другие способы шифровки, на заметку.

Вот так хитрые люди пытались защититься с помощью такой незатейливой функции, для новичков и непонимающих людей эта защита вполне сработала бы. Но мы то крутые хакеры 😎

По умолчанию в Windows XP Professional есть возможность удалённого подключения к рабочему столу по протоколу RDP, в отличие от серверных систем, здесь её искусственно урезали ограничив подключение лишь одним пользователем, т.е. 2 пользователя или более пользователей одновременно.

Есть несколько способов с подменой termsrv.dll в безопасном режиме, а также правкой реестра, но есть способ и проще.

Для этого необходимо скачать утилиту именуемую как TS-Free, распаковать файлы из архива, перезагрузить компьютер, при загрузке удерживать клавишу F8 и выбрать Безопасный режим, после чего запустить данную утилиту, перезагрузить компьютер в нормальный режим и наслаждаться результатом.

Столкнулся с проблемой и долгое время не мог найти решения в интернете. А именно моя проблема выглядела таким образом:

Имеется 2 сетевых карты (eth1 и eth2), два провайдера соответственно. От одного мне необходим сеть и интерент, от другого только сеть.

Решалось при помощи стандартного добавления маршрутов до поднятия ppp0 (интернета), но это не устраивало, т.к. необходимо, чтобы маршрутизация прописывалась при старте системы, когда и поднимался интернет.

Роясь в скриптах загрузки системы, прописывания маршрутов в них так ничего и не удалось добиться (вариант, при старте графической среды также не устраивал).

Mandriva Linux создан на основе Red Hat Linux, соответственно и многие конфиги, пути и настройки совпадают. Однако это не дало должного эффекта

Спустя несколько дней это таки удалось — поднять сеть и инет автоматом и чтобы маршруты тоже срабатывали при загрузке системы.

Сначала по совету друга — создаю файл static-routes в директории /etc/sysconfig
там приписываю строки:
any net 172.25.0.0/16 gw 172.25.12.1
any net 192.168.0.0/16 gw .192.168.250.3

но применяются эти маршруты к ppp0 и соответственно не работают правильно.
также редактирую файл

eth1 net 172.25.0.0/16 gw 172.25.12.1
eth2 net 192.168.0.0/16 gw .192.168.250.3

это не помогло, какая-то фигня в таблице маршрутизации после него.

потом также трачу время на то, что создаю в директориях /etc/sysconfig/network-scripts/device файлы
route-eth1 и route-eth2
с содержимым
ADDRESS0=172.25.0.0 NETMASK0=255.255.0.0 GATEWAY0=172.25.12.1

ну и в другом соответственно
ADDRESS0=192.168.0.0 NETMASK0=255.255.0.0 GATEWAY0=192.168.250.3

и даже пробовал строчки менять на
ADDRESS1=172.25.0.0 NETMASK1=255.255.0.0 GATEWAY1=172.25.12.1

ну и в другом соответственно
ADDRESS2=192.168.0.0 NETMASK2=255.255.0.0 GATEWAY2=192.168.250.3

мало ли чё..

но и это не помогло

почему я всё это пишу? потому что инфы по этому катастрофически мало! искалось во всех поисковиках, и находится всякий бред, может в red hat или fedora или других red hat based системах это и работает, но не в mandriva 2011.0

так вот опишу способ для mandriva 2011.0 (надеюсь кто-то не будет столько париться как я, а наткнётся на этот пост сразу в поисковике)
в каталоге /etc/sysconfig/network-scripts создаю 2 файла (т.к. 2 сетевых интерфейса):
route-eth1 и route-eth2
в них добавляю текст
ADDRESS0=172.25.0.0 NETMASK0=255.255.0.0 GATEWAY0=172.25.12.1

ну и в другом соответственно
ADDRESS0=192.168.0.0 NETMASK0=255.255.0.0 GATEWAY0=192.168.250.3

Перезагружаем систему — работает.

Это можно сделать, не теряя данные. Но вообще, в особенности рекомендую создавать отдельного пользователя и отдельную БД для других нужд, root не использовать для сайта вообще, только для управления базами данных и привелегиями.

Про Linux я буду описывать для Red Hat подобных систем (Fedora, Mandriva, ASP, Alt и т.д.), т.к. это мне ближе, но и для других систем сильно не отличается, опишу один пример для каждой системы, а дальше сами.

Linux:
Всё необходимо выполнять от супер-пользователя root (su, sudo, sudo su)

1. Для начала останавливаем работу mysqld:
в Debian-оподобных системах или freebsd
/etc/init.d/mysqld stop
В Rad hat подобных
service mysqld stop

В Windows Пуск, Выполнить, net stop «MySQL Server» (или как она там точно называется?)

2. Выполняем
mysqld_safe --skip-grant-tables
Начинает работать демон MySQL-Safe в безопасном режиме
3. Заходим в консоль mysql
mysql -u root
В консоли выполняем
mysql> UPDATE `user` SET `password`=PASSWORD('root_password') WHERE `user`='root'
Это всё.

mysql> exit

Далее возвращаем к работе прежний сервер: останавливаем или работу mysqld-safe, и запускаем в обычную работу mysqld аналогично 1-му пунту, только вместо stop пишем start.

Для того, чтобы запустить программу в среде Windows как службу, необходимо иметь в своём инструментарии утилиту именуемую srvany, а дальше расскажу как ей нехитро пользоваться.

Распаковываем скачанный архив в директорию C:\Windows\System32
Там оказываются 2 файла: srvany.exe и instsrv.exe

Рассмотрим к примеру такой случай, нам необходимо запустить программу называему SRV, чтобы она работала как служба, и запускалась при старте системы.

Для этого мы открываем cmd (Пуск, Выполнить, cmd), в командной строке пишем:
instsrv MyService C:\Windows\System32\srvany.exe

после чего нужно редактировать реестр, помните, что это действием может нарушить правильную работу системы, или нарушить работу вообще, поэтому делаете вы это на свой страх и риск, перед чем рекомендую ознакомиться с возможностью восстановления реестра из резервной копии.

Выполняем Пуск, Выполнить, regedit и переходим по веткам:
HKEY_Local_Machine, SYSTEM, CurrentControlSet, Services, MyService
Создаём раздел с именем Parameters
Заходим в него, создаём строковый параметр, именуем его Application
Редактируем значение параметра, например C:\Program Files\SRV.exe — указываем программу, которую следует сделать службой и запускать при старте системы.

Это всё.

Каждый раз, как берусь писать прикладное сетевое приложение на Delphi (да, да, я им не брезгую, т.к. это отличная среда для прикладных задач и быстрой разработки), то приходится открывать книжку, на одной и той же замызганной странице, и набираю текст вручную, поэтому добавлю его сюда, и опишу как работать с UDP потоком, как со строкой.

Для начала ставим на форму компонент из вкладки Indy Servers называемый IdUDPServer, и по событию OnUDPRead в создавшейся процедуре делаем таким образом:

procedure TMainForm.srvUDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var
StringFormatedStream: TStringStream; //объявляем поток строкового типа
begin
StringFormatedStream := TstringStream.Create(''); //инициируем его
StringFormatedStream.CopyFrom(AData, AData.Size); //берём данные, поступившие нам на сервер, который слушает сеть
Memo1.Lines.Add(ABinding.PeerIP+':'+inttostr(ABinding.PeerPort)+'
'+StringFormatedStream.DataString); //полученные данные можно вывести,
например в Memo
//srv.Send(ABinding.PeerIP,ABinding.PeerPort,StringFormatedStream.DataString);
//посылаем поток дальше (это вовсе не обязательно делать, если у нас
сервер один)
StringFormatedStream.Free; //освобождаем поток
end;

И да, конечно же предварительно нужно настроить сам компонент, такие значения как DefaultPort по крайней мере, на который и будут приходить данные.

В свою очередь из другого приложения можно отправить поток простым способом через IdUDPServer или IdUDPClient — только второй не умеет принимать данные (или я об этом не знаю), таким способом
IdUDPServer.Send(IP:String, Port:Integer, 'Строка');

Протокол UDP, в отличие от его доделанного брата TCP, не поддерживает сессию, он только лишь отправляет поток данных в сеть по назначенном адресу (или широковещательному, например для сети с параметрами 192.168.1.1 максой 255.255.255.0 широковещательная отправка будет выглядеть как на адрес 192.168.1.255), и не заботится об их доставке (это можно реализовать самому, если нужно).

Теперь можно писать чат или всё, что угодно.

Это всё, такое простое, и всё равно забывается.

Welcome to WordPress. This is your first post. Edit or delete it, then start writing!

 

Алоха!

Здесь я буду записывать всякое околокомпьютерное, а возможно и не только, на случай, чтобы не забыть, т.к. часто приходится бороться с какой-либо новой проблемой, при этом успешно забываешь о решении старых проблем, которые также периодически приходится вспоминать как решать.